STM32教程,挺實用的
STM32Cube 是一個全面的軟件平臺,包括了ST產品的每個系列。平臺包括了STM32Cube 硬件抽象 層(一個STM32抽象層嵌入式軟件,確保在STM32系列最大化的便攜性)和一套的中間件組件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等).
直觀的STM32微控制器的選擇和時鐘樹配置 微控制器圖形化配置外圍設備和中間件的功能模式和初始化參數(shù) C代碼生成項目覆蓋STM32微控制器的初始化符合IAR™,Keil的™和GCC編譯器。
對于新的產品設計,我們強烈推薦使用STM32Cube來加速你的開發(fā)過程,并為以后的產品平臺移植打 下良好的基礎。
1.新建工程
打開STM32cubeMX軟件,點擊New Project。選擇對應開板MCU(STM32F103ZET6)。

選擇工程后進入工程界面,如下圖所示。

2. 配置外設。
RCC設置,選擇HSE(外部高速時鐘)為Crystal/Ceramic Resonator(晶振/陶瓷諧振器)

GPIO口功能選擇,PF6,PF7,PF8,PF9為LED1-LED4.找到對應管腳設置為GPIO_Output模式。(黃色引 腳為該功能的GPIO已被用作其他功能,可以忽略。綠色表示管腳已使用)
3. 時鐘配置
時鐘配置采用圖形配置,直觀簡單。各個外設時鐘一目了然。 STM32最高時鐘為72M,此處只有 在HCLK處輸入72,軟件即可自動配置。(RCC選擇外部高速時鐘)。

4.功能外設配置

在配置框我們可以看到有幾個區(qū)域,分別對應的功能設置如下
Multimedia(多媒體):音頻視頻、LCD Control(控制):定時器 Analog(模擬):DAC、ADC
Connectivity(通訊連接):串口、SPI 、I2C、USB、ETH SYStem(系統(tǒng)):DMA(直接存儲器存取)、GPIO、NVIC、RCC、看門狗
middlewares(中間件): FreeRTOS、FATFS、LwIP、USB
此工程中DMA沒用的不用配置,NVIC(嵌套中斷向量控制器(Nested Vectored Interrupt Controller))配 置中斷優(yōu)先級。RCC不用配置。

GPIO Pin Level (管腳狀態(tài)):低電平
GPIO mode (管腳模式 ):推挽輸出
Maximum output speed (最大輸出速度):低速
User Label (用戶標簽):LED1
更改用戶標簽,管腳配置圖會顯示管腳的標簽。

4. 功耗計算
這個根據(jù)配置的外設計算功耗,不用理會。

5. 生成工程報告
點擊Project –>Generate Reports或者點擊快捷圖標生成報告。系統(tǒng)會提示先創(chuàng)建一個工程項目。點擊
Yes設置工程。

輸入工程名,選擇工程路徑(注意不要出現(xiàn)中文,否則可能出錯)。工具鏈/IDE選擇MDK-ARM V5。最 后面可以設置堆棧大小,此處默認不作修改。

在Code Generator中找到Generated files框,勾選Generated periphera initialization as a pair of '.c/.h' files per IP。外設初始化為獨立的C文件和頭文件。

點擊生成報告,工程目錄下會生成txt文件和pdf文件,里面記錄了我們剛才的設置。
6. 生成工程代碼
點擊Project –>Generate Code或者點擊快捷圖標生成工程代碼。

點擊Open Project打開工程。到此就配置好工程外設初始化。

點擊Build按鈕,Build Optput信息框會輸出沒有錯誤沒有警告。
6. 添加應用程序 在gpio.c文件中可以看到LED管腳的初始化函數(shù)。

在stm32f1xx_hal_gpio.h頭文件中可以看到GPIO的操作函數(shù)。

在main函數(shù)中的while循環(huán)中添加LED流水燈效果的應用程序。

重新編譯程序,點擊下載到Open103Z-C開發(fā)板。如果提示錯誤,可以點擊圖標對Option for Target 的
Dubug選項進行修改。(圖上選的是ST-LINK)

點擊Settings->Flash Download勾選 Reset and Run選項。這樣程序下載后自動啟動運行,不用再按一下 復位或者重新上電才能運行。

程序下載到Open103Z-C開發(fā)板?梢钥吹絃ED1~LED4依次被點亮,實現(xiàn)流水燈的效果。
總結:STM32Cube提供了固件庫,用戶可直接調用固件庫函數(shù)來開發(fā),并且可以很好的實現(xiàn)STM32- MCU全系列的代碼一致性。同時STM32CubeMX工具提供的可視化引腳、外設、時鐘等配置功能,可以 幫助快速完成工程的建立、初始化。大大降低了開發(fā)者的工作量。
后續(xù)我們會結合微雪Open746I-C開發(fā)板,通過 STM32cubeMX系列教程講解如何學習STM32F7系列 的片上外設。通過STM32F7系列的學習,可以讓各位更快的掌握其他系列的使用方法。
完整的pdf格式文檔51黑下載地址:
STM32教程.pdf
(1.15 MB, 下載次數(shù): 132)
2018-8-27 14:12 上傳
點擊文件名下載附件
|