- 1、本文档共17页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MTKDVD代码学习新手上路(DOC可编).doc
DVD新手ABC
写这篇文档是为以前没有接触过dvd项目的工程师提供一些咨询,让你们能够在最短的时间里上手。
在这篇文档里面包括以下内容:
一、DVD的软件/硬件平台
二、配置样机
三、程序的调试
四、程序的DownLoad
五、系统的软件流程
六、点亮dvd上的显示屏
七、按键的定义
八、UI( User Interface)修改
九、工程中常见问题解答
DVD的软件/硬件平台
1.1DVD的主芯片
我们使用的芯片是MTK(联发科技)的芯片,MTK系列的芯片有:1389B,1389C,1389D,1389F,1389HD等。
怎样从芯片上看出目前使用的芯片的型号了?
如果一个芯片的编号为:MT1389DE0421-CWSD14JJ,数字1389+横杠后的字母“C”就是它的型号,这是一款1389C系列的芯片。
MTK视频解码,伺服等集成在芯片里面,音频DAC有的芯片有集成,有的没有。
1.2MTK的其他主要外围芯片
MTK主要的外围芯片有:flash;内存dram;控制loader(光驱)动作的驱动芯片;eeprom;flash是用来保存目标文件target.bin;在配置样机的时候,我们需要了解的是内存dram的大小; eeprom芯片用来保存dvd中菜单里面的设置;如果是一款高清的平台,它还需要一颗MT1392的芯片。
1.3构建DVD的软件平台
MTK芯片是由RISC、DSP、C51以及时钟、接口等部分组成。其中C51主要完成UI部分的工作,包括OSD、VFD、IR及IR的处理等。
下面所说的程序都是指C51程序。
程序使用的是c51的编译器,如果把c51的编译器放在C盘,在设置环境变量的时候设置为:C:\C51;
现在我们来看软件部分:软件部分可以看成有两大块构成,在8032文件夹里面的文件属于应用层的,是我们可以看到并做修改的;另一部分是底层的risc,这部分的修改,我们是动不了的,需要有MTK自己去做修改。
2.配置样机
在做这个项目之前,我们先要拿到对应的公版软件;样机不同,公版软件的设置也不一样。如果只是要简单的让机器跑起来,我们对样机的配制主要是在vendor.h这个文件中进行修改:
一、如果你的主芯片是1389c的,你需要打开下面的宏定义:
#define MT1389_REV_C
二、根据dram的大小来定义dram,如果你的dram是8m的:
#define DRAM_SZ DRAM_8M
如果你的dram是由两块2m的芯片组成还需要打开下面的定义:
#define DRAM_CASCADE
三、关于声音的定义
如果芯片内置D/A,则需要打开以下定义:
#define INT_ADAC
如果是外置的则需要关掉这个定义,接下来要打开makefile文件,进行Audio DAC Config的配置:
关掉ADAC_DEF = _NPADAC_这个语句:#ADAC_DEF = _NPADAC_
接下来根据声音是左对齐、右对齐、I2S等格式,打开相应的一个定义,如果声音是I2S格式,则可以打开:ADAC_DEF = _CS4340_
接下来就是要选择risc,点亮dvd上的显示屏和按键的定义在后面的章节中将会讲到;选择完正确的risc后就可以进行到接下来的工作:编译调试。
3、程序的调试
程序是通过使用dos命令,调用批处理文件进行编译连接的,
首先要进入到8032文件所在的路径,如果我的8032的文件在以下路径:
D:\test_vfd\sample_3\ver5048\ver5048\8032
调用批处理进行编译,如果编译出来的CODE超过1M,需要把批处理中的
set FLASH_SZ=1改成set FLASH_SZ=2,再重新编译。
怎样查看编译结果了?
一是直接在dos里面查看,这样的编译信息是不详细的。
二是在8032文件下面的文件名为a的里面查看,可以以文本文件的形式打开,这个文件里面的编译信息,这里面的信息是很详细的。
在编译的过程中会出现L15,L16这样的警告,这样警告的出现是有的函数或是变量写出来后没有被使用所出现的警告,这类警告是不需要管的;如果出现L1,L2之类的警告,就必须找出问题,消除这样的警告。
还有其他在程序中自己造成的语法编译错误,则需要根据编译提示去自己消除这样错误!
编译通过后,需要再调用批处理MERGE79来对8032 CODE和RISC CODE进行合并,最后在8032文件夹里面会生成一个target.bin文件,我们接下来做的事情就是把这个文件DownLoad到dvd样机里面去。
4、程序的DownLoad
要把编译好的程序Doawload到dvd样机里面去,可以使用专用烧写工具,也可以使用MTK提供的mtktool,它的界面如下:
其中bin f
文档评论(0)