最近做单片机小东西的总结 (STC12C5A60S2)

本文作者分享了使用STC12C5A60S2单片机结合多个传感器(DS18B20, DHT21, 光敏电阻)进行温度测量并实现无线传输的过程。遇到的主要挑战包括DS18B20的时序问题,由于STC12的1T特性导致的延时函数调整,以及DHT21驱动的时序难题。此外,还提及了利用‘单片机小精灵’软件辅助生成延时函数,并计划进一步研究光敏模块和NRF24L01无线通信。" 118597655,10537484,Cisco交换机配置入门:基础命令与设置,"['Cisco配置', '交换机基础', '网络设备配置']
摘要由CSDN通过智能技术生成

我做的是用 STC12C5A60S2+Nokia5110+DS18B20+DHT21+光敏电阻+NRF42L01 测量温度,然后经过无线传输再显示的小东西。

有快一周的时间被DS18b20折腾着,主要是因为时序不正确。在Keil中模拟(好吧,新手不会有Protel仿真),延时什么的都对,就是初始化失败。求助Google,才知道STC12是1T的单片机,拥有比以往更快的计算速度。所以延时函数要重新写。恩,后来还有温度表的问题,显示乱码,不过换了一个就不乱码了,现在还没弄懂原理是什么。


之前的小数对照表,不过一直有乱码的问题。

//小数位对照表
//uchar code df_Table[] = {0,1,1,2,3,3,4,4,5,6,6,7,8,8,9,9};			

现在用的小数对照表:

unsigned char code wendu[]="0123456789";        //利用一个温度表解决温度显示乱码

DS18B20的主要函数:


//	  初始化DS18B20

unsigned char Init_DS18B20()
 {
 	uchar status;
	DQ = 1 ;
	Delay(60);
	DQ = 0 ;
	delay500us();
	DQ = 1 ;
	Delay(60);
	status = DQ ;
  Delay(120);
	//
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值