朱老師筆記
1.8.3.1、基於串列埠標準輸出的按鍵除錯
1.8.3.3、程式設計實踐
《朱老師物聯網大講堂》學習筆記
串列埠輸出,
即在上節移植printf的基礎之上,
在按鍵按下中,呼叫printf函式進行輸出,
效果就是,按鍵按下,串列埠printf輸出內容,
按鍵消抖
理想狀態:按鍵按下與彈起,電壓是直上直下的,非常規整,
現實中好一點的情況是,有一定弧度的上下變化,
實際情況可能是高地電平的變化,電壓一上一下,抖動。
在此我們需要去消抖,用硬體或軟體的方式。
硬體方式是縮短這個抖動期,軟體消抖是繞過這個抖動期。
軟體消抖有個麻煩的地方是,這個延時時間不好掌握。
軟體實現,就是在按下某個案件後並不立即作出反應,
而是等待某個時間,如果獲取的按鍵狀態一致則做出相應的反應。
stm32串列埠輸出
stm32開發板上是如何實現串列埠通訊的,我以實現printf重定向為例來進行分析 先看 main.c include printf.h int main printf.c include printf.h include stm32f10x.h include stm32f10x rcc.h in...
STM32串列埠輸出亂碼
原因一 初始化串列埠的波特率與串列埠除錯助手不一致。原因二 晶震不一致。串列埠輸出始終亂碼,外部時鐘頻率配置錯誤導致的,庫使用預設8mhz晶震,可以通過巨集使用25mhz晶震。具體定義在stm32f10x.h 文件中 開發板晶震使用的12mhz晶震,定義乙個巨集修改成12000000,編譯,燒寫。i...
從硬體電路和軟體方面進行按鍵消抖
什麼是按鍵抖動及按鍵抖動產生的原因?最近在專案中用到了機械彈性開關,這種開關在按下時候不會馬上就有穩定的接通,在彈開時候也不會馬上斷開,在按下和彈開的瞬間會產生一系列抖動。而我專案中stm32晶元是通過中斷對按鍵進行判斷的,當晶元檢測到上公升沿時認為按鍵按下一次,因為存在開關抖動,所以一次按鍵操作會...