版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、MDK 下的程序下載與調(diào)試溫州大學(xué)成林俞1、在開始軟件仿真之前,先檢查一下配置是不是正確,在IDE里面點(diǎn)擊,確定 Target 選項(xiàng)卡內(nèi)容如圖所示(主要檢查芯片型號(hào)和晶振頻率,其他的一般默認(rèn) 就可以)g r-krzjLEg r-krzjLE2、確認(rèn)了芯片以及外部晶振頻率(8.0Mhz )之后,基本上就確定了MDK3.80A軟件仿真的硬件環(huán)境了,接下來,我們再點(diǎn)擊Debug選項(xiàng)卡,設(shè)置為如圖所示:AS我們主要要確認(rèn)的是 Use Simulator 是否選擇(因?yàn)槿绻x擇右邊的 Use ,那 就是用ULINK進(jìn)行硬件Debug 了,這個(gè)將在下面介紹),其他的采用默認(rèn)的就可 以。確認(rèn)了這項(xiàng)之后,我們
2、便可以選擇 OK ,退出 Options for Target 對話框了。3、接下來,我們點(diǎn)擊(開始/停止仿真按鈕),開始仿真,出現(xiàn)如圖所示界面:kch In護(hù)rtwJt kch In護(hù)rtwJt f Iflj- hd IS xminA-.l lEMlh-. 1401nifcJuic rUuJ? AifcKJi-diA nr* f的i丄Cl l-Oj伯Lcl-ny皿讓口丄葉凸護(hù)Rlftif巴-問月3uGiigLT址jfjkH ;7血aJT.-T*ft 紐總:盅忙他占一啜忖網(wǎng)屆憂壬皿11u.arL_lalL鞏恥| J-: .圭 口 Fl Jhrt2RhlLlF | i)idJw 4 盤皿n可以發(fā)
3、現(xiàn),多出了一個(gè)工具條,這就是 Debug 工具條,這個(gè)工具條在我們仿 真的時(shí)候是非常有用的,下面簡單介紹一下Debug工具條相關(guān)按鈕的功能。Debug 工具條部分按鈕的功能如圖所示:iftain,ciftain,cl 8 delayMOB startup tirBiinA ID復(fù)位:其功能等同于硬件上按復(fù)位按鈕。相當(dāng)于實(shí)現(xiàn)了一次硬復(fù)位。按下該按 鈕之后,代碼會(huì)重新從頭開始執(zhí)行。執(zhí)行到斷點(diǎn)處:該按鈕用來快速執(zhí)行到斷點(diǎn)處,有時(shí)候你并不需要觀看每步是 怎么執(zhí)行的,而是想快速的執(zhí)行到程序的某個(gè)地方看結(jié)果,這個(gè)按鈕就可以實(shí)現(xiàn)這 樣的功能,前提是你在查看的地方設(shè)置了斷點(diǎn)。掛起:此按鈕在程序一直執(zhí)行的時(shí)候會(huì)
4、變?yōu)橛行?,通過按該按鈕,就可以使程 序停止下來,進(jìn)入到單步調(diào)試狀態(tài)。執(zhí)行進(jìn)去:該按鈕用來實(shí)現(xiàn)執(zhí)行到某個(gè)函數(shù)里面去的功能,在沒有函數(shù)的情況 下,是等同于執(zhí)行過去按鈕的。執(zhí)行過去:在碰到有函數(shù)的地方,通過該按鈕就可以單步執(zhí)行過這個(gè)函數(shù),而 不進(jìn)入這個(gè)函數(shù)單步執(zhí)行。執(zhí)行出去:該按鈕是在進(jìn)入了函數(shù)單步調(diào)試的時(shí)候,有時(shí)候你可能不必再執(zhí)行 該函數(shù)的剩余部分了,通過該按鈕就直接一步執(zhí)行完函數(shù)余下的部分,并跳出函 數(shù),回到函數(shù)被調(diào)用的位置。執(zhí)行到光標(biāo)處:該按鈕可以迅速的使程序運(yùn)行到光標(biāo)處,其實(shí)是挺像執(zhí)行到斷 點(diǎn)處按鈕功能,但是兩者是有區(qū)別的,斷點(diǎn)可以有多個(gè),但是光標(biāo)所在處只有一 個(gè)。匯編窗口:通過該按鈕,就可
5、以查看匯編代碼,這對分析程序很有用。觀看變量/堆棧窗口:該按鈕按下,會(huì)彈出一個(gè)顯示變量的窗口,在里面可以 查看各種你想要看的變量值,也是很常用的一個(gè)調(diào)試窗口。串口打印窗口:該按鈕按下,會(huì)彈出一個(gè)類似串口調(diào)試助手界面的窗口,用來 顯示從串口打印出來的內(nèi)容。內(nèi)存查看窗口:該按鈕按下,會(huì)彈出一個(gè)內(nèi)存查看窗口,可以在里面輸入你要 查看的內(nèi)存地址,然后觀察這一片內(nèi)存的變化情況。是很常用的一個(gè)調(diào)試窗口 性能分析窗口:按下該按鈕,會(huì)彈出一個(gè)觀看各個(gè)函數(shù)執(zhí)行時(shí)間和所占百分比 的窗口,用來分析函數(shù)的性能是比較有用的。邏輯分析窗口:按下該按鈕會(huì)彈出一個(gè)邏輯分析窗口,通過 SETUP 按鈕新建 一些IO 口,就可以
6、觀察這些10 口的電平變化情況,以多種形式顯示出來,比較 直觀。Debug 工具條上的其他幾個(gè)按鈕用的比較少,我們這里就不介紹了。以上介紹 的是比較常用的,當(dāng)然也不是每次都用得著這么多,具體看你程序調(diào)試的時(shí)候有沒 有必要觀看這些東西,來決定要不要看。這樣,我們在上面的仿真界面里面選內(nèi)存查看窗口、串口打印窗口。然后調(diào)節(jié) 一下這兩個(gè)窗口的位置,如圖所示:JLliJEZQ氈嗣1ZLt3JuwM巧WUEUlUriHJiaJLliJEZQ氈嗣1ZLt3JuwM巧WUEUlUriHJia2MirK:GhMhiIwU24n如Sri14LiJdHWWiF dFjJiJuAc 18撫U *1?疇- WFlrrr
7、! 3 =US hKO.lEl.!iBS h-iziiAlOSJJS atai:T:u.,&_!3GZZtIDtiiS 151 PS kbia.lELi JOU5 ciiE補(bǔ) ar J-AiSIiJN址c Ht inli L1| *!, CwTWTKjnJ 人 FdW|丄 _g Irdn peE kL= F-mJ 3 出* 直g撫壁 Hupa a 尿iP僮狀血總畫Ej囲#雪西 fi 也異匸蘭口匕*噺期辺#肌託| ” i 打即I 1丁 ::.vhilf 11Pt LRTt ; I:. t; JdElD-p_E0 C 00: 3我們把光標(biāo)放到main.c的09行的空白處,然后雙擊鼠標(biāo)左鍵,可以看到
8、在09 行的左邊出現(xiàn)了一個(gè)紅框,即表示設(shè)置了一個(gè)斷點(diǎn)(也可以通過鼠標(biāo)右鍵彈出菜單 來加入),再次雙擊則取消)。然后我們點(diǎn)擊,執(zhí)行到該斷點(diǎn)處,如圖所示:J!BD :At RZQi- 也齬Cs Qi rUL-IQ曲.IhM J!BD :At RZQi- 也齬Cs Qi rUL-IQ曲.IhM “囚 UiU?.DifO 加峠UbM?.R1nmEU.2.dLjSJJCiijrinilai:.ClHiJlUi -deITJTCCyqil 羽電 aL xy,i | ; rwiFt t ri i t In:扁疇驚謝碁:逝挺師鈕.ir- REUri 3*un-K我們現(xiàn)在先不忙著往下執(zhí)行,點(diǎn)擊菜單欄的 Peri
9、pherals-USARTs-USART1??梢钥吹?,有很多外設(shè)可以查看,這里我們查看的是串口1的情況。如圖所示:HDtktD.HLnimnrHDtktD.HLnimnrD i l4.亞1nFnEU.GL=CJOdS頓科尿較*B此中分弗z何桂疔蛛畫娜.=F:S vak fa 譽(yù)卄械”也E*lnua 01 1單擊USART1后會(huì)在IDE之外出現(xiàn)一個(gè)如圖所示的界面:圖 3.4.8 ( a )是 STM32 的串口 1 的默認(rèn)設(shè)置狀態(tài),從中可以看到所有與串口 相關(guān)的寄存器全部在這上面表示出來了,而且有當(dāng)前串口的波特率等信息的顯示 我們接著單擊一下,執(zhí)行完串口初始化函數(shù),得到了如圖所示的串口信息。-C
10、ontrolIIS4RT1jCR1jCT:l:l:USA.RT1_CR2:|CxC2CCSTOP bits: 1USART1_CR3:|Dxr廠 CTSIE廠 CTE廠 -ControlIIS4RT1jCR1jCT:l:l:USA.RT1_CR2:|CxC2CCSTOP bits: 1USART1_CR3:|Dxr廠 CTSIE廠 CTE廠 NACK廠 HDSEL廠UE r PS r RXNEIE 廠RWU 廠 LINEN 廠 LBCL 廠 RTE r IRLF廠廠廠廠廠廠廠廠FEE IDLEIE SBK CLKEN LBDIE DNI AT IREN廠廠廠廠廠廠廠廠廠廠廠 CPHAr CEN
11、StatueU5ART13R: l(MBCD廠 的呂廠 |_BDR TXEp TC廠RXNE 廠IDLE廠ORE廠ME廠FE廠PEBaud Rareusarti_brr:|mo DIV_M:|(MMMDIV_F:|(MGuard Time 3 PrescalerDstaUSART1_GTPR:GT:|(MMUART1_DR: |(MM)00PSC: a-Settings: dock Disabled, INVALID baud, Disabled pins: IX1 Start Bit, B Data bits l.DStap Bits, No Paity大家可以對比一下這兩個(gè)圖的區(qū)別,就知道在uart_init(9600;這個(gè)函數(shù)里面大 概執(zhí)行了哪些操作。通過圖(b),我們可以查看串口 1的各個(gè)寄存器設(shè)置狀態(tài),從而判斷我們寫 的代碼是否有問 題,只有這里的設(shè)置正確了之后,才有可能在硬件上正確的執(zhí) 行。同樣這樣的方法也可以適 用于很多其他外設(shè),這個(gè)讀者慢慢體會(huì)吧!這一方 法不論是在排錯(cuò)還是在編寫代碼的時(shí)候, 都是非常
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《chap會(huì)計(jì)憑證》課件
- 《服裝行業(yè)櫥窗展示》課件
- 《建設(shè)項(xiàng)目質(zhì)量管理》課件
- 2024-2025學(xué)年天津市第三中學(xué)高三上學(xué)期10月月考?xì)v史試題(解析版)
- 單位管理制度集合大全【員工管理】十篇
- 單位管理制度集粹選集【人員管理】十篇
- 《中國心力衰竭診斷和治療指南(2024)》解讀完整版
- 單位管理制度匯編大全【職工管理】
- 單位管理制度合并選集職員管理
- 《電阻的串聯(lián)和并聯(lián)》課件
- 醫(yī)院感染質(zhì)量控制中心工作總結(jié)和計(jì)劃課件
- 第二章-地方理論-《旅游目的地管理》課件
- 河北省唐山市藥品零售藥店企業(yè)藥房名單目錄
- 監(jiān)考要求、操作流程及指導(dǎo)語
- 水上運(yùn)輸大型構(gòu)件安全交底
- 《保障農(nóng)民工工資支付條例》口袋書課件
- 2020 新ACLS-PCSA課前自我測試-翻譯版玉二醫(yī)【復(fù)制】附有答案
- 危險(xiǎn)化學(xué)品安全周知卡氧氣
- DB13∕T 5517-2022 大田作物病蟲草害防控關(guān)鍵期植保無人飛機(jī)作業(yè)技術(shù)規(guī)程
- 《編譯原理》考試試習(xí)題及答案(匯總)
- 贏在執(zhí)行力:團(tuán)隊(duì)執(zhí)行力-下
評論
0/150
提交評論