如果要开发DLP投影系统的软件,那么必须首先拿到TI公司的参考代码Reference Code。拿到的方式要么从TI的代理商拿到,要么直接从TI公司的网站下载(这个需要TI公司的授权)。
TI公司的不同的芯片的参考代码,大同小异。下面,我就DPP6400的参考程序对各个目录做一个简单的说明。
1、app6400目录
从名字也可以看出,其是整个程序application的所在的目录。DPP6400的该目录为app6400,DPP6401的该目录为app6401,以此类推呀。
app6400_data目录是我改变了makefile之后编译生成了,这个不说了。默认是没有这个目录的。
comm目录里面主要是一些通信之间的代码,如与DLP Composer通信、调试信息输出、远程控制投影机和Remote function call等程序。
datapath目录里面的代码主要是用来搜索信号源的,如VGA、视频、HDMI、DVI和前段信号等。
DPP6400_data是编译后产生出的文件,如编译后的img文件等。不要删除它。
DPP6400.mk.data是编译过程中产生的文件,可以删除该目录的,如果你不想要编译过程中产生的.o文件的话。
gui目录里面的代码是和OSD菜单有关的,比如OSD菜单的Style和处理程序等。
include目录就很明显了,包含了程序中所需的.h文件,不用多说你也知道了。
lida目录是我自己新建的一个目录,默认的参考程序中没有。因为我想将自己改动的文件放到一个新的目录以便与TI的参考代码区分开来。
peripheral目录是和外部设备相关的程序,如音频、遥控、按键,当然,你的风扇控制代码也可以放在这里。
system目录主要是和系统相关的一些代码,如开机、关机、光学控制部分、环境控制部分(包括风扇)、看门狗、eeprom、edid和线程池poll等。
2、DPP6400目录
该目录里面是你的application所使用的API库,可以在该目录下面的API/include的api_ver.h文件,可以看出当前app所用的api版本是多少。
当然,该目录下面还有bootloader的源程序,你可以根据自己的需要进行重新编译。
3、driver目录
从目录名也能看出来了,这个目录里面都是一些驱动。比如AFE1000、点灯器、EEPROM、HDMI芯片和ulpm的驱动。驱动程序也主要是一些I2C的读写而已。
4、threadx目录
这里面放的是一个threadx的实时系统,详细的信息你可以百度一下“threadx”进行了解下了。
【更多阅读】