作者ww8923ww (Zeioe)
看板LinuxDev
标题[问题] LinuxModule&DHT11
时间Wed Feb 11 16:44:07 2015
===============
=====Host======
===============
CPU : i.MX6Q
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX6Q
kernel : linux-3.0.35
module code :
https://gist.github.com/anonymous/bc224cfc1bbdf4962bd0
app code :
https://gist.github.com/anonymous/e380062f0c66a7047595
===============
======Guest====
===============
DHT11 :
http://akizukidenshi.com/download/ds/aosong/DHT11.pdf
===============
执行app的结果 :
https://gist.github.com/anonymous/b6069291919e5c4738fa
===============
这是一个linux与温湿度感测IC的driver&app
执行app code的31-43行应该要读取完40bit的数据後跳出回圈
实际执行却会在40行形成无限回圈
我想可能是"ioctl(dev_fd,0,0)"函数花了太多时间执行(?
"ioctl(dev_fd,0,0)"函数叙述於module code的69-74行
"pig_yan_ru_gpio28_mod_value(cmd,arg)"函数叙述於module code的24-67行
.
.
.
.
.
.
.
.
求解Q_Q
如有资料不足处 请提醒我一下 谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.131.2.76
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/LinuxDev/M.1423644254.A.199.html
1F:→ ww8923ww: 问题以解决 02/13 18:26
2F:推 awe31402: 会是因为没有 open 吗 02/13 18:42
3F:→ ww8923ww: 延迟函数usleep()误差太大 02/14 03:15
4F:→ Push5F: 我记得有一篇叫做timer Q_Q 02/16 22:43
5F:推 tjjh89017: 哦哦哦!解决了! 02/18 14:32
6F:→ ww8923ww: b(^ω^)d 02/19 12:03