實驗環(huán)境
Matlab版本 :2021b
操作系統(tǒng) :Win10專業(yè)版
硬件平臺 :YF-STM32-ALPHA 1R4
模型與原理圖
本次實驗所用到的Simulink模型如圖5.1所示,實驗現(xiàn)象: 按鍵按下、松開LED循環(huán)實現(xiàn)翻轉亮滅效果,當按鍵按下時,產(chǎn)生下降沿脈沖,通過一個計數(shù)器對下降沿脈沖進行0~1循環(huán)計數(shù),計數(shù)到最大值時產(chǎn)生輸出信號,輸出信號為0時,控制LED熄滅,輸出值為1時,控制LED點亮。
按鍵電路采用對電源負極方式連接,按鍵松開狀態(tài)為高電平H,即邏輯1,按鍵按下狀態(tài)為低電平L,即邏輯0。
圖5.1 按鍵控制LED亮滅simulink模型
圖5.2 按鍵控制LED亮滅原理圖
圖5.3 按鍵在開發(fā)板中的位置
基礎模型介紹與分析
"Digital Read"模型與設置為STM32專用讀取I/O端口數(shù)據(jù)模型,更改“Pin:”編號可使其與STM32引腳對應到芯片端口,“Sample time:”采樣時間設置為-1時表示采樣時間跟隨系統(tǒng)基礎采樣時間,如圖5.4所示。
圖5.4 "Digital Read"模型與參數(shù)設置
Count Up”計數(shù)器模型如圖5.5所示,此處“Count event”欄將其設置為"Falling edge"(下降沿)計數(shù)方式(單片機按鍵需保持為上拉輸入),"Counter size"(計數(shù)大小)采用“User defined”(自定義)方式,“Maximum count”設置為1,“Output”設置為“Hit”方式,去掉“Reset input”勾選項?!癝witch”模型保持默認設置,然后分別將其他兩個輸入端口與“Constant”模型連接,如圖5.6所示。
圖5.5 “Count Up”模型設置
圖5.6 "Switch"模型
注意此處設置比較關鍵,我們需要在“配置”參數(shù)中將“求解器->求解器選擇”欄中的“類型”設置為“定步長”,“求解器”設置為“離散(無連續(xù)狀態(tài))”,將“求解器詳細信息”欄中的“固定步長(基礎采樣時間)”設置為0.1,即0.1s,最終設置好的效果如圖5.7所示。至于為什么要這樣設置,在后面我們會對它做一個簡單的對比分析,不然整個模型運行的會非常緩慢。
圖5.7 “基礎采樣時間”設置
總結
本實驗中只使用了兩個基本模型“Count Up”和“Switch”模型實現(xiàn)按鍵控制LED反轉,當然其中的"Switch"模型去掉也可以實現(xiàn)同樣的效果,讀者朋友還可以嘗試使用其它模型搭建實現(xiàn)同樣效果。
讀者朋友可以思考下我們以往使用傳統(tǒng)方式開發(fā)單片機按鍵輸入程序時如果不使用簡單的濾波算法,那么按鍵按下和松開瞬間由于按鍵的彈跳特性,會出現(xiàn)多次按下或松開狀況,但是在本次實驗中并沒有看到這類濾波?另外以往我們一般使用狀態(tài)機方式讀取按鍵值,simulink中狀態(tài)機又該如何使用呢?大家可以嘗試使用stateflow狀態(tài)機方式去實現(xiàn)下。
拓展延申
在前面我們有提到采樣時間設置的問題,這里簡單的分析下不同采樣時間下的按鍵波形,模型如圖5.9所示,在“配置參數(shù)->求解器->求解器詳細信息->固定步長(基礎采樣時間)”中將時間設置為0.01秒,如圖5.10所示。
圖5.9 按鍵波形測試模型
圖5.10 0.01s采樣時間設置
單擊線條上方會出現(xiàn)三個小點“...”點擊小點會出現(xiàn)如圖5.11所示信號標識,單擊該信號會出現(xiàn)在線條上方,如圖5.12所示,此時我們需要點擊“Monitor & Tune”進入硬件在環(huán)模式,然后點擊“數(shù)據(jù)查看器”按鈕如圖5.13所示,彈出的信號查看器窗口如圖5.14所示,勾選上左側需要監(jiān)控的信號,當按鍵按下時就會顯示相應的實際波形。
圖5.11 信號記錄操作方式
圖5.12 在環(huán)模式下監(jiān)控數(shù)據(jù)
圖5.12 0.01基礎采樣時間下按鍵輸入波形
-
led
+關注
關注
242文章
23614瀏覽量
669087 -
原理圖
+關注
關注
1316文章
6389瀏覽量
238094 -
STM32
+關注
關注
2283文章
10986瀏覽量
361299 -
Simulink
+關注
關注
22文章
538瀏覽量
63435 -
按鍵電路
+關注
關注
1文章
35瀏覽量
21935
發(fā)布評論請先 登錄
相關推薦
利用按鍵控制LED的亮滅
利用按鍵控制LED燈的亮滅
如何利用Stduino通過按鍵控制LED燈亮滅
使用51單片機按鍵控制LED亮滅和單個IO翻轉的程序免費下載

FPGA入門系列實驗教程之按鍵控制LED亮滅的詳細資料說明

FPGA入門系列實驗教程之如何進行按鍵消抖控制LED亮滅

評論