完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
开发软件:PSOC 5LP
单片机:CY8CKIT-050 外加模块:DHT22 用PSOC写温湿度测量的时候,DHT22可以正常接收主机发送的开始信号,并且发送数据(已经在示波器上捕捉到了正确的数据),但是主机没有办法接收到DHT22的数据,读取数据的引脚始终为高电平,是设定GPIO的时候出现了问题吗?还是其他说明原因,有什么办法解决吗?/(ㄒoㄒ)/~~ 附代码:(接收pin名称叫Data,设定为同时勾选input和output) #include #include int main() { LCD_Start(); LCD_Position(0,0); LCD_PrintString("Ready") ; uint8 t; uint8 num[5] = {0}; uint8 sum = 0; uint16 temp = 100; uint16 wet = 200; CyDelay(2000); LCD_Position(0,0); LCD_PrintString(" "); LCD_Position(0,0); LCD_PrintString("Temp"); LCD_Position(0,7); LCD_PrintString("Wet"); //Data_SetDriveMode(PIN_DM_STRONG); Data_Write(1); CyDelayUs(1000); Data_Write(0); CyDelayUs(300); //这里为止都是正常的,示波器可以捕捉到DHT22传输的数据 Data_SetDriveMode(PIN_DM_DIG_HIZ); CyDelayUs(20); t = Data_ReadDataReg();//从这里开始不能正常读数了,始终读到低电平,如果用Data_Read()则始终读到高电平 //while (t) t = Data_Read(); if (t == 0) { while (!t) t = Data_ReadDataReg(); while (t) t = Data_ReadDataReg(); int i,j,temp; for (i = 0; i<5; i++) { for (j = 0; j<8; j++) { while (!t) t = Data_ReadDataReg(); CyDelayUs(30); t = Data_ReadDataReg(); temp = t; num[i]<<=1; num[i] = num[i] | temp; } if (i<4) sum+=num[i]; } Data_SetDriveMode(PIN_DM_STRONG); Data_Write(0); CyDelayUs(50); Data_Write(1); if (sum == num[4]) { wet=num[0]; wet<<=4; wet+=num[1]; temp=num[2]; temp<<=4; temp+=num[3]; LCD_Position(1,0); LCD_PrintString(" "); LCD_Position(1,0); LCD_PrintNumber(temp); LCD_PutChar('C'); LCD_Position(1,7); LCD_PrintString(" "); LCD_Position(1,7); LCD_PrintNumber(wet); LCD_PutChar('%'); } else { LCD_Position(1,0); LCD_PrintString(" "); LCD_Position(1,0); LCD_PrintString("ERROR"); } } else { LCD_Position(1,0); LCD_PrintString(" "); LCD_Position(1,0); LCD_PrintString("Fail"); } } |
|
相关推荐
1个回答
|
|
psoc的io口很灵活,基本可以随意功能
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
644 浏览 0 评论
求助一下关于51系列单片机的Timer0的计时问题,TH0、TL0+1的时间是怎么算的?
1819 浏览 1 评论
【RA-Eco-RA4E2-64PIN-V1.0开发板试用】开箱+Keil环境搭建+点灯+点亮OLED
1262 浏览 0 评论
【敏矽微ME32G070开发板免费体验】使用coremark测试敏矽微ME32G070 跑分
1136 浏览 0 评论
【敏矽微ME32G070开发板免费体验】开箱+点灯+点亮OLED
1357 浏览 2 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
12024 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-24 04:28 , Processed in 0.349448 second(s), Total 40, Slave 33 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号