以下是无图版,有图版欢迎下载附件,及其工程。
工程文件下载地址:https://files.cnblogs.com/hnrainll/Test.zip
有图版下载地址:https://files.cnblogs.com/hnrainll/LPC21O3第一课:第一个实验,LED灯闪烁及ADS1.2的初步使用.pdf
LPC21O3第一课:第一个实验,LED灯闪烁及ADS1.2的初步使用
这里我们使用的是CEPARK_LPC2103开发板,程序开发环境使用:ADS1.2
首先我们在桌面上建立一个"Test"文件夹。将和开发板初始化相关的文件拷贝进去。这些文件,你可以在文章的最后面下载到。
如下图所示,包含下面7个文件。
我们打开ADS1.2,编程软件“CodeWarrior for ARM Developer Suite”。
选择“File------New”,出现如下提示框:
在Project name中输入项目的名字,Location中选择项目要保存的地址。
都填写好后,确定保存。
会出现如下的一个小窗口:
这里我们首先点击工具栏中的这个按钮,新建一个文件。我们将他命名为main.c保存在Test文件夹中。
我们在窗口的空白区域点击右键,选择Add Files.如下图:
添加如下7个文件,成功后的结果如下:
下面我们对ADS1.2软件进行设置,让他生成下载到MCU,Flash中的hex文件。
首先,我们选择Releaes.如下图:
这个表示发布版本,再点击其右边的这个按钮,对软件进行配置。
弹出窗口如下:
我们只需要对我用红色标记的选项进行设置,其他的默认设置。
在Target Settings中的Post-linker我们选择ARM forELF,这个对我们后面生成HEX文件有用。
ARM Assembler,ARM C Compilr的设置相同,如下图:
重点在:ARM Linker的设置,这里我们用分散加载文件,进行设置。
如下图:
在Linktype中,我们选择,Scattered,在Scatter中我们选择,先前复制过来的mem_a.scf文件。这个就是分散加载文件,具体的作用我们以后再详细的说。
再选择Options选项卡,在Imag entry point中输入0x00000000,如下图:
这里是设置入口点地址。
ARM forELF的设置如下图:
几个选项设置完成了,我们点击确定,保存我们的设置。
接下来我们在main.c中编写程序。实现LED闪烁的功能。
例程如下:
/*************************************
Forum:bbs.cepark.com
Author:hnrain
Date:2010/11/17
Version:测试版
*************************************/
#include "config.h"
#define LED 1 << 19// P0.19控制LED
void DelayNS (uint32 dly)
{
uint32 i;
for ( ; dly>0; dly--)
for (i=0; i<50000; i++);
}
int main (void)
{
PINSEL1 = 0x00000000;// 设置管脚连接GPIO
IODIR = LED;// 设置LED控制口为输出
while (1)
{
IOSET = LED;// LED熄灭
DelayNS(50);
IOCLR = LED;// LED点亮
DelayNS(50);
}
return 0;
}
一切都准备好了,我们点击这个按钮,对源文件进行编译。
如果编译没有报错,我们将在Test\main_Data\Release 这个文件夹下找到main.hex文件。
这个就是我们下载到CPU中去的文件。
本文,主要是让大家成功的编译一个成功的文件,对ADS1.2还有更对其他的设置,我这里就不一一的解说,大家也可以把你们知道的相关的知识点,分享出来。
hnrain@2011