之前也寫了 篇類似的文章:使用Keil MDK for ARM來開發KEA並配有LED閃爍的例程
硬件準備
- MCU:KEAZN64, 64 Pins(其它的MCU也是類似)
- 仿真器: J-Link
也有許多同學問到如何使用J-Link與MCU的連接,我是使用SWD方式,請看圖了:
其中J-Link的SWD相關接口的定義是:
- 第1腳:Vref,這個必須連接MCU的供電電源
- 第7腳:SWIO
- 第9腳:SWCLK
- 第15腳:RESET
- 第20腳:GND
S32DS的安裝
這個看之前的文章: 在Windows安裝S32 Design Studio for ARM
LED閃爍的例程
LED原理圖
使用PTD2來控制一個LED, 高電平就亮,低電平就不亮。
新建工程
(1)選擇S32DS Application Project
(2)確定工程目錄、MCU型號、工具鏈
(3)選擇內核、SDK、調試器等相關參數
(4)最後生成的工程界面
編寫程序
我們修改一下main.c
文件,如下
/*
* main implementation: use this 'C' sample to create your own application
*
*/
#include "derivative.h" /* include peripheral declarations SSKEAZN64M2 */
#define PTD2 26 /* LED管腳 */
void Delay(void);
int main(void)
{
GPIOA_PDDR |= 1<<PTD2; /* PTD2: Data Direction= output */
for( ; ;) {
GPIOA_PSOR = 1<<PTD2;
Delay();
GPIOA_PCOR = 1<<PTD2;
Delay();
}
return 0;
}
/*
* 延時大概是400ms
*/
void Delay(void)
{
uint32_t i,j;
for(i=0; i<8; i++)
for(j=0; j<65535; j++);
}
這裏解釋一下#define PTD2 26 /* LED管腳 */
爲什麼是寫26:
- SKEAZN64系列包括GPIOA和GAIOB
- PTD2對應是GPIOA的第26位
編譯工程
這個沒什麼好說的:
配置工程
(1)右擊工程,選擇 Debug Configurations
(2)新建GDB SEGGER J-Link Debugging
注:以上的其它參數可以使用默認的配置
調試程序
(1)上面點擊 Debug
後,接下來會進入調試界面:
(2)點擊上圖的綠色按鍵,程序將會運行
如果順利的話,你將會看到LED不停地一閃一閃,其中週期是400ms:
OVER~~