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

正文內(nèi)容

基于stm32數(shù)碼相框系統(tǒng)設(shè)計與實現(xiàn)軟件論文(參考版)

2024-11-21 21:46本頁面
  

【正文】 Max Clock,可以點擊 Auto Clk來自動設(shè)置,這里設(shè)置 JLINK的調(diào)試速度為 10MHZ,如果 USB數(shù)據(jù)線比較差,那么可能會出問題,此時,可以通過降低這里的速率來試試。 在安裝了 JLINK V8之后,我們接上 JLINKV8,并把 JTAG口插到 硬件板 上,打開之前新建的工程,點擊 ,打開 Options for Target選項卡,在 Debug欄選擇仿真工具為 CortexM3 JLINK,如下圖所示 圖 324 Debug 選項卡設(shè)置 然后 我們點擊 Settings,設(shè)置 JLINK的一些參數(shù),如下圖所示: 圖 325 JLINK 模式設(shè)置 上圖中,我們使用 JLINK V8的 SW模式調(diào)試,因為我們 JTAG需要占用比 SW模式多很多的 I/O口,而在 硬件 板上這些 I/O 口都是非常有用的,并造成部分外設(shè)無法使用。 Jlink調(diào)試步驟 JLINKV8 支持 JTAG 和 SWD,而 STM32也支持 JTAG和 SWD。 選配用于 5V目標(biāo)板的適配器。 標(biāo)準 20芯 JTAG仿真插頭。 使用 USB電源(但不對目標(biāo)板供電) 帶 USB連接線和 20芯扁平電纜。 監(jiān)測所有 JTAG信號和目標(biāo)板電壓。 目標(biāo)板電壓范圍 – ,5V兼容。 下載速度高達 ARM7:600kB/s, ARM9:550kB/s,通過 DCC最高可達 800 KB/s。 支持所有 ARM7/ARM9內(nèi)核的芯片,以及 CortexM3,包括 Thumb模式。( 4)優(yōu)化了固件結(jié)構(gòu),使應(yīng)用程序區(qū)擴大。( 2) LED可以指示更多的工作狀態(tài), 1個 LED指示燈。 JLINK支持 ARMARM ARM1 CortexM3核心,支持 ADS、 IAR、 KEIL開發(fā)環(huán)境。配合 IAR EWAR, ADS, KEIL,WINARM, Real View 等集成開發(fā)環(huán)境支持所有 ARM7/ARM9/ARM11 內(nèi)核芯片的仿真,通過 RDI 接口和各集成開發(fā)環(huán)境無縫連接,操作方便、連接方便、簡單易學(xué),是學(xué)習(xí)開發(fā) ARM 最好最實用的開發(fā)工具。這里我們以 JLINK V8為例,說說如何在線調(diào)試。至此,我們軟件仿真算是結(jié)束了,接下來我們下載代碼到硬件上來真正驗證一下我們的代碼是否可行。與我們預(yù)期的目地是一致的。這樣可以很清楚的告訴你,當(dāng)前的串口是否可用,你的設(shè)置是否正確,同樣這樣的方法也可以適用于很多其 他外設(shè)。你可以對比一下這兩個的區(qū)別,就知道在uart_init(72, 9600)。如下圖所示 圖 321 查看串口 1 相關(guān)寄存器 單擊 USART1后會 在 IDE之外出現(xiàn)一個如下界面 : 圖 322 串口 1 各寄存器初始化前后對比 左邊這個就是 STM32 默認時候,串口 1的狀態(tài),從中可以看到所有與串口相關(guān)的寄存器全部在這上面表示出來了,而且有當(dāng)前串口的波特率等信息的顯示。然后我們點擊,執(zhí)行到斷點處,如下圖所示: 圖 320 執(zhí)行到斷點處 我們不忙著往下執(zhí)行,現(xiàn)在來點擊菜單欄的 PeripheralsUSARTsUSART1。 這樣,我們在上面的仿真界面里面選內(nèi)存查看窗口、串口打印窗口。 邏輯分析窗口:按下該按鈕會彈出一個邏輯分析窗口,通過 SETUP 按鈕新建一些 I/O 口,就可以觀察這些 I/O 口的電平變化情況,以多種形式顯示出來,比較直觀。 串口打印窗口:該按鈕按下,會彈出一個串口調(diào)試助手界面的窗口,用來顯示從串口打印出來的內(nèi)容。 匯編窗口:通過該按鈕,就可以查看匯編代碼,這對分析程序很有用。 執(zhí)行出去:該按鈕是在進入了函數(shù)單步調(diào)試的時候,有時候你可能不必再執(zhí)行該函數(shù)的剩余部分了,通過該按鈕就直接一步執(zhí)行完函數(shù)余下的部分,并跳出函數(shù),回到函數(shù)被調(diào)用的位置。 執(zhí)行進去:該按鈕用來實現(xiàn)執(zhí)行到某個函數(shù)里面去的功能,在沒有函數(shù)的情況下,是等同于執(zhí)行過去按鈕的。 執(zhí)行 到斷點處:該按鈕用來快速執(zhí)行到斷點處,有時候你并不需要觀看每步是怎么執(zhí)行的,而是想快速的執(zhí)行到程序的某個地方看結(jié)果,這個按鈕就可以實現(xiàn)這 樣的功能。相當(dāng)于實現(xiàn)了一次硬復(fù)位。確認了這項之后,我們便可以選擇 OK,退出Options for Target 對話框了。接下來我們開始進行軟件仿真。另外一個優(yōu)點是不必頻繁的刷機,從而延長了 STM32的 FLASH 壽命。 圖 313 頭文件包含路徑設(shè)置 點擊 OK確認,回到 IDE,此時再點擊 按鈕,再編譯一次,發(fā)現(xiàn)沒錯誤了,得到如下界面 : 圖 314 再次編譯結(jié)果 至此,一個完整的 STM32開發(fā)工程在 MDK下建立了, 接下來我們就是進行軟件仿真了。現(xiàn)在我們點擊 ( Options for Target 按鈕),彈出 Options for Target’ Target 1’對話框,選擇C/C++選項卡,如下圖所示 : 圖 312 加入頭文件包含路徑 在 Include Paths處,點擊 2處的按鈕。雙擊紅圈內(nèi)的內(nèi)容,你會發(fā)現(xiàn)在 的 01行出現(xiàn)了一個淺綠色的小箭頭,說明錯誤是這個地方產(chǎn)生的。 } } 點擊 (部分編譯按鈕)編譯一下,會在 Output Windows信息欄中發(fā)現(xiàn)如下報錯信息 :(1): error: 5:can not open source input file : No such file or directory。 delay_ms(500)。 //延時初始化 uart_init(72, 9600)。 Stm32_Clock_Init(9)。 如下圖所示 : 圖 38 在編輯狀態(tài)下的體現(xiàn) 接著,我們新建一個 ,并保存在 USER目錄下 , 然后雙擊 USER組,會彈出加載文件的對話框,此時我們在 USER目錄下選擇 ,加入到 USER組下 。 此時 USER組下還是沒有任何文件的,得到如下圖所示的界面 : 圖 37 修改結(jié)果 點擊 OK,退出該界面返回 IDE。之后, TEST文件夾下的文件如圖 34所示 : 圖 34 TEST 文件夾最終摸樣 然后我 們在 USER 文件夾下面找到 ,打開它 , 然后在 Target 目錄樹上右鍵 Manage Components。到這里,我們就可以開始編寫自己的代碼了。如圖 33所示 : 圖 33 提示界面 啟動代碼是一段和硬件相關(guān)的匯編代碼 , 是必不可少的 !這段代碼的具體作用如下:①堆棧的初始化;②向量表定義;③地址重映射及中 斷向量表的轉(zhuǎn)移;④設(shè)置系統(tǒng)時鐘頻率;⑤中斷寄存器的初始化。 新建 RVMDK 工程 首先,打開 MDK(以下簡稱 RVMDK 為 MDK)軟件 , 再點擊 ProjectNew uVision Project菜單項,則彈出如圖 31所示界面 : 圖 31 保存工程界面 新建一個文件夾 TEST,然后把工程名字設(shè)為 test, 點擊“保存”按 鈕,彈出選擇器件的對話框,因為我們的開發(fā)板使用的是 STM32F103RBT6,所以在這里我們選擇 STMicroelectronics下面的STM32F103RB(如果使用的是其他系列的芯片,選擇相應(yīng)的型號就可以了 )。另外,國內(nèi)大多數(shù)單片機工程師都接觸和使用過 KEIL,相信大家都知道 KEIL的使用是非常簡單的,而且很容易入手。 現(xiàn)在 RealView的最新版本是 , RVMDK對 IDE界面進行了很大改變,并且支持 CortexM0內(nèi)核的處理器。與 ARM之前的工具包 , RealView編譯器具有代碼更小、性能更高的優(yōu)點。Vision3集成開發(fā)環(huán)境與 RealView編譯器。 SD 卡讀取數(shù)據(jù),這里通過 CMD17來實現(xiàn),具體過程如下 : 發(fā)送 CMD17; 接收卡響應(yīng) R1; 接收數(shù)據(jù)起始令牌 0XFE; 接收數(shù)據(jù); 接收 2 個字節(jié)的 CRC,如果沒有開啟 CRC,這兩個字節(jié)在讀取后可以丟掉 ; 8CLK 之后禁止片選; 以上就是一個典型的讀取 SD 卡數(shù)據(jù)過程, SD 卡的寫與讀數(shù)據(jù)差不多,寫數(shù)據(jù)通過 CMD24 來實現(xiàn),具體過程如下: 發(fā)送 CMD24; 接收卡響應(yīng) R1; 發(fā)送寫數(shù)據(jù)起始令牌 0XFE; 發(fā)送數(shù)據(jù); 發(fā)送 2字節(jié)的偽 CRC; 8CLK之后禁止片選; 第三章 編程環(huán)境介紹 簡介 RVMDK源自德國的 KEIL公司,是 RealView MDK的簡稱,在全球 RVMDK被超過 10萬的嵌入式開發(fā)工程師使用。 SPI模式下幾個重要的操作命令,如下表所示: 表 SPI 模式下 SD 卡部分操作指令 其中 R1 的回應(yīng)格式如下表所示: 表 SD 卡 R1 回應(yīng)格式 SD卡的典型初始化過程如下: 初始化與 SD卡連接的硬件條件( MCU的 SPI配置, I/O口配置); 上電延時( 74個 CLK); 復(fù)位卡( CMD0); 激活卡,內(nèi)部初始化并獲取卡類型( CMD1(用于 MMC卡)、 CMD5 CMD41); 查詢 OCR,獲取供電狀況( CMD58); 是否使用 CRC( CMD59); 設(shè)置讀寫塊數(shù)據(jù)長度( CMD16); 讀取 CSD,獲取存儲卡的其他信息( CMD9); 發(fā)送 8CLK后,禁止片選; 這樣我們就完成了對 SD卡的初始化,這里面我們一般設(shè)置讀寫塊數(shù)據(jù)長度為 512個字節(jié),并禁止使用 CRC。不過在發(fā)送 CMD0 之前,要發(fā)送 74 個時鐘,這是因為 SD 卡內(nèi)部有個供電電壓上升時間,大概為 64 個 CLK,剩下的 10個 CLK用于 SD卡同步 ,之后才能開始 CMD0的操作,在卡初始化的時候, CLK時鐘最大不能超過 400KHZ。在 SPI 模式下, CS/MOSI/MISO/CLK都需要加 10~100K左右的上拉電阻。 SPI模式允許簡單的通過 SPI接口來和 SD卡通信,這種模式同 SD卡模式相比就是喪失了速度。 SD卡一般支持兩種操作模式: SD卡模式與 SPI模式。
點擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1