现在的位置: 首页 > 技术文章 > 技术文章 > 环境搭建 > 正文

DAVINCI开发原理之一—ARM端开发环境的建立(DVEVM)

2013年11月18日 技术文章, 环境搭建 ⁄ 共 1782字 ⁄ 字号 DAVINCI开发原理之一—ARM端开发环境的建立(DVEVM)已关闭评论 ⁄ 阅读 1,973 次
TMS320DM6446

TMS320DM6446

1.对DAVINCI平台,TI在硬件上给予双核架构强有力的支撑,在DSP端用DSP/BIOS来支持音视频算法的运行,在ARM端用MontaVistaLinux(MV)来支持其对外设的管理。对于ARM与DSP之间的数据交互,则用CodeEngine和CodecServer来加以管理。

2.在DAVINCI的开发程序分为codec部分和应用程序部分。开发应用程序前,需要搭建软硬件开发环境。硬件环境包括:DAVINCI开发板DVEVM(含 TMS320DM6446的DSP和ARM的双核芯片及丰富的外设)、CCD摄像头、LCD显示器、硬盘(如果不用NFS来映射文件系统,则可通过本地的硬盘上的文件系统)、串口线。其次是与DVEVM配套的ARM端软件开发环境。环境搭建好后,需要对Linux主机进行相关配置才能使用DVEVM开发板。对嵌入式系统开发,开发板上首先需要一个bootloader来初始化硬件,然后会通过bootloader的参数设置来启动系统。如启动bootloader后,通过tftp来下载MVLinux内核镜像文件到内存运行内核,然后通过NFS来启动Linux主机上的目标文件系统,并通过DHCP服务器来为开发板分配IP地址,这样就可以进行基于IP的网络视频应用开发。下面配置ARM端软件开发环境的各个模块。

3.TFTP服务器的配置
>检查Linux是否安装了TFTP服务


$rpm-qa | grep tftp

tftp-0.32-4

tftp-server-0.32-4
否则从Linux安装盘重新用rpm安装tftp相关模块,并打开tftp的服务。

4.配置NFS服务器
NFS是一种在网络上的机器间共享文件的方法,文件就如同位于客户的本地硬盘驱动器上一样。可以将之看成是一种文件系统的格式,Red Hat Linux既可以是NFS服务器也可以是NFS客户,这意味着它可以把文件系统导出给其他系统,也可以挂载从其他机器上导入的文件系统。DVEVM的NFS主要用来把主机Linux上的MVLinux映射到DVEVM板上去,使得DVEVM在自身无文件系统的情形下,可以正常的执行各种任务。

5.DHCP服务器的配置
配Linux主机和DVEVM的IP。比较简单。

6.bootloader的烧写
bootloader是操作系统内核运行前运行的一段程序,通过这段程序来初始化硬件设备、建立内存空间的映射表,从而将系统的软硬件环境初始化,以便为最终调用操作系统内核准备正确的环境,烧写前准备如下软硬件设施:

软件部分:
U-Boot image(即文件u-boot.bin);文件falshwriter.out;CCS3.2或以上版本
硬件部分:
>连接到DAVINCIDVEVM的JTAG硬件仿真器;
>一条连接PC与DACINCIDVEVM的RS323的串口线;
>跳线J4应该被标识为"CS2SELECT",并确认"FLASH"被选择;
>使S3的1和2设置为OFF
 准备好上述软硬环境后,即可以开始烧写了,烧写例程见附录(U-bootexample.rar),烧写过程很简单.

7.设置DVEVM的启动参数

#setenv bootargs console=ttyS0,115200n8 noinitrd rw ip=......详细参数说明见U-BOOT说明文档。

至此,我们ARM端的初步开发环境建立起来了,可以做一些比较简单的开发程序,如例:


$mkdir ~/workdir/filesys/ope/hello

$cd ~/workdir/filesys/ope/hello

$vi hello.c

#include

intmain()

{
printf("helloworld!welcome to DAVINCI test");

return0;

}

$arm_v5t_le-gcc hello.c -o hello  /*保存后,用交叉编译工具arm_v5t_le-gcc编译程序:*/

#cd/opt/hello   /*编译生成二进制文件hello后,启动DAVINCIDVEVM板,通过terminal运行下命令*/

#./hello

×