//#include"INTRINS.H"////#include"BASE.H"//自定义全局变量函数文件#defineucharunsignedchar#"> //#include"INTRINS.H"////#include"BASE.H"//自定义全局变量函数文件#defineucharunsignedchar#" />
欢迎来到天天文库
浏览记录
ID:50168801
大小:15.71 KB
页数:8页
时间:2020-03-06
《AM2320温湿度传感器STC12程序.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、#include"STC12C5A60S2.h"#include//#include"INTRINS.H"////#include"BASE.H"//自定义全局变量函数文件#defineucharunsignedchar#defineuintunsignedint#defineSlaveAddress0xB8//定义器件在IIC总线中的从地址,根据ALTADDRESS地址引脚不同修改//ALTADDRESS引脚接地时地址为0x46,接电源时地址为0xB8sbitSCL=P0^6;//IIC时钟引脚定义sbitSDA=
2、P0^7;//IIC数据引脚定义typedefunsignedcharBYTE;typedefunsignedshortWORD;BYTEBUF_TP[8];//接收数据缓存区intdis_data_Tem;//全局温度intdis_data_Hum;//全局湿度//-----------------------------------voiddelay5us(void)//这个延时函数要大于2.5US以上{_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();
3、_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();}//-----------------------------------voiddelay10us(void)//这个延时函数要大于5US以上{_nop_();_nop_();_nop_();_nop_();_nop_();_nop
4、_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_n
5、op_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();}/**************************************起始信号**************************************/voidAM232X_Start(){SDA=1;//拉高数据线SCL=1;//拉高时钟线delay10us();SDA=0;//产生下降沿delay10us();SCL=0;//拉低时
6、钟线delay10us();}/**************************************停止信号**************************************/voidAM232X_Stop(){SDA=0;//拉低数据线delay5us();SCL=1;//拉高时钟线delay10us();SDA=1;//产生上升沿delay10us();}/**************************************发送应答信号入口参数:ack(0:ACK1:NAK)***************
7、***********************/voidAM232X_SendACK(bitack){SDA=ack;//写应答信号SCL=0;delay10us();SCL=1;//拉高时钟线delay10us();SCL=0;//拉低时钟线SDA=1;//产生上升沿delay10us();}/**************************************接收应答信号**************************************/bitAM232X_RecvACK(){//SCL=0;SDA=1;dela
8、y10us();SCL=1;//拉高时钟线delay5us();CY=SDA;//读应答信号delay5us();SCL=0;//拉低时钟线delay10us();returnCY;}/*****************
此文档下载收益归作者所有