1.1.1 使用Keil MDK運行第一個STM32F10X程序
在上一小節(jié)中已經(jīng)詳細(xì)介紹了使用Keil MDK和標(biāo)準(zhǔn)外設(shè)庫創(chuàng)建一個工程的過程,下面將介紹基于這個工程來編寫一個小程序,通過這個程序我們可以初步了解:
l STM32標(biāo)準(zhǔn)外設(shè)庫的簡單使用過程
l STM32外設(shè)的使用方法和大致流程
l 程序的編譯、鏈接、下載步驟
l 利用Keil MDK的在線仿真功能進(jìn)行軟件仿真的簡要步驟
1. 程序的編寫
(1)程序?qū)崿F(xiàn)的功能
為了方便各位讀者的入門和理解,這個小程序的功能非常簡單,作為本書功能實踐的第一個程序,其功能當(dāng)然也是最為經(jīng)典的“Hello World!”了,只不過不是簡單的屏幕輸出,而是利用硬件的串口進(jìn)行輸出,同時作為單片機類的第一個程序自然少不了LED閃爍的功能,這就是這個小程序的兩個主要的功能:
l 利用串口1輸出“Hello World!”字符。
l 控制兩個LED閃爍。
(2)程序的實現(xiàn)
在基于標(biāo)準(zhǔn)外設(shè)庫進(jìn)行程序開發(fā)時一定要充分利用標(biāo)準(zhǔn)外設(shè)庫下面的幫助文件stm32f10x_stdperiph_lib_um.chm以及庫中自帶的工程實例,同時結(jié)合STM32F10x系列的芯片手冊來完成程序的開發(fā),stm32f10x_stdperiph_lib_um.chm幫助文件如圖 5?25所示。此文件中已經(jīng)包含了標(biāo)準(zhǔn)外設(shè)庫的全部內(nèi)容,并根據(jù)根據(jù)內(nèi)容結(jié)構(gòu)進(jìn)行了重新的編排和整理,更加方便程序的閱讀和理解。
STM32F10x_StdPeriph_Lib_V3.5.0\Project\STM32F10x_StdPeriph_Examples文件夾下包括了眾多外設(shè)的使用例程,這里的例程多是針對官方的開發(fā)板而編寫,然而這些例程卻非常全面的展示了相關(guān)外設(shè)的各種使用方法,對我們做基于標(biāo)準(zhǔn)外設(shè)庫的開發(fā)有著非常重要的意義。
三個圖標(biāo),分別為編譯指定文件、生成工程、重新生成所有工程。首先在mian.c下點擊編譯圖標(biāo),如果編譯沒有錯誤,則輸出窗口如圖 5?26所示。如果編譯存在錯誤,點擊錯誤的地方可以直接定位到錯誤行,根據(jù)錯誤提示進(jìn)行修改。
圖標(biāo)生成工程,生成沒有錯誤則輸入如圖 5?27所示。如果存在錯哦無則可以直接點擊對應(yīng)的錯誤跳轉(zhuǎn)到對應(yīng)的文件對應(yīng)的行,根據(jù)錯誤提示進(jìn)行再次修改。
圖標(biāo),或者從菜單欄-Debug啟動調(diào)試。啟動后界面如圖 5?29所示。調(diào)試啟動后自動運行到主程序。
,同樣在菜單欄Debug菜單下可以找到對應(yīng)的選項,自左向右分別為復(fù)位,運行,點擊后直接運行程序;停止,運行時點擊停止當(dāng)前運行;單步,單步執(zhí)行當(dāng)前程序;跳過,可以直接跳過子函數(shù)的運行;跳出,在某個子函數(shù)中運行時可以直接跳出當(dāng)前函數(shù);運行到光標(biāo)位置處。
在程序行號的左側(cè)直接雙擊可以非常方便的添加或者取消斷點,如圖 5?30所示。
中可以非常方便的打開相應(yīng)的查看窗口,查看相關(guān)寄存器和外設(shè)等。由于我們需要使用串口1輸出字符,同時LED閃爍顯示,因此首先打開串口1的輸出,點擊
圖標(biāo),彈出如所示下拉菜單,選擇UART#1如圖 5?33所示,或者點擊View菜單點擊Serial Windows選擇UART#1即可打開UART的輸出窗口,運行程序后會在此窗口中輸出串口信息,如圖 5?34所示。
圖標(biāo),直接將程序下載到硬件平臺中運行,非常方便。在使用仿真器進(jìn)行在線仿真時也可以通過設(shè)置在在線仿真時將程序下載到flash中。
程序下載到硬件平臺后通過實際的串口來查看程序運行情況了,將硬件平臺的串口1連接至PC,筆記本等電腦上沒有物理串口的可以使用USB轉(zhuǎn)串口設(shè)備,注意在設(shè)備管理器中查看實際所分配的串口號,本機分配的串口號為COM4,如圖 5?36所示,串口號也可以在高級選項中進(jìn)行更改。
至此,我們完成了一個簡單的程序開發(fā)過程。本小節(jié)通過實現(xiàn)串口輸出與LED閃爍的功能系統(tǒng)的介紹了怎樣基于標(biāo)準(zhǔn)外設(shè)庫進(jìn)行程序的開發(fā)與調(diào)試,這兒只是列舉了一個非常簡單的小例子,更多的聯(lián)系讀者可以參考標(biāo)準(zhǔn)外設(shè)庫中的例程自行完成。
上一篇:STM32的ADC多通道采集的實現(xiàn)
下一篇:再次調(diào)試STM32F407+DP83848
推薦閱讀
史海拾趣
CANOPUS公司最初由創(chuàng)始人Shinichi Usuda于1977年創(chuàng)立,當(dāng)時他經(jīng)營著一家樂器商店。他深知音樂的力量和樂器的重要性,于是決定將自己的商店逐漸轉(zhuǎn)型為專注于鼓類樂器的制造與銷售。經(jīng)過幾年的努力,CANOPUS逐漸在樂器市場上嶄露頭角,贏得了音樂愛好者的青睞。
隨著技術(shù)的不斷進(jìn)步和市場需求的增長,Dow-Key Microwave開始尋求技術(shù)突破和市場拓展。公司投入大量研發(fā)資金,加強與高校和研究機構(gòu)的合作,成功開發(fā)出一系列高性能、高可靠性的射頻微波開關(guān)產(chǎn)品。這些產(chǎn)品廣泛應(yīng)用于通信、航空、軍事等領(lǐng)域,贏得了客戶的廣泛贊譽。同時,公司還積極拓展國際市場,產(chǎn)品出口到多個國家和地區(qū),進(jìn)一步提升了公司的知名度和影響力。
面對日益激烈的市場競爭和不斷變化的客戶需求,CTS始終堅持技術(shù)創(chuàng)新和數(shù)字化轉(zhuǎn)型。公司投入大量資源進(jìn)行研發(fā),不斷推出具有競爭力的新產(chǎn)品和解決方案。同時,CTS還積極擁抱數(shù)字化技術(shù),通過云計算、大數(shù)據(jù)和人工智能等技術(shù)手段提升生產(chǎn)效率和服務(wù)質(zhì)量。
Avalon Photonics的創(chuàng)立源于一次技術(shù)突破。創(chuàng)始人Dr. Smith在光子學(xué)領(lǐng)域有著深厚的學(xué)術(shù)背景,他成功研發(fā)出了一種新型的光子探測器,具有極高的靈敏度和穩(wěn)定性。這一創(chuàng)新技術(shù)迅速引起了業(yè)界的關(guān)注。Dr. Smith看到了商業(yè)化的潛力,于是決定成立Avalon Photonics,將這項技術(shù)轉(zhuǎn)化為實際產(chǎn)品。初創(chuàng)期的Avalon面臨著資金短缺和市場認(rèn)知度低的挑戰(zhàn),但憑借著技術(shù)優(yōu)勢和團(tuán)隊的努力,逐漸在市場上站穩(wěn)腳跟。
Murata是一家歷史悠久的電子元器件公司,他們早在電子設(shè)備發(fā)展的初期就認(rèn)識到了EMI濾波器的重要性。隨著電子產(chǎn)品的不斷小型化,Murata看到了小型化EMI濾波器的巨大市場需求。他們通過與多家科研機構(gòu)和高校合作,成功研發(fā)出了一系列高性能、小型化的EMI濾波器。這些濾波器不僅性能優(yōu)越,而且體積小巧,非常適合用于現(xiàn)代電子設(shè)備中。Murata因此贏得了大量的市場份額,并成為了EMI濾波器領(lǐng)域的佼佼者。
Deltron公司成立于XXXX年,初期以生產(chǎn)基礎(chǔ)電子元器件為主。創(chuàng)始人XXX憑借其對電子技術(shù)的深刻理解和對市場趨勢的敏銳洞察,帶領(lǐng)團(tuán)隊進(jìn)行了一系列技術(shù)創(chuàng)新。通過引進(jìn)先進(jìn)的生產(chǎn)設(shè)備和研發(fā)技術(shù),Deltron成功開發(fā)出了一系列具有競爭力的產(chǎn)品,逐漸在電子行業(yè)中嶄露頭角。
作者:馬君璞 魏 智 來源:國外電子元器件 摘要:實時時鐘(RTC)作為系統(tǒng)同步或時間標(biāo)志已被廣泛應(yīng)用于各種電子產(chǎn)品,利用Dallas Semiconductor提供的多種類型的RTC芯片,用戶在設(shè)計中可方便地針對具體應(yīng)用來選擇相應(yīng)的芯片。文中討 ...… 查看全部問答∨ |
|
ARM板與網(wǎng)絡(luò)視頻服務(wù)器的問題? 我沒這方面經(jīng)驗,請問,ARM板能連接使用網(wǎng)絡(luò)視頻服務(wù)器嗎?我想輸入視頻信號,把攝像頭插入視頻服務(wù)器,再通過網(wǎng)絡(luò)口連到ARM板上,可以調(diào)出視頻圖像嗎? 這個方法可行嗎? 我現(xiàn)在沒什么思路,怎么做可以調(diào)出圖像? 大家?guī)拖旅?!謝謝!… 查看全部問答∨ |
|
求USB鼠標(biāo)數(shù)據(jù)協(xié)議,如果有現(xiàn)成的C程序更好啦^_^,運行于ARM9 2410上的。 如果有,請發(fā)到我的郵箱OFourME@163.com 非常謝謝!… 查看全部問答∨ |
新手上路 我想知道wince驅(qū)動調(diào)試的過程比如說 驅(qū)動有錯誤 修改以后 需要1 重新編譯NK2 導(dǎo)出新的sdk3 卸載原來的sdk4 安裝新的sdk5 下載NK6 使用簡單的應(yīng)用程序測試驅(qū)動這個步驟對么 我的關(guān)注點在sdk是不是需要反復(fù)安裝啊 卸載舊的 然后安裝新導(dǎo)出的 ...… 查看全部問答∨ |
1.我看見STM32B-EVAL 開發(fā)板圖紙,為什么USB有個 USB Disconnect控制,在應(yīng)用時沒有這個控制可以嗎?? 2.ST 的 DFU 軟件可以在Win7 系統(tǒng)中用吧?? 32位 / 64 位系統(tǒng) 3.我按照ST的例子修改了個自己的 DFU 程序,先安裝了 ST 的 DFU 軟件, ...… 查看全部問答∨ |
|
STM32 ,F(xiàn)lash download failed-"Cortex-M3" 自己仿照教程寫了程序,運行后也沒有錯誤和提醒,但是每次燒的時候彈出Flash download failed-\"Cortex-M3\",燒教程里的源程序沒問題,這問題出在哪里??? 求救!??!… 查看全部問答∨ |
易電源的強大之處在于,我們只要用很少的元件即可搭配出性能可靠的電源系統(tǒng)。因為絕大部分采用了分立元件,所以只要采用的幾個元件參數(shù)選取無誤即可免調(diào)工作。對入門要求低,基本上只要稍有電子基礎(chǔ)都可以自己打造一款適合自己用的專屬DIY電源。性 ...… 查看全部問答∨ |
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- 更直觀的了解5G?觀看羅德與施瓦茨主題演講,填問卷贏好禮!
- 絕地求生,集齊4樣必然吃雞!覽TI汽車技術(shù)方案 贏小禮品
- TI攜您共創(chuàng)未來乘駕新體驗——親自體驗: 明星產(chǎn)品限時購
- 體驗Cyclone V Dev Kit
- 【社區(qū)大講堂】頂嵌與你一起:動手做嵌入式產(chǎn)品
- 艾睿電子& Silicon Labs 有獎直播 | 全新藍(lán)牙信道探測:從技術(shù)創(chuàng)新到實際應(yīng)用
- 喜大普奔,起底USB Tybe-C 五大干貨!
- 安世半導(dǎo)體理想二極管與負(fù)載開關(guān),保障物聯(lián)網(wǎng)應(yīng)用的穩(wěn)健高效運行
- Mouser&TE直播:解鎖智能家居部件新技術(shù),探索連接黑科技
- 初夏TI電池管理與您邀約:曬樣片訂單 搶樓贏禮!
- Toyocolor為SK Innovation提供導(dǎo)電碳納米管分散體 可用于鋰離子正極
- 外媒:中國“囤積”半導(dǎo)體設(shè)備將引發(fā)連鎖反應(yīng)
- 中韓動力鋰電池行業(yè)發(fā)展差異剖析
- 中國購EUV光刻機,美國又使壞
- 2021年中國鋰電池負(fù)極材料產(chǎn)業(yè)全景圖譜
- 傳LED不可見光產(chǎn)品漲價了?億光:正了解情況
- 芯謀研究:大煉芯片三年,成熟產(chǎn)能為什么依然緊缺?
- 數(shù)碼論:董明珠做手機成功與否?
- 小米產(chǎn)投:堅持價值投資,助力中國先進(jìn)制造
- 中微公司入股了半導(dǎo)體設(shè)備商理想萬里暉