久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標(biāo)題:
STM32F10x在應(yīng)用中編程的實(shí)現(xiàn)方法
[打印本頁]
作者:
heila
時間:
2015-12-9 02:56
標(biāo)題:
STM32F10x在應(yīng)用中編程的實(shí)現(xiàn)方法
IAP驅(qū)動使用USART1口作為通信管道,PB口的第9引腳作為IAP判斷是否進(jìn)入IAP功能的信號線。引出一個按鍵,作為IAP功能選擇按鍵,只要在上電或復(fù)位時按住此鍵就會進(jìn)入IAP功能主界面,否則直接執(zhí)行正常應(yīng)用程序。BOOT0和BOOT1是啟動配置跳線。相應(yīng)的硬件電路分別如圖3、圖4和圖5所示。
3.2 IAP驅(qū)動
IAP驅(qū)動主要包含如下源文件。
main.c:完成Flash解鎖、按鍵端口初始化、按鍵判斷、USART1的初始化以及處理器的始終初始化,另外還初始化指針和跳轉(zhuǎn)到應(yīng)用程序處語句。然后從common.c執(zhí)行主菜單。
common.c:顯示主菜單。主菜單上顯示一系列操作,如加載二進(jìn)制文件、執(zhí)行應(yīng)用程序以及禁止寫保護(hù)(如果事先Flash被寫保護(hù))。
download.c:等待用戶選擇傳送文件操作,或者放棄操作以及一些提示信息,但真正實(shí)現(xiàn)傳送的是ymodem.c源文件。
ymodem.c:負(fù)責(zé)從超級終端接收數(shù)據(jù)(使用Ymodem協(xié)議),并將數(shù)據(jù)加載到內(nèi)部RAM中。如果接收數(shù)據(jù)正常,則將數(shù)據(jù)編程 到Flash中;如果發(fā)生錯誤,則提示出錯。
3.3 軟件實(shí)現(xiàn)
要實(shí)現(xiàn)IAP功能,還需做一些準(zhǔn)備工作:
①要準(zhǔn)備BIN類型的代碼文件。開發(fā)環(huán)境使用的是Keil,默認(rèn)情況下Keil生成HEX類型的編譯文件。利用Keil自帶的fromelf.exe工具,就可以生成二進(jìn)制文件。
②對超級終端進(jìn)行設(shè)置。IAP驅(qū)動中對USART1的設(shè)置為:波特率為115 200 kb/s,8位數(shù)據(jù)位,1位停止位,無校驗(yàn)位和硬件控制。超級終端也必須保持相同設(shè)置。
IAP驅(qū)動和應(yīng)用程序代碼需要分配在Flash的合適位置。圖6是2部分代碼在Flash中的存儲情況。由于IAP驅(qū)動代碼占用8 KB的空間,故而將Flash最初的8 KB劃出來,應(yīng)用程序是從0x08020000地址處開始存放的。這是通過在common.h頭文件中語句定義的:
#define ApplicationAddress 0x08020000
也可以定義在其他0x08020000地址后的任何位置,只要保證應(yīng)用程序大小不超過所用處理器Flash的容量。在platform_config.h頭文件中有定義Flash的語句:
#define PAGE_SIZE(0x400) //Flash頁大小為1 KB
#define FLASH_SIZE(0x20000)//Flash容量為128 KB
STM32F10x處理器有2種Flash頁的大小:1 KB和2 KB。通過以上語句即可定義頁大小。
在platform_config.h頭文件中還定義了進(jìn)入IAP功能選擇按鍵映射引腳:
IAP驅(qū)動在Keil中編譯、鏈接后,利用ARM公司的RealView ULINK2仿真器將生成的HEX文件燒寫到Flash中。此時Keil自帶的Flash燒寫工具要設(shè)置Flash的起始地址為0x08000000。在應(yīng)用程序中,定義向量表的函數(shù)NVIC_SetVectorTabl(NVIC_VectTab_FLASH,0x2000)中的第2個參數(shù),即Flash的偏移量一定要設(shè)置成0x2000或更大的數(shù)值。同時,F(xiàn)lash燒寫工具也要做相對應(yīng)的設(shè)置。將系統(tǒng)的串口與PC機(jī)串口相連,打開已經(jīng)設(shè)置好參數(shù)的超級終端。將BOOT0跳線為0,BOOT1為0或1都可以。按住IAP功能選擇按鍵,給系統(tǒng)上電。此時,在超級終端就會顯示IAP功能主界面,如圖7所示。
在鍵盤上按1選擇待載入二進(jìn)制文件,界面上會出現(xiàn)提示語。在“傳送”菜單中選擇傳送文件后,只需幾秒鐘可以將6 KB左右的文件燒寫到Flash。下載完后,在鍵盤上按2或復(fù)位就可以直接執(zhí)行應(yīng)用程序了,如圖8所示。雖然IAP功能使用的是USART1口,但進(jìn)入應(yīng)用程序后就可以正常使用USART1口。隨時可以通過復(fù)位后按住IAP功能選擇鍵來進(jìn)行IAP方式燒寫應(yīng)用程序。
結(jié) 語
STM32F10x處理器性能出眾,已被廣泛應(yīng)用于各種場合。其IAP功能給用戶帶來了極大方便,使得產(chǎn)品的固件更新快捷、簡單。本文闡述了IAP的基本原理,并詳細(xì)描述了如何在STM32F10x處理器平臺中實(shí)現(xiàn)IAP功能,并在所設(shè)計(jì)的系統(tǒng)中進(jìn)行了IAP實(shí)驗(yàn)。實(shí)驗(yàn)證明,該款處理器的IAP功能可靠、快捷。
歡迎光臨 (http://m.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
玖玖在线观看
|
中文字幕免费视频
|
久热中文字幕
|
精品欧美在线
|
国产一级视频在线观看
|
中文字幕一区二区三区视频
|
伊人久久av
|
成人激情在线观看
|
五月天毛片
|
亚洲无av在线中文字幕
|
日韩毛片免费看
|
亚洲天堂免费
|
特大黑人巨交吊性xxxx视频
|
黄色一级片黄色一级片
|
黄色av免费在线观看
|
一级片av
|
一级特黄视频
|
黄色av大全
|
九色网址
|
九九热在线视频观看
|
免费a在线观看
|
免费成人在线观看
|
亚洲免费二区
|
午夜你懂的
|
日韩精品免费观看
|
欧美精品亚洲精品
|
一级黄视频
|
怡红院在线播放
|
国产成年妇视频
|
午夜看片
|
av狠狠干
|
成人毛片在线播放
|
国产成人在线播放
|
在线观看国产小视频
|
波多野结衣视频在线播放
|
亚洲黄色一级
|
国产一级黄
|
亚洲国产精品久久久
|
日本免费毛片
|
欧美精品二区三区四区免费看视频
|
欧美色噜噜
|