|
上面零零散散说了个大概,总而言之,单片机的硬件就是具有CPU,存储器,外部接口和其他应用单元的一个完整的小计算机,虽然它不如电脑CPU那么高速,可是它几乎不依赖其他硬件就可以独立运行,当然电脑运行靠程序,单片机也是一样,不装任何程序的裸芯片是做不了什么的,要想它发挥作用,必须给它灌入“思想”:程序。
程序的基础,就是单片机的“指令”。所以要想学单片机,在弄清楚了它的硬件结构以后,下一步,首要的就是了解它的指令系统,然后学习用最接近机器指令的“汇编语言”在“汇编器”这个编程平台上面进行编程---得到.asm文件,程序编好了,检查调试无误,就可以利用汇编器转换生成.hex文件,再利用编程器或下载线把这个文件灌入单片机的ROM中,让单片机能够“起跑”,于是可以说单片机的开发过程基本完成了。
不同结构的单片机,如51,PIC,AVR,430指令的格式和16进代码完全不同,所以从学指令开始,就要有针对性地学习了,如果你下决心是非得亲手搭建一个简单的单片机系统,那么就要选择用什么芯片了。51资格最老,大学一直在教,学的人很多;PIC用户最广销量第一,AVR性能不错,写片容易;430耗电最小,适用于电池供电。。。总之各有特点,要入门,不妨在51和PIC中选一样,学得差不多了,再学其他品种也不困难,而且市面上这两种单片机的书籍很多。编程平台也在网上容易找到,性能好,容易使用。至于AVR,有关的书籍相对少些,个人体会它的编程平台,免费的总是有臭虫,好用的又有版权限制。。。最引人之处就是对于入门者,往片子里面灌装程序简单,学习几乎是0成本。
可以自学吗?怎么不可以,东西做出来就是为了让人学让人用的,有老师指教当然好,没有老师,多看书,多看例子程序,多实践也可以解决问题的。
没有仪器可以吗?有当然最好,有示波器(当然是2踪的)会方便不少,有能看多路信号的逻辑分析仪当然更好,可是如果不搞专业开发,也不要一下子投入那么多,这些高级仪表暂时放一放;那,调试?可以采取小口多咬的办法,就是把程序分解成一下,不要一次都装进单片机去,比如一个程序有数码管显示部分,有按键处理部分,有输出部分,则先装入显示部分好了没问题再加入按键部分,一步步来,那一部分有问题也好分析解决,还可以临时在关键部位加一点东西,例如让它点亮一个临时的LED,在试运行时就能直观判断程序能否到达这里。
还有一个学习办法就是纯软件模拟,但是你首先得搞清软件的用法(如PROTEUS),和相关的编程平台(如KEIL),还要把两者结合起来,得到模拟运行结果。
不管采用什么方法,都是要花费一点精力,(打麻将还要动脑子呢),而且重点是学习编程,先汇编,后C。
怎么样?ARE U READY?不要征求内务部长批准吧?
砖,瓦,灰,沙,石头子儿就抛这么多,只是开个头儿,我也技穷了,说的不好,大家炮轰火烧,下面。。。就看你的了
[ 本帖最后由 wey05 于 2007-7-18 15:27 编辑 ] |
|