本帖最后由 yang_alex 于 2017-6-13 08:26 编辑
下面内容是给新手看的,老鸟们就不要浪费时间了。
一、基本准备:
1、TMS320F28377S开发板或评估板,最好是TI原厂的,因为TMS320F28377S比较新,第三方的板卡和配套教材、例子程序还没出来。而原厂很多代码是基于这些原厂板子的,初学者没人在旁边手把手教时,有些设置变化会导致不同结果,初学者不知道什么设置产生什么影响。用原厂办卡,原厂例子程序,如果发生自己理解不了的现象时,可以恢复最初原始状态重新开始。
如果时间充分,可以从下面另外一种途径进行学习。
因为1、TMS320F28377S是C28X内核,如果不是TMS320F28377S独有的特殊外设,那么通用外设的配置方法也是一样的。至于CLA也是一样的。那么可以先找一个资料充分的第三方TMS320F28x板卡和配套例程(最好新一点,和TMS320F28377S),好处是中文的,容易理解。但要注意不好理解的地方要和TI原厂资料对照,有时第三方翻译的不准确。学完通用的部分后,再针对TMS320F28377S独有的特殊外设进行学习。
2、熟悉C和C++语言的人可以跳过这一步。不熟悉的人需要找C和C++语言的书仔细看看,现在TI的代码几乎都是C和C++写的了。
3、TI的CCS+controlSUITE是必须安装的,使用方法可以找第三方的资料,中文的容易懂。其中仿真器的调试使用是必须学会的,这是后续工作的重要手段。
二、好了,基础工作准备好了,下面开始学习。
1、从简单的例子开始,最常见的就是点灯。但别小瞧它,点灯也是有技术含量的好不好!我们的方法就是从最简单的灯的亮灭开始(GPIO输出控制),配合外设寄存器手册,了解相关寄存器设置的作用,如果不想了解硬件,至少要做到了解软件函数和相关调用参数的作用。这时候仿真器仿真调试很重要,单步执行,或断点运行,看看和设想是否一致。不一致,找原因,找出原因,你就进步了!有时候你会发现,单步调试和连续运行结果不一样。不要着急,很大的原因是连续运行时,CPU执行速度太快了,你眼睛根本没反应过来,单步执行时,仿真器把速度降下来了,所以你看见了。然后尝试按键控制灯亮灭(GPIO输入读取),开始时可能用空操作循环延时,效果也可以。没问题了,在学习中断相关知识,通过中断来读取按键状态。
2、最基本的点灯搞定了(实际上是学习最基本的GPIO操作和中断),再加入定时器(学习定时器操作),实现灯的闪烁。实现了灯的闪烁,甚至是灯的明暗变化。接下来学习PWM,改成PWM控制灯的明暗。再接下来实现流水灯,流星灯等等。。。。
(注意到没有,每次都是掌握前面的知识后再只增加一个外设,和前面的知识结合起来学习,或者单独学习两个外设后,再结合起来学习。千万不要一上来就混在一起学习)
3、一些复杂的外设,TI都有专门的文档进行说明的,可以到TI官网找一下,对照着进行学习。TI的网站设计的很好,非常有条理。找到这个器件,这个器件的资料就都可以找到了。
4、学习完别人的例子,自己就可以照猫画虎了,步骤也是上面的步骤,一步步加功能,发现不是设想中的情况时,就想想可能和什么设置相关,有什么地方冲突了,找到了,就好解决。解决了,你就进步了。记得终结啊!
三、有时候问题会比较复杂,一个人会搞很长时间。这时候别忘了EEWorld上热心的网友啊!有可能你的问题其他人以前碰到已经解决了,他告诉你,你就少走许多弯路。也许这个问题其他人没有遇到,但可以给你出谋划策,多条思路,也许很快就也解决了。另外,TI的技术支持也很好,有问题也可以问他们。小客户也可以上TI的德仪论坛,上面有许多TI的高手。
四、最后,有了心得,不要一个人藏着掖着,独乐乐不如总乐乐。来EEworld发个帖子吧,分享大家才会进步! |