久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 基于STM32+ucos-II+DS18B20調試成功 [打印本頁]

作者: pengyongnet    時間: 2020-2-2 19:48
標題: 基于STM32+ucos-II+DS18B20調試成功
前幾天調試了一下DS18B20的程序,起初系統在裸奔的時候DS18B20可以很正常的讀取數據。由于項目前期設計時添加了ucos實時操作系統。原以為把裸奔的程序移植過來就可以使用。結果悲劇發生了……如果做過這方面的朋友一定知道。添加后,你會發現系統不跑了,徹底的死掉了。原因在何處?經過一整天的查找,發現原來系統的時間片被占用了。導致ucos的ticks出現異常。


解決辦法:一種方法是:修改OS_CPU_SysTickInit(void)函數,與delay函數進行兼容。在溫度傳感器延時的時候不影響操作系統的tick運行。這樣就可以解決問題了。


還有一種方法就是,把18B20的延時定時器更換成TIM3或者是其他定時器。和系統的tick分開。即可解決。


作者: pengyongnet    時間: 2020-2-2 20:01
CPU_CRITICAL_ENTER();         
  讀取18b20;
  CPU_CRITICAL_EXIT();
作者: pengyongnet    時間: 2020-2-3 08:47
認同二樓看法,DS18B20上見過類似情況,

OS_ENTER_CRITICAL();
XXXXXXXXXXXX
OS_EXIT_CRITICAL();

如上方法可解決。

你這情況有些蹊蹺了,如果問題不在中斷/delay上,也許是因為死鎖。
不過死鎖一般出現在復雜的系統上,DHT11發生死鎖也不應該啊。
作者: liaoxj    時間: 2020-5-31 17:38
學習一下,在哪里看代碼




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 国产久| 日韩人体在线 | 罗宾被扒开腿做同人网站 | 99在线资源| 精品99爱视频在线观看 | 日韩av资源站 | 精品欧美 | 久久最新 | 精品国产色 | 99热在线免费 | 日日夜夜视频 | 精品视频一区二区三区在线观看 | 国产精品成人在线播放 | 午夜影院在线观看版 | 日本免费一区二区三区视频 | 999国产精品视频免费 | 久久中文字幕一区 | 特级做a爱片免费69 精品国产鲁一鲁一区二区张丽 | 欧美精品a∨在线观看不卡 国产精品久久国产精品 | 国产第一页在线播放 | 亚洲一区中文 | 在线视频91 | 亚洲精品国产第一综合99久久 | 成人av在线播放 | 在线中文字幕视频 | 国产精品久久久久久高潮 | 精品久久不卡 | 日韩一区二区三区精品 | 亚洲日日夜夜 | 久久久久亚洲精品国产 | 亚洲精品一区二区在线观看 | 国产一区日韩在线 | 一区二区三区日本 | 亚洲高清av| 992tv人人草| 午夜精品 | 成年人黄色免费视频 | 亚洲精品国产精品国自产在线 | 国产91中文 | 97在线超碰 | 亚洲黄色一级毛片 |