STM32Cube 是一個全面的軟件平臺,包括了ST產品的每個系列。平臺包括了STM32Cube 硬件抽象層(一個STM32抽象層嵌入式軟件,確保在STM32系列最大化的便攜性)和一套的中間件組件(RTOS, USB, FatFs, TCP/IP, Graphics, 等等).
直觀的STM32微控制器的選擇和時鐘樹配置
微控制器圖形化配置外圍設備和中間件的功能模式和初始化參數
C代碼生成項目覆蓋STM32微控制器的初始化符合IAR?,Keil的?和GCC編譯器。
對于新的產品設計,我們強烈推薦使用STM32Cube來加速你的開發過程,并為以后的產品平臺移植打下良好的基礎。
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.功能外設配置
在配置框我們可以看到有幾個區域,分別對應的功能設置如下
Multimedia(多媒體):音頻視頻、LCD
Control(控制):定時器
Analog(模擬):DAC、ADC
Connectivity(通訊連接):串口、SPI 、I2C、USB、ETH
SYStem(系統):DMA(直接存儲器存取)、GPIO、NVIC、RCC、看門狗
middlewares(中間件): FreeRTOS、FATFS、LwIP、USB
此工程中DMA沒用的不用配置,NVIC(嵌套中斷向量控制器(Nested Vectored Interrupt Controller))配置中斷優先級。RCC不用配置。
GPIO Pin Level (管腳狀態):低電平
GPIO mode (管腳模式 ):推挽輸出
Maximum output speed (最大輸出速度):低速
User Label (用戶標簽):LED1
更改用戶標簽,管腳配置圖會顯示管腳的標簽。
4.功耗計算
這個根據配置的外設計算功耗,不用理會。
5.生成工程報告
點擊Project –>Generate Reports或者點擊快捷圖標生成報告。系統會提示先創建一個工程項目。點擊Yes設置工程。
輸入工程名,選擇工程路徑(注意不要出現中文,否則可能出錯)。工具鏈/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管腳的初始化函數。
在stm32f1xx_hal_gpio.h頭文件中可以看到GPIO的操作函數。
在main函數中的while循環中添加LED流水燈效果的應用程序。
重新編譯程序,點擊下載到Open103Z-C開發板。如果提示錯誤,可以點擊圖標對Option for Target 的Dubug選項進行修改。(圖上選的是ST-LINK)
點擊Settings->Flash Download勾選 Reset and Run選項。這樣程序下載后自動啟動運行,不用再按一下復位或者重新上電才能運行。
程序下載到Open103Z-C開發板。可以看到LED1~LED4依次被點亮,實現流水燈的效果。
總結:STM32Cube提供了固件庫,用戶可直接調用固件庫函數來開發,并且可以很好的實現STM32-MCU全系列的代碼一致性。同時STM32CubeMX工具提供的可視化引腳、外設、時鐘等配置功能,可以幫助快速完成工程的建立、初始化。大大降低了開發者的工作量。
后續我們會結合微雪Open746I-C開發板,通過STM32cubeMX系列教程講解如何學習STM32F7系列的片上外設。通過STM32F7系列的學習,可以讓各位更快的掌握其他系列的使用方法。
上一篇:STM32CubeMX系列教程1:GPIO
下一篇:9.TouchGFX界面應用之綜合應用--打地鼠
推薦閱讀
史海拾趣
隨著環境問題日益嚴重,電子產品行業的可持續發展已經成為行業的重要趨勢。FEI Microwave Inc公司積極響應這一趨勢,將環保理念融入到產品研發和生產過程中。公司采用環保材料和綠色生產工藝,努力降低產品對環境的影響。同時,FEI Microwave Inc公司還積極推動廢舊產品的回收和再利用工作,為電子行業的可持續發展貢獻了自己的力量。
以上五個故事是基于假設和一般行業趨勢構建的虛構性故事,旨在展示FEI Microwave Inc公司可能的發展歷程和成就。在實際中,公司的發展歷程和成就可能因市場環境、公司戰略等因素而有所不同。
BeagleBoard公司的創業之路始于對開源硬件和嵌入式系統的熱情。面對當時市場上嵌入式系統開發工具不足的情況,公司創始人看到了巨大的機遇。他們堅信,通過提供一個開放、易用且功能強大的硬件平臺,可以激發開發者群體的創造力,推動嵌入式系統領域的發展。經過數月的努力,BeagleBoard推出了首款產品——一款基于開源原則的嵌入式系統開發板,得到了開發者們的熱烈響應。
盡管Eclipse是一個開源項目,但其背后也有著商業化的運作。一些公司看到了Eclipse的潛力,紛紛推出了基于Eclipse的商業產品。這些產品不僅繼承了Eclipse的優秀特性,還加入了一些獨特的功能和服務,以滿足不同客戶的需求。通過商業化運作,Eclipse的影響力得到了進一步擴大。
DAICO公司成立于XXXX年,最初是一家位于加利福尼亞的小型私營公司。在公司成立的初期,DAICO專注于研發和生產中頻/射頻和微波控制產品,以及放大器。這些產品主要用于國防電子和航空航天領域,為DAICO在電子行業中打下了堅實的基礎。
隨著汽車電子化程度的不斷提高,某汽車制造商面臨著如何在極端環境下保證汽車電子產品穩定性的挑戰。通過DFX的設計理念,該公司對汽車電子產品的設計進行了全面優化,包括選用耐高溫、抗腐蝕的材料、優化電路布局和散熱設計等。這些改進措施顯著提高了汽車電子產品的可靠性和耐久性,確保了汽車在惡劣環境下的正常運行。
DB Unlimited始終將技術創新作為公司發展的核心驅動力。公司不斷投入大量資源進行技術研發和創新,推出了多項具有行業領先水平的音頻技術。這些技術的推出不僅提升了公司的競爭力,也推動了整個音頻行業的發展。DB Unlimited的技術創新能力和成果得到了業界的廣泛認可。
本帖最后由 paulhyde 于 2014-9-15 03:45 編輯 文件夾中一共11個程序,有很詳細的說明,希望對初學NEC單片機和想學習NEC單片機的人有幫助,由于本人學習NEC單片機時間比較短,程序中有錯誤的還希望大家指點,單片機是0537DA … 查看全部問答∨ |
|
請教各位大俠。 我在wdk6000下基于KMDF開發了一個PCI設備的驅動,在Vista下能正常的安裝和使用。按照微軟提供的文檔,Build Environments選為\"Windows XP\"后編譯的驅動在XP下安裝卻報錯:Windows無法加載這個硬件的設備驅動程序,驅動程序可能已 ...… 查看全部問答∨ |
第一節: 心情和時鐘說實話我能夠使用的單片機不多,我總是以為無論什么單片機都能開發出好的產品。前些年用51,總是向各位大大學習,無休止的索取,在網上狂覽一通。心里感激的同時也想奉獻一些,可是我會什么?后來使用avr(公司要求)還是向大大 ...… 查看全部問答∨ |
附近是基于SN65HVD22的485通訊電路該485芯片內部自帶靜電保護功能,傳輸距離可達1200米,支持256個結點,500K的傳輸速率由于條件限制,實際測試只是在500米左右16個結點9600~115200波特率情況下測試,完全能夠滿足要求附件電路中添加了6N137的光電 ...… 查看全部問答∨ |