使用S32DS来开发KEA并配有LED闪烁的例程
程序员文章站
2024-02-25 14:55:33
...
之前也写了 篇类似的文章:使用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~~