基于51单片机光照检测代码(基于51单片机的光照检测系统)

日期:04-17

大家好,下面小编给大家分享一下。基于51单片机的光检测码(基于51单片机的光检测系统)很多人都不知道。下面详细解释一下。现在让我们来看看!

1.基于STC89C51单片机的灯光声控灯c语言源代码。

/*******************************************************

*程序名称:hc595.c

*程序功能应用文件:595

*节目作者:吴健英

*创建时间:2014年3月10日

*修改时间:

*程序版本:V0.1

******************************************************/

/*

*包含头文件

*/

#包含“inc/hc595.h”

#包含“reg51.h”

/*

*定义引脚

*/

/*时钟信号线引脚定义*/

sbit HC 595 clk = p0^5;

/*片选信号线引脚定义*/

sbit HC 595 rck = p0^6;

/*数据输入引脚定义*/

sbit HC 595 data = p0^7;

/******************************************************

*函数名:SendData

*功能:74HC595数据传输

*入口参数:unsigned int UIDataOne,unsigned int UIDataTwo

*导出参数:void

*******************************************************/

void send data(unsigned int ui dataone,unsigned int uiDataTwo)

{

无符号int I = 0;

/*将芯片选择信号设置为低电平*/

HC 595 rck = 0;

/*输入第一个数据:uiDataOne */

for(I = 0;我& lt8;i )

{

/*给出一个脉冲信号,首先将CLK设置为0 */

HC 595 clk = 0;

如果(0!=(uiDataOne & amp;0x80))

{

HC 595 data = 1;

}

其他

{

HC 595 data = 0;

}

/*给出一个脉冲信号,首先将CLK设置为1 */

HC 595 clk = 1;

/*准备第二个数据*/

uiDataOne = uiDataOne & lt& lt1;

}

/*输入第二个数据:uiDataTwo */

for(I = 0;我& lt8;i )

{

/*给出一个脉冲信号,首先将CLK设置为0 */

HC 595 clk = 0;

如果(0!=(uiDataTwo & amp;0x80))

{

HC 595 data = 1;

}

其他

{

HC 595 data = 0;

}

/*给出一个脉冲信号,首先将CLK设置为1 */

HC 595 clk = 1;

/*准备第二个数据*/

uiDataTwo = uiDataTwo & lt& lt1;

}

/*将芯片选择信号设置为高电平*/

HC 595 rck = 1;

}

2.基于STC89C51单片机的灯光声控灯c语言源代码

/******************************************************* * 程序名称:hc595.c * 程序功能:595的应用文件 * 程序作者:吴鉴鹰 * 创建时间:2014-3-10 * 修改时间: * 程序版本:V0.1 ******************************************************//* * 包含头文件 */#include "inc/hc595.h"#include "reg51.h"/* * 定义引脚 *//* 时钟信号线引脚定义 */sbit HC595CLK = P0^5;/* 片选信号线引脚定义 */sbit HC595RCK = P0^6;/* 数据输入引脚定义 */sbit HC595DATA = P0^7;/****************************************************** * 函数名称:SendData * 函数功能:74HC595数据的发送 * 入口参数:unsigned int uiDataOne, unsigned int uiDataTwo * 出口参数:void*******************************************************/ void SendData(unsigned int uiDataOne, unsigned int uiDataTwo){ unsigned int i = 0; /* 将片选信号置为低电平 */ HC595RCK = 0; /* 输入第一个数据:uiDataOne */ for (i = 0; i < 8; i ) { /* 给出脉冲信号,首先将CLK置为0 */ HC595CLK = 0; if (0 != (uiDataOne & 0x80)) { HC595DATA = 1; } else { HC595DATA = 0; } /* 给出脉冲信号,首先将CLK置为1 */ HC595CLK = 1; /* 准备第二个数据 */ uiDataOne = uiDataOne

标签: 51单片机 光照检测 STC89C51 c语言代码

0.041141s