第一次真正意义上的接触嵌入式开发,并没有之前接触软件开发那么的顺利,过程复杂,涉及的知识广是嵌入式门槛高的部分原因。一开始接触,我不断地在找概念,现在特在此将我的一些经验记录下来,以便不时之需,也提供给各位参考。
说明:我是用的开发板是 ARM9 的S3C2440 ,系统环境是 xp + linux 。
1. 安装ADS,我的环境是在xp下,我安装的是ADS1.2,安装过程可以在网上搜索。(具体安装过程不予介绍)
2. 在linux 系统下安装gcc,如果读者安装了ADS windows下的集成开发环境,那么这一步可以忽略,如果想要深入一点,那么还是建议把这一步做了。(具体安装过程不予介绍)
3. 到这里我们就可以编写我们的程序并得到我们要的文件(如 hello.bin): (1)如果用户使用的是ADS环境,那么可以在ADS下编写程序并make生成我们需要的.bin 文件。(2)如果用户更偏好于linux下,那么,可以直接编写汇编文件和c文件,并通过makefile 来编写我们的编译规则,最后生成我们要的 .bin 文件。
在这里我采用的是在linux下操作。
如图所示:
3-1 首先新建一个led1.s 文件,读者可以自行定义文件名,并编写代码如下:
读者请注意,以下代码适用于s3c2440开发板,其他板请阅读相关的文档。
3-2 新建MakeFile 文件。并输入以下规则:
3-3执行make 进行编译。如果对于linux 下的makefile 不熟悉,请自行学习。
3-4编译后的文件概况。
编译后将会生成:led1.dis ,led1.elf ,led1.o,led1.bin。led1.bin 即是我们想要得到的。
4. 在第三步得到了我们要的hello.bin 文件后,接下来就是要将hello.bin烧录到我们开发板上。所以这一步先将我们的开发板连接上电脑,这里针对的是TQ2440开发板,(1)开发板连接上电源;(2)我们需要连接USB转串口线到电脑,再用串口延长线连接TQ2440开发板的串口;(3)再将USB延长线连接 USB Slave 口。如图:
5. 硬件连接后,后面就是驱动安装:(1)由于我们开发板连接到电脑上采用的是USB转串口的方式(由上第4步可以看出),所以我们需要安装USB转串口的驱动,这里可以安装厂商提供的驱动,也可以使用方式来安装,我采用的方式是用驱动精灵安装这个驱动。(2)另外我们还需要安装USB下载驱动(开发板上会配送有),只有安装了才能将我们的文件通过usb烧到开发板。如图:
USB转并口驱动,说来我也迷惑为什么不是USB转串口?
无所谓,只要能出现下图就OK啦,表示com连接上了,注意到这里是COM3下面会用到
接下来就是安装TQ2440_USB下载驱动:
说明:只要两根线连接上电脑,如果是没有装过驱动的,会自动提示安装,读者要做的是选择我们需要的驱动进行安装即可。
6. 打开SecureCRT ,通过SecureCRT 来配置COM 。使开发板能够与dnw(下一步说dnw)链接上。
第一次打开SecureCRT是会跳到下面的界面:我们将它配置成下面的形式,注意这里用到了上面提过的COM3。
点击Connect ,如果成功会是下面的界面。
7. 安装和配置dnw 下载软件:安装dnw后,(1)打开软件;(2)选择菜单栏的”参数配置-选项” , 配置信息
配置完后确定。
(3)选择菜单栏的”串口-连接“,连接成功后如图:
此时,COM3连接成功。
8. 在这里我们可以将.bin文件烧录到开发板上了。烧录的过程如下:
拨动Nor/Nand选择开关,选择Nor flash 启动。打开电源,dnw 如下:
我们输入a, 如图:
此时选择DNW菜单栏的”USB下载-UBOOT-选择文件“选择我们的.bin所在路径,我的是led1.bin。
出现上图表示已经烧录成功了,接下来选择Nand flash 重新启动开发板,就可以看到led1和led2灯亮了。
最后附上代码:http://download.csdn.net/detail/u014699958/8887341