1. 程式人生 > >3、搭建MDK集成開發環境

3、搭建MDK集成開發環境

調試 href 組件 工業 link itl 內核 ola 幫助

實驗二 ARM開發工具MDK集成開發環境的熟悉

一、實驗目的:

1、 掌握MDK建立工程、設置工程的方法;

2、 掌握MDK編譯工程、鏈接工程的方法;

3、 掌握MDK仿真調試的方法;

二、實驗內容

新建一個工程,將實驗原理中控制LED閃爍的程序拷貝到工程源文件,正確設置工程屬性,編譯無誤後燒寫到開發板觀察現象。

三、實驗原理:

Keil公司(該公司已被ARM公司收購!!)開發的ARM開發工具MDKMicrocontroller Development Kit),是用來開發基於ARM核的系列微控制器的嵌入式應用程序。它適合不同層次的開發者使用,包括專業的應用程序開發工程師和嵌入式軟件開發的入門者。MDK

包含了工業標準的Keil C編譯器、宏匯編器、調試器、實時內核等組件,支持所有基於ARM的設備,能幫助工程師按照計劃完成項目。

註意:下面源代碼盡量嘗試理解,後續課程會詳細講解,本次實驗課的重點不是GPIO工作原理和編程語法,重點在MDK開發環境的熟悉!!

源文件startup.s內容:

PRESERVE8

THUMB

AREA RESET, DATA, READONLY

EXPORT __Vectors

__Vectors

DCD 0x20002000 ; Top of Stack

DCD Reset_Handler ; Reset Handler

AREA |.text|, CODE, READONLY

EXPORT Reset_Handler

Reset_Handler

IMPORT led

LDR R0, =led

BX R0

ALIGN

END

源文件led.c內容:

#define GPIOF_MODER (*(volatile unsigned int *)0x40021400)

#define GPIOF_OTYPER (*(volatile unsigned int *)0x40021404)

#define GPIOF_OSPEEDR (*(volatile unsigned int *)0x40021408)

#define GPIOF_PUPDR (*(volatile unsigned int *)0x4002140C)

#define GPIOF_ODR (*(volatile unsigned int *)0x40021414)

#define RCC_AHB1ENR (*(volatile unsigned int *)0x40023830)

void Delay(unsigned int nCount)

{

for(; nCount != 0; nCount--);

}

int led(void)

{

RCC_AHB1ENR |= 0x20;

GPIOF_MODER &= (~(0x3<<20));

GPIOF_MODER |= (0x1<<20);

GPIOF_OTYPER &= (~(0x1<<10));

GPIOF_OSPEEDR &= (~(0x3<<20));

GPIOF_OSPEEDR |= (0x2<<20);

GPIOF_PUPDR &= (~(0x3<<20));

while (1)

{

GPIOF_ODR |= (0x1<<10);

Delay(0xFFFFF);

GPIOF_ODR &= (~(0x1<<10));

Delay(0xFFFFF);

}

}

本實驗的電路圖如下:

技術分享圖片

三、實驗步驟:

1、 啟動MDK:

技術分享圖片

2、 建立工程:

技術分享圖片

技術分享圖片

新建文件夾並命名為led:

技術分享圖片

雙擊led進入led目錄:

技術分享圖片技術分享圖片

單擊保存,我們彈出如下對話框,並選中STMicroelectronics->STM32F439IG:

技術分享圖片

技術分享圖片

單擊ok,彈出如下對話框:

技術分享圖片

單擊“否”按鈕,到此一個空的工程建立完畢,如果此時沒有建立工程視圖窗口,則可通過如下操作調出工程視圖窗口:

技術分享圖片

技術分享圖片

3、 設置工程:

Target1上單擊右鍵

技術分享圖片

技術分享圖片

單擊linker選項卡,並照下圖設置鏈接起始地址:

思考:為什麽如此的設置鏈接起始地址?

技術分享圖片

點擊Debug標簽

技術分享圖片

點擊Settings

技術分享圖片

點擊Flash DowloadàAdd

技術分享圖片

技術分享圖片

單擊OKàOK

技術分享圖片

單擊OK,工程設置完畢

4、 建立文件並將文件添加到工程:

技術分享圖片

技術分享圖片

這個時候不要急著輸入代碼,先保存文件:

技術分享圖片

技術分享圖片

保存,這個時候還不要輸入代碼,將文件添加到工程:

SourceGroup1上單擊右鍵

技術分享圖片

技術分享圖片

選中led.c,再點擊add,最後close按鈕;

同樣方法新建startup.s並添加到SourceGroup1

技術分享圖片

5、 將上面的源代碼,拷貝到對應的源文件中,保存。

6、 編譯、鏈接:

技術分享圖片

技術分享圖片

7、 燒寫程序到開發板,片內flash

技術分享圖片

8、 啟動調試:

技術分享圖片

監控我們程序中所操作的GPIOF端口:

技術分享圖片

技術分享圖片

單擊行號前面空白處,設置斷點

技術分享圖片

點擊下圖RUN按鈕,或按鍵盤F5運行到斷點處

技術分享圖片

F10或F11單步運行,同時觀察GPIOF監控窗口中的變化,並觀察LED燈的亮滅!

總結:

建立工程、設置工程、建立文件、把文件添加到工程,設置斷點單步調試!




來自為知筆記(Wiz)

3、搭建MDK集成開發環境