一、 DAVINCI DM36X开发攻略序
深圳干旱了一段时间,春节过后,前几天终于下了雨,这雨来到很及时,自然的生机得到发展,空气一下子变得清晰,虽然天气一直很冷,阵阵冷风,但是蕴藏的春天气息,是如此让人惬意,人们一直期待的明媚春光,终于在这两天带来无尽的温暖。
很多朋友加我的QQ和MSN,一直问我们DM365核心板、DM368核心板(或者叫DM365最小系统板,DM36X包括去年新发布的纯高清DM368)什么时候出来,我说产品级的DM36X需要第2次改板。我们利用春节假期,认真收集客户的需求和参考一些公司的DM365板子,终于在这段时间完善PCB的制作。不是我们拖,因为我们去年给5个客户开发DM6446产品,他们的开发资金很快打到我们公司的账上,所以我们必须先完成客户的合同任务,才开始设计自己的产品。
写“DM6446开发攻略”一年多来,得到51CTO的热情关照,同时还得到XXXX出版社的人关注,这让我这个嵌入式技术水平一般般的人感到很欣慰。当然,最终感谢的是广大爱好嵌入式开发的网友的关注,这一点值得我继续前进,继续专注嵌入式开发,继续分享我的实实在在的调试结果,这是我的爱好,也是我的工作,顺便混口饭吃,然后方便爬爬梧桐山,游游泳。经验分享是我人生口号——“文明的征程”中的一部分内容。
二、 DAVINCI DM36X的介绍
从TI网站上下载DM365的datasheet SPRS457A.pdf和DM368 的SPRS668A。DM365的主要特点就是300-MHz ARM926EJ-S,加上两个硬件图像协处理HDVICP和MJCP,支持H.264,MPEG4, MPEG2,MJPEG,JPEG,WMV9/VC1,支持D1和720p输出,不是真正意义上的高清。而输入可以随便接500万像素的CMOS芯片,也可以通过TVP5158采集4路D1的CCD,主要用途就是IP网络摄像机、智能家居应用、媒体播放器、安防的DVR,DVS等等方面。而DM368的主要特点就是432-MHz ARM926EJ-S,支持纯高清1080p,H264处理达到30帧/秒,并增加一个人脸识别的硬件处理器,管脚和DM365完全兼容,软件上也绝大部分兼容。DM36X形式上很像ARM+FPGA的芯片方案,但是差别非常大,因为ARM+FPGA是可以由客户定制,而DM36X的一些图像算法、编解码都是硬件固定的东西。DM36X没有DSP,不能做视频分析和机器视觉产品,不像DM6446和DM6467T。DM36X使用0.65-mm工艺,使PCB的设计难度进一步加大。DM36X因为没有DSP,所以TI定位在低端市场,特别是高清DVR,IP-CAMERA。详细的资源介绍最好看看上面提到的两个datasheet。
三、 选择RHEL 6.0和VM7.1
从正式版的RHEL 6.0 发布后,很多RedHat 发烧网友就迫不及待地去安装体验一下,他们也顺便分享出来,但是本人觉得比较粗略,而且不是针对嵌入式开发这方面写的,所以本人决定分享自己几次安装体验的经验给大家。
目前技术更新很快,正版的RHEL6.0去年年底发布出来了,需要几十美金,一个正规的企业和开发比较复杂的LINUX SERVER 、数据库等软件的公司和人员建议购买正版,我们开发嵌入式的产品可以不用买这个正版的,因为嵌入式开发只和交叉编译环境有关,我们可以使用debian,Ubuntu,Fedora等等。由于TI 的DAVINCI DVSDK建议使用正版的RHEL4.0和RHEL5.0,所以我们公司也决定使用RHEL6.0。而DM36X DVSDK3.0、DVSDK4.0 和DM6467的DVSDK3.0,使用的内核都是linux-2.6.32的版本,我们这些爱好者当然选择同样基于linux-2.6.32.71的RHEL6.0。
从VeryCD下载RHEL6.0(rhel-server-6.0-i386-dvd.iso)和从其他网上搜索VM7.1下载,VM7.1是截止当前最新的虚拟机,整个LINUX开发环境就是一个文件,方便移植到其他电脑上,也便于保存,不会因为脚本被破坏而崩溃整个系统,相当好用。日常办公和开发,我们确实离不开WINDOWS,只好双系统运行,所以我们选择VM。
下面本人以图解的方式给大家介绍,很多截图,包括命令和脚本设置,由于有很多截图,字数明显大于一篇博客,所以本人分三篇博文来完成,《DAVINCI DM36X开发攻略——RHEL6在VM7.1的安装2》和《DAVINCI DM36X开发攻略——RHEL6在VM7.1的安装3》就在博客首页上。
四、 VM7.1的安装
VM7.1的安装比较简单,本人不想花费口舌去讲,我们采用截图给大家分享。
VM图-1 选择Custom
VM图-2
VM图-3
VM7.1目前还没有直接支持RHEL6.0,因为RHEL6.0比较新,所以这里选择Red Hat Linux。
VM图-4 虚拟机命名
VM图-5
VM图-6 VM内存分配
这一步根据自己电脑配置,分配内存,有2G的内存,就分配1G给VM使用,最基本保证VM有512M的内存。
VM图-7 VM选择网络模式
我们开发嵌入式产品,需要和WINDOWS环境进行网络共享,所以选择第一个,这个和VM图-15的WINDOWS下的“本地连接”的“属性”设置关联。如果你需要通过VM连接上网,建议选择第2个。
VM图-8
VM图-9
VM图-10 选择硬盘类型
这一步很重要,本人的机子如果选择SCSI,在安装RHEL 6.0 的时候,分区环节根本通不过,根本安装不了RHEL6.0,所以这里需要注意一下。具体的原因没时间去分析。
VM图-11 分配虚拟机空间大小
建议给LINUX环境的空间分配达到20G以上,这虚拟机的文件会随着你安装RHEL6.0、DVSDK和交叉编译环境等变得越来越大。所以建议使用20G。
VM图-12 整个LINUX环境就是一个文件
VM图-13
VM图-14
把虚拟机的光驱指定你下载的rhel-server-6.0-i386-dvd.iso文件。
VM图-15
这一步对于嵌入式开发很重要,否则安装好RHEL6.0后,无法实现TFTP SERVER, NFS, SAMBA等功能,安装完VM后,WINDOWS下的“网络连接”会自动生成“VMware Network Adapter VMnet1”和“VMware Network Adapter Vmnet8”,。选择“本地连接”,右键选择“属性”,在“高级”的选项里,按红框去选择“VMware Network Adapter VMnet1”或者“VMware Network Adapter Vmnet8”,然后会出现提示信息,点击确定就完了。
VM图-16
对新配置的RHEL6.0的虚拟机进行“Power on”。