freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于stm32數(shù)碼相框系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)軟件畢業(yè)論文-資料下載頁

2025-07-27 05:35本頁面
  

【正文】 很多硬件相關(guān)的寄存器,通過觀察這些寄存器,你可以知道代碼是不是真正有效。另外一個(gè)優(yōu)點(diǎn)是不必頻繁的刷機(jī),從而延長(zhǎng)了 STM32 的 FLASH 壽命。當(dāng)然,軟件仿真不是萬能的,很多問題還是要到在線調(diào)試才能發(fā)現(xiàn)。接下來我們開始進(jìn)行軟件仿真。在軟件仿真之前,先檢查一下配置是不是正確,點(diǎn)擊 ,確定 Target 選項(xiàng)卡內(nèi)容如下所示(主要檢查芯片型號(hào)和晶振頻率,其他的一般默認(rèn)就可以):圖 315 Target 選項(xiàng)卡確認(rèn)了芯片以及外部晶振頻率( M)之后,基本上就確定了硬件環(huán)境了,接下來,我們?cè)倏?Debug 選項(xiàng)卡,設(shè)置為如下圖所示的設(shè)置: 圖 316 Debug 選項(xiàng)卡主要確認(rèn)是 Use Simulator 是否選擇(因?yàn)槿绻x擇右邊的 Use,那就是用 ULINK 進(jìn)行硬件Debug 了,這個(gè)將在下面介紹),其他的采用默認(rèn)的就可以。確認(rèn)了這項(xiàng)之后,我們便可以選擇OK,退出 Options for Target 對(duì)話框了。接下來,我們點(diǎn)擊 (開始/停止仿真按鈕),開始仿真,出現(xiàn)如下界面:圖 317 開始仿真可以發(fā)現(xiàn),多出了一個(gè)工具條,這個(gè)工具條對(duì)于我們仿真是非常有用的,下面簡(jiǎn)單介紹一下工具條相關(guān)按鈕的功能,工具條部分按鈕的功能如下圖所示圖 318 仿真工具條復(fù)位:其功能等同于硬件上按復(fù)位按鈕。相當(dāng)于實(shí)現(xiàn)了一次硬復(fù)位。代碼重新執(zhí)行。執(zhí)行到斷點(diǎn)處:該按鈕用來快速執(zhí)行到斷點(diǎn)處,有時(shí)候你并不需要觀看每步是怎么執(zhí)行的,而是想快速的執(zhí)行到程序的某個(gè)地方看結(jié)果,這個(gè)按鈕就可以實(shí)現(xiàn)這樣的功能。掛起:此按鈕在程序一直執(zhí)行的時(shí)候會(huì)變?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è)。匯編窗口:通過該按鈕,就可以查看匯編代碼,這對(duì)分析程序很有用。觀看變量/堆棧窗口:該按鈕按下,會(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 按鈕新建一些 I/O 口,就可以觀察這些 I/O 口的電平變化情況,以多種形式顯示出來,比較直觀。其他幾個(gè)按鈕用的比較少,以上是比較常用的,當(dāng)然也不是每次都用得著這么多,具體看你程序調(diào)試的時(shí)候有沒有必要觀看這些東西來決定要不要看。這樣,我們?cè)谏厦娴姆抡娼缑胬锩孢x內(nèi)存查看窗口、串口打印窗口。然后調(diào)節(jié)一下這兩個(gè)窗口的位置,如下圖所示:圖 319 調(diào)出仿真串口打印窗口我們把光標(biāo)放到 的 09 行,然后雙擊鼠標(biāo)左鍵,可以看到在 09 行的右邊出現(xiàn)了一個(gè)紅框,即表示設(shè)置了一個(gè)斷點(diǎn)(也可以通過鼠標(biāo)右鍵彈出菜單來加入,再次雙擊則取消)。然后我們點(diǎn)擊,執(zhí)行到斷點(diǎn)處,如下圖所示:圖 320 執(zhí)行到斷點(diǎn)處我們不忙著往下執(zhí)行,現(xiàn)在來點(diǎn)擊菜單欄的 PeripheralsUSARTsUSART1??梢钥吹剑泻芏嗤庠O(shè)可以查看,這里我們查看的是串口 1 的情況。如下圖所示圖 321 查看串口 1 相關(guān)寄存器單擊 USART1 后會(huì)在 IDE 之外出現(xiàn)一個(gè)如下界面: 圖 322 串口 1 各寄存器初始化前后對(duì)比左邊這個(gè)就是 STM32 默認(rèn)時(shí)候,串口 1 的狀態(tài),從中可以看到所有與串口相關(guān)的寄存器全部在這上面表示出來了,而且有當(dāng)前串口的波特率等信息的顯示。我們接著單擊一下 ,執(zhí)行完串口初始化函數(shù),得到了如上面右邊圖片所示的串口信息。你可以對(duì)比一下這兩個(gè)的區(qū)別,就知道在uart_init(72,9600)。這個(gè)函數(shù)里面大概執(zhí)行了哪些操作。這樣可以很清楚的告訴你,當(dāng)前的串口是否可用,你的設(shè)置是否正確,同樣這樣的方法也可以適用于很多其他外設(shè)。然后我們繼續(xù)單擊 按鈕,一步步執(zhí)行,最后就會(huì)看到在 USART 1 中打印出相關(guān)的信息,如下圖所示:圖 323 串口 1 輸出信息這樣證明我們的仿真是通過的,代碼運(yùn)行會(huì)在串口 1 不停的輸出 t 的值,每 執(zhí)行一次(時(shí)間可以通過 IDE 的最下面觀看到),并且 t 自增。與我們預(yù)期的目地是一致的。再次按下結(jié)束仿真。至此,我們軟件仿真算是結(jié)束了,接下來我們下載代碼到硬件上來真正驗(yàn)證一下我們的代碼是否可行。 在線調(diào)試?yán)么冢覀冎荒芟螺d程序,并不能實(shí)時(shí)跟蹤,而利用調(diào)試工具,比如 JLINK、ULINK 等就可以實(shí)時(shí)跟蹤程序,使你的開發(fā)事半功倍。這里我們以 JLINK V8 為例,說說如何在線調(diào)試。 Jlink 簡(jiǎn)介JLink 是 SEGGER 公司為支持仿真 ARM 內(nèi)核芯片推出的 JTAG 仿真器。配合 IAR EWAR,ADS,KEIL,WINARM,Real View 等集成開發(fā)環(huán)境支持所有 ARM7/ARM9/ARM11 內(nèi)核芯片的仿真,通過 RDI 接口和各集成開發(fā)環(huán)境無縫連接,操作方便、連接方便、簡(jiǎn)單易學(xué),是學(xué)習(xí)開發(fā) ARM最好最實(shí)用的開發(fā)工具。JLINK 仿真器 V8 版,其仿真速度和功能遠(yuǎn)非簡(jiǎn)易的并口 WIGGLER 調(diào)試器可比。JLINK 支持ARMARMARM1CortexM3 核心,支持 ADS、IAR、KEIL 開發(fā)環(huán)境。 版本除擁有上一版本 的全部功能外,軟硬件上都有改進(jìn):(1) 版的 SWD 硬件接口支持 的目標(biāo)板, 只能支持 的目標(biāo)板。(2) 使用雙色 LED 可以指示更多的工作狀態(tài), 只有 1 個(gè)LED 指示燈。(3) 增強(qiáng)了 JTAG 驅(qū)動(dòng)能力,提高了目標(biāo)板的兼容性。(4)優(yōu)化了固件結(jié)構(gòu),使應(yīng)用程序區(qū)擴(kuò)大。JLink ARM 主要特點(diǎn):   IAR EWARM 集成開發(fā)環(huán)境無縫連接的 JTAG 仿真器。   支持所有 ARM7/ARM9 內(nèi)核的芯片,以及 CortexM3,包括 Thumb 模式。 支持 ADS,IAR,KEIL,WINARM,REALVIEW 等幾乎所有的開發(fā)環(huán)境。   下載速度高達(dá) ARM7:600kB/s,ARM9:550kB/s,通過 DCC 最高可達(dá) 800 KB/s。最高 JTAG 速度 12MHz。 目標(biāo)板電壓范圍 –,5V 兼容。  自動(dòng)速度識(shí)別功能。  監(jiān)測(cè)所有 JTAG 信號(hào)和目標(biāo)板電壓。完全即插即用。使用 USB 電源(但不對(duì)目標(biāo)板供電)帶 USB 連接線和 20 芯扁平電纜。支持多 JTAG 器件串行連接。標(biāo)準(zhǔn) 20 芯 JTAG 仿真插頭。選配 14 芯 JTAG 仿真插頭。選配用于 5V 目標(biāo)板的適配器。帶 JLink TCP/IP server,允許通過 TCP/ IP 網(wǎng)絡(luò)使用 JLink。 Jlink 調(diào)試步驟JLINKV8 支持 JTAG 和 SWD,而 STM32 也支持 JTAG 和 SWD。所以,我們有 2 種方式可以用來調(diào)試,JTAG 調(diào)試的時(shí)候,占用的 I/O 線比較多,而 SWD 調(diào)試的時(shí)候占用的 I/O 線很少,只需要 2 跟即可。在安裝了 JLINK V8 之后,我們接上 JLINKV8,并把 JTAG 口插到硬件板上,打開之前新建的工程,點(diǎn)擊 ,打開 Options for Target 選項(xiàng)卡,在 Debug 欄選擇仿真工具為 CortexM3 JLINK,如下圖所示圖 324 Debug 選項(xiàng)卡設(shè)置然后我們點(diǎn)擊 Settings,設(shè)置 JLINK 的一些參數(shù),如下圖所示:圖 325 JLINK 模式設(shè)置上圖中,我們使用 JLINK V8 的 SW 模式調(diào)試,因?yàn)槲覀?JTAG 需要占用比 SW 模式多很多的I/O 口,而在硬件板上這些 I/O 口都是非常有用的,并造成部分外設(shè)無法使用。所以建議大家在調(diào)試的時(shí)候,一定要選擇 SW 模式。Max Clock,可以點(diǎn)擊 Auto Clk 來自動(dòng)設(shè)置,這里設(shè)置 JLINK 的調(diào)試速度為 10MHZ,如果 USB 數(shù)據(jù)線比較差,那么可能會(huì)出問題,此時(shí),可以通過降低這里的速率來試試。單擊 OK,完成此部分設(shè)置,接下來我們還需要在 Utilities 選項(xiàng)卡里面設(shè)置下載時(shí)的目標(biāo)編程器,如下圖所示:圖 326 FLASH 編程器選擇上圖中,我們選擇 JLINK 來調(diào)試 CortexM3,然后點(diǎn)擊 Settings,設(shè)置如下圖所示:圖 327 編程設(shè)置這里要根據(jù)不同的 MCU 選擇 FLASH 的大小,因?yàn)槲覀冮_發(fā)板使用的是 STM32F103RBT6,其FLASH 大小為 128K,所以我們?cè)?Programming Algorithm 里面選擇 128K 型號(hào)的 STM32。然后選中Reset and Run,以實(shí)現(xiàn)在編程后自動(dòng)啟動(dòng)。其他默認(rèn)設(shè)置即可。在設(shè)置完之后,點(diǎn)擊 OK,然后再點(diǎn)擊 OK,回到 IDE 界面,編譯一下工程。再點(diǎn)擊 ,開始仿真(如果開發(fā)板的代碼沒被更新過,則會(huì)先更新代碼,再仿真,你也可以通過按 ,只下載代碼,而不進(jìn)入仿真,特別注意:開發(fā)板上的 B0 要設(shè)置到 GND,否則代碼下載后不會(huì)自動(dòng)運(yùn)行的?。?,如下圖所示:圖 328 開始仿真可以看到都是一些匯編碼的查看,如果我們要快速運(yùn)行到 main 函數(shù),可以在 main 函數(shù)的第一句語句處放入斷點(diǎn),然后點(diǎn)擊 ,來快速執(zhí)行到該處。如下圖所示:圖 329 程序運(yùn)行到斷點(diǎn)處接下來,我們就可以和軟件仿真一樣的開始仿真了,不過這是真正的在硬件上的仿真,其結(jié)果更可信。 程序下載STM32 的程序下載有多種方法:USB、串口、JTAG、SWD 等,這幾種方式都可以用來給 STM32 下載代碼。不過,我們最常用的,最經(jīng)濟(jì)的,就是通過串口給 STM32 下載代碼。ST
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1