查看: 2363|回复: 1

浅谈快速学习MAXQ的方法(zz)

[复制链接]

该用户从未签到

发表于 2008-1-18 11:18:24 | 显示全部楼层 |阅读模式
分享到:
 当今微处理器市场,可谓百花齐放,各种纷繁的处理器不断涌现,之所以出现这种现象,是由于市场不断细分结果。在这个需求的推动下,短时间内完成设计任务,对于每个工程师都是一个挑战。在10多年以前,市场对于产品的要求不是非常苛刻,一个工程师熟练掌握一个种类的处理器,已基本可以应付过去了,但现在伴随着产品成本,设计周期,技术挑战,开发费用,产品制造工艺等等提出,不得不选择一个更合适的处理器来实现我们的设计目标,因此,如何快速的掌握一个新型号的处理器,并付诸到新设计中,是个需要考虑的问题,此处,仅仅以MAXQ学习为例,与大家探讨一下在编程方面的学习方法,以下观点纯属个人,供大家参考。
1。了解处理器架构
对于这个部分,无论做硬件和软件都需要了解,但做到深刻理解需要时间和实践,这对于一般的项目是不可能有机会给你去深入仔细研究的,因此,这个部分在最初接触阶段,往往被浏览一下,大致了解就行,如果在以后其他部分有要求的话,在倒过来看看。
2。指令集
众所周知,指令集是与汇编编程密切相关的,而使用汇编语言编程必须要掌握了处理器结构以及内部资源后才可以做的顺利,这个不是一个简单的过程,因此,快速项目中基本不会使用汇编来做,除非万不得已,如果使用汇编,那么项目是做不到快速实现的。
3。外围设备
这是必须要仔细研究的部分,因为应用设计很大程度上是与这些资源打交道,也是编程的重点之一。事实上,对于一个使用过其他处理的工程师而言,并不需要从头开始。因为,一般外围设备是串口,SPI,I2C,定时器,端口等等,但还有一些可能是新的概念,因此,需要花力气仔细研究,实现其功能,例如,MAXQ的OW(1线)主机控制器的功能。此外,还有一些可能是以前作为一个独立IC被使用的,但使用起来也是不陌生的。在项目开发过程中,如果不使用,确保他们被关闭,就可以暂时不去研究他们,而去熟悉那些要使用的部分,如此,可以确保不浪费项目时间。
4。中断机制
这个部分也是要仔细研究的部分,没有了中断,处理器就是低能儿一个,基本只能从事一些简单的应用。因此,中断的要素必须清楚,例如,要实现中断功能,就MAXQ而言,必须管好三道闸门,第一道是全局中断控制,第二道是模块中断控制,第三道是相应外围设备中断控制。
5。功耗控制
目前低功耗的处理器,大多数在这个方面作了很多文章,但基本思路是一致的,降低工作电压和降低运行频率实现降低功耗的目的。降低工作电压,一般在硬件设计时已被确定,此后不会被更改,因此,只有调整频率操作,但这个与应用目标的行为是密切有关的,必须仔细确定一个合适的功耗控制策略。此外,不使用或者暂时不使用的片内设备要确定其工作状态,要么关闭,要么进入它们各自的低功耗模式(如果有的话),但需要注意的时,由于系统频率的调整,会影响与时序有关的设备,例如定时器,串口等,这些应当要考虑好。
6。编程语言的选择
毋庸置疑,C语言是首选,因为我们对汇编还不十分熟悉,此外,使用C语言,使得我们可以从其他处理器平台上移植一些成熟的程序代码或者算法过来,从而加快调试的时间,直接缩短项目开发周期。此外,养成好的编程风格,可以为未来的移植工作做好铺垫,通常做法是与CPU资源有关的作为一个独立模块(一般是一个以独立文件的形式)作为最底层代码,其他的应用代码按照调用层次,构成二级或者三级乃至更高层次代码,每一次也用一个独立文件进行模块的“封装”。
7。编译器选择
最好使用自己熟悉的编译平台,否则,要花费很多时间去熟悉调试平台,有点划不来,主要恐怕没有那么多时间去研究。如果没有自己熟悉的,也要选择那种比较傻瓜型,容易上手的,出错少的去做,
8。练习
在做好了以上的知识和工具的软环境的准备后,接着就是要找一个目标硬件来练习以上关系的问题,通过练习来减少硬件和软件设计,减少重做样机的次数,通常练习的方法是正对需要的片内设备,去一个一个实现与项目有关的功能,不相关的功能,可以暂时不考虑。在完成一个后,立即对其做仔细的测试,并将其封装起来备用。在全部完成了这些模块后,最后把它们拼装起来实现一个完整的项目功能,但需要注意的是,拼装过程是采用增量设计方法,因此,需要在拼装前设计好一个拼装的顺序。
9。结束语
在完成一个项目后,基本上能够大体对所使用的处理器有了一个清晰的了解,对于那些暂时没有使用的资源,在项目结束后,可以慢慢的仔细研究,以便将来项目使用。应当注意,对于任何一个处理器,做到熟练使用需要一个不断反复的阅读资料和时间练习的过程。
以上是一个地地道道边学边用的实用主义做法,仅仅是为了在有限的时间,精力以及经济条件下,快速可靠的使用一个新器件来完成项目任务,或许有些浮躁的气息,纯属个人观点。
回复

使用道具 举报

该用户从未签到

发表于 2010-7-3 14:20:05 | 显示全部楼层

RE:浅谈快速学习MAXQ的方法(zz)


QQ276488420
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /2 下一条



手机版|小黑屋|与非网

GMT+8, 2025-1-7 06:34 , Processed in 0.126566 second(s), 19 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.