STM32完成一個簡單程式的編譯及proteus完成一個程式設計和模擬

2020-10-07 02:00:53

STM32完成一個簡單程式的編譯及proteus完成一個程式設計和模擬


一、用STM32設計LED閃爍

1.建立一個新的工程

步驟較為複雜,這裡不一一簡述,詳情參考https://blog.csdn.net/cheapter/article/details/80198168
跟隨步驟設定引數,我的設定如下:

在這裡插入圖片描述

2.編寫程式

1.初始化函數,用於設定埠
在這裡插入圖片描述
引腳自己設定,我這裡使用的13管腳。以上程式碼內容為:定義了一個結構體變數,對結構體變數中的三個成員變數進行賦值,呼叫了GPIO的初始化函數
另外,比較簡單的初始化函數(摘自網上)
在這裡插入圖片描述

其中第一行為使能GPIOA時鐘,二三行為設定PA8為推輓輸出,50MHZ
2.延時函數
在這裡插入圖片描述
3.驅動函數
在這裡插入圖片描述

3.執行函數

總體程式碼為
在這裡插入圖片描述
編譯顯示無錯,執行成功
在這裡插入圖片描述
接下來就是下載到硬體執行了。

二、proteus完成一個交通燈的設計

1.運用c51程式設計一個交通燈程式
在這裡插入圖片描述
內容為為P1口賦值,控制相應埠高低電平,實現交通燈亮滅,並延時,於LED燈上顯示倒計時
2.交通燈執行情況
南北紅,東西綠
全黃燈,減速
南北綠,東西紅

總結

由於第一次接觸MDK以及stm32,實驗過程坎坷,花了很長的時間解決引數設定的問題和程式碼偵錯的更改,歷時較長,因此對stm32的運用的理解也更加深刻。