打印

最后的告白---一年多来omapl138的学习心得

[复制链接]
10182|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhouluopei|  楼主 | 2015-3-11 09:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
      前面是我学习这块芯片的一些经历,里面主要讲我怎么走上这条路的,如果不喜欢,可以直接跳到最后,看我的心得吧!但愿对大家有用,只针对小白,大神请绕路。我的学习板子主要是omapl138 lcdk,资料主要来自于wiki和创龙的用户手册,代码主要是ti starterware,ti mcsdk和创龙的用户代码。

    2012年4月,学校组织了创新项目的申请,作为一名大二的学生,什么也不懂,当时随便申请了一个<<基于davinci的车辆检测>>,申请经费8千。项目6月份获批,经费3千(学校其实以前及这次以后都还是比较大方的,不知道这次为什么会这么小气)。没办法,买不起板子,我只能呆在实验室进行算法的学习,一学就是两个月,期间特别感谢彭程师兄对我仔细的指导。8月份底,偶然逛ti estore,发现了omapl138 lcdk这款板子,发现它虽然比davinci一类在图像处理上性能要低一些,但好歹也是双核,而且dsp还是浮点型。学校前期项目经费发了1k,lcdk是195美元,我发现自己填点钱还可以买一块,而且一般板子是要对高校用户打折的,所以当时联系了ti estore的人,希望凭高校身份打折。这个时候在我138学习生涯中第一个重要的人出现了,他就是ti的大学计划部的一员,我不知道在这里公开他的姓名好不好,下面就用p先生代替吧。他主动给我打电话,跟我说,他很好奇,作为一名大二学生,现在就开始学习ti arm+dsp开发,我跟p先生聊了10分钟左右,聊了一些我以前基于ti msp430 c2000做的项目,他可能觉得我很不容易,就捐赠了一块lcdk板子给我,在这里,特别感谢p先生的慷慨支持,让屌丝也有机会学习。
     拿到了板子,我就开始了学习,由于lcdk没有配光盘,所以资料都在网上,需要自己去找。说老实话,ti的资料真心不适合初学者(我当时只在51,msp430,f28027上写了几个小程序),看过去看过来也不知道从哪里下手,感觉每个都很重要,但是该先学那个呢。这是遇到了我学习过程第二个贵人,广州创龙电子有限公司的朱工-朱雅先生,当时的创龙在omapl138领域还没有混到像现在的风生水起。朱工很慷慨把他们所有公开给用户资料给了我(现在不买创龙的板子,好像是拿不到代码的,只有用户手册,我当时很幸运,获得了全部资料)。我很高兴的是,在一年多以来的时间,我见证了创龙和我的共同成长,也一直和创龙及朱工保持者良好的关系。当然,我继续获得了创龙给的全部资料。结合ti wiki,现在总算还有点收获了。
     有人可能要问,为什么叫最后的告白,因为今年我考上研究生,也许以后再也不会碰嵌入式了。留个贴纪念一下,也希望自己能够给一些想学的人提供一些帮助。

    小白怎么学l138?默认小白学过c语言,开发过单片机一类的器件,无论是51,430,stm32,c2000还是什么的。

arm端学习,arm端默认跑的是linux系统,裸机开发其实跟单片机很相似,就不说了
(1)linux基本环境的搭建,uboot,uImage的编译和根文件系统的移植?
     vmware虚拟机和ubuntu安装,建议先看创龙的omapl138的用户手册(开源的)的3-4,进行相关软件的安装,还有交叉工具的安装(注意创龙交叉工具与后面的user guide用的不一致,所以需要我们在官网上下载,h t t p s://   sourcery.mentor.com/public/gnu_toolchain/arm-none-linux-gnueabi/arm-2009q1-203-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2)。
    然后配合着DaVinci-PSP-SDK-03.22.00.06(h t t p: //processors.wiki.ti.com/index.php/DaVinci_(ARM9)_PSP_Releases)代码包(mcsdk也行),建议前面那个包,单独下。编译内核建议看创龙的文档8-1,但是命令用davinci包内user guide p61页。下载user guide p53页,通过sfh工具下载
    下一步构建nfs文件系统和tftp传输,如果用的是mcsdk的话,那么就很简单了,mcsdk有一个脚本文件,配置非常简单。如果用的不是mcsdk,建议看创龙的文档11-12。sd卡的根文件系统启动直接看创龙的文档5-6就行了,特别是6-2,u-boot启动参数详解一定要看,这个关系到你的以什么启动的问题,超重点。
    到了这一步,基本上linux配置也就差不多了。
(2)开发一个hello world的应用程序,建议直接创龙文档9。或者直接在百度搜也可以,注意事项,交叉工具名字一定要是你电脑里面安装的那个。
    如果你每一步都顺利,应该可以看到lcdk通过串口在电脑上的显示的“hello world”。这里只是简单说了一下lcdk linux环境的配置,如果要深入,可以在淘宝上买一下类似国嵌的linux教学视频,剩下就靠自己了,祝顺利!

dsp端学习,dsp开发其实跟单片机很相似
(1)h t t p : //pan.baidu.com/s/1pJCzlbl?qq-pf-to=pcqq.group
直接学习创龙出的视频就可以了,他们的工程师讲得肯定比我好,视频开源,包含dsp的裸机开发和sys bios开发。
    代码主要基于starterware的代码,没事时可以看一看,基本上所有的模块都包含了。还有一个软件是(bios_c6sdk_02_00_00_00_setupwin32),这里面有个程序
是基于lcdk的人脸检测和指纹识别,还是很好玩的。sys bios不仅可以看创龙的视频,也可以跟着ti官方视频学习(全英文,无字幕,h t t p : //processors.wiki.ti.com/index.php/Introduction_to_the_TI-RTOS_Kernel_Workshop#Intro_to_TI-RTOS_Kernel_Workshop_Online_Video_Tutorials),可以看一看。

双核通信,剩下的一个也是可能是整个l138学习最难的地方了,就是两个核怎么配合起来使用?这里说一个我认为还算很自豪的一件事,创龙采用了我的建议,录制了一批专门讲双核通信的视频。裸机可以看starterware的代码,里面有裸机的双核通信。如果是arm(linux)和dsp(sys bios),这个先可以看看创龙的文档14-16,先实现一下基于mcsdk syslink的例程,这个要求你对linux和bios系统有一定了解,剩下的就只有在wiki上找资料慢慢学了,硬件很多时候都是靠积累,没办法速成的,不懂的下面我有建议你们去哪里找资料和问问题。

Lcdk主要找资料地方:Ti wiki,ti官方最全的资料
h t  t p://processors.wiki.ti.com/index.php/Category:OMAPL1
Lcdk主要问问题的地方:问题可以在本论坛上问,很多大牛还是很热心的,也可以加一个l138讨论群。如果前两个方法没有解决的话,建议去ti的英文论坛e2eh t t p : //e2e.ti.com/)上问,不要在中文论坛deyisurport上问,很多时候没人回答,或者回答的很慢。

      **中涉及的所有资料和代码等,都是开源的,都可以在ti官网上下载。最后打一个小广告吧,无论你用的是不是创龙的板子,真心建议看看他们的用户手册和视频(开源的),还是很具有参考价值的,当然你用的是创龙的板子是最好,其实有很多人觉得创龙的板子很贵(创龙evm 2980,lcdk 1600左右,但是lcdk是不带液晶显示屏的,官方指定配套beaglebone xm的7寸显示屏淘宝上也1000元左右,我现在都是通过vga显示,当然我也希望有一天有个画pcb的大神能够自己设计一块支持lcdk的液晶,还能共享给大家,那就最好了)。最后感谢ti p先生和创龙的朱工,还有本论坛兄弟们的帮助。

相关帖子

沙发
高山午睡| | 2015-3-16 18:38 | 只看该作者
正在考虑l138。 很好的经验!

使用特权

评论回复
板凳
smilingangel| | 2015-3-17 22:39 | 只看该作者
非常不错的经验之谈的,,学习的。

使用特权

评论回复
地板
cowboy2014| | 2015-3-19 17:29 | 只看该作者
楼主,arm和DSP打通了吗?

使用特权

评论回复
5
123654789| | 2015-3-19 17:35 | 只看该作者
学习一个芯片要学习一年时间
如果某一天omapl138这个芯片买不到,或者其他的技术原因,需要更换芯片,那么又要花费另外一个一年时间去学习另外一个新的芯片

电子工程师的青春就是这么浪费

使用特权

评论回复
6
zhouluopei|  楼主 | 2015-3-19 23:31 | 只看该作者
cowboy2014 发表于 2015-3-19 17:29
楼主,arm和DSP打通了吗?

我打通了的,只是我的应用特别简单,就是基于mcsdk的例程的

使用特权

评论回复
7
seatrix| | 2015-3-22 22:10 | 只看该作者
123654789 发表于 2015-3-19 17:35
学习一个芯片要学习一年时间
如果某一天omapl138这个芯片买不到,或者其他的技术原因,需要更换芯片,那么 ...

ti 几十年前的dsp片子还在用
你以为是stc

使用特权

评论回复
8
cowboy2014| | 2015-3-27 08:35 | 只看该作者
zhouluopei 发表于 2015-3-19 23:31
我打通了的,只是我的应用特别简单,就是基于mcsdk的例程的

楼主,您能教教我是如何打通的吗?
我很想学一下

使用特权

评论回复
9
kb1992| | 2015-4-2 17:14 | 只看该作者
楼主我这也是有块ti官方的lcdk,看了很多资料windows linux 到处装东西。还是摸不着头绪,现在想实现人脸识别的demo ,能给点建议嘛?

使用特权

评论回复
10
zhangmangui| | 2015-4-29 22:49 | 只看该作者
楼主  继续  写

使用特权

评论回复
11
可可球| | 2015-5-21 21:08 | 只看该作者
正在学习中,很希望找到有效的方法

使用特权

评论回复
12
baimiaocun2015| | 2015-5-22 13:59 | 只看该作者
这个经验非常不错的,给赞一个的。

使用特权

评论回复
13
baimiaocun2015| | 2015-5-22 14:00 | 只看该作者
做技术就是学无止境的,需要不断地积累学习的。

使用特权

评论回复
14
So_Cracy| | 2015-5-29 16:28 | 只看该作者
凡是经验谈都对我有用!

使用特权

评论回复
15
Thor9| | 2015-5-29 20:29 | 只看该作者
知识更新太快,学不完的东西

使用特权

评论回复
16
598330983| | 2015-5-31 08:33 | 只看该作者
有人可能要问,为什么叫最后的告白,因为今年我考上研究生,也许以后再也不会碰嵌入式了。

使用特权

评论回复
17
598330983| | 2015-5-31 08:33 | 只看该作者
楼主,你考上研究生了就不学嵌入式了?你难道就为了考试?太让人失望了

使用特权

评论回复
18
aww10| | 2015-10-5 22:17 | 只看该作者
你好,我最近也在学习omapl138 lcdk这块板子,是TI官方的板子,我现在遇到一个问题是不能将技术手册上的端口号与starterware程序中的端口对应起来,比如板子上的LED灯,板子的电路图显示是GPIO0[9]与GPIO2[12],但是到GPIODirModeSet(SOC_GPIO_0_REGS, 9, GPIO_DIR_OUTPUT);函数中怎么用?如果像这样设置,LED没有闪,这是为什么呢?

使用特权

评论回复
19
zhangmangui| | 2015-10-7 10:15 | 只看该作者
aww10 发表于 2015-10-5 22:17
你好,我最近也在学习omapl138 lcdk这块板子,是TI官方的板子,我现在遇到一个问题是不能将技术手册上的端 ...

原理图上是9和12   
GPIODirModeSet(SOC_GPIO_0_REGS, 9, GPIO_DIR_OUTPUT);这只是设置了IO口的方向  
你将DAT在设置一下看看啊

使用特权

评论回复
20
andyjian| | 2015-10-9 17:53 | 只看该作者
加油写呀 楼主

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

35

帖子

2

粉丝