从零开始学单片机全过程之(二)

来源:互联网 发布:spring事务源码分析 编辑:程序博客网 时间:2024/04/30 07:27
从零开始学单片机全过程之(二)
 
(声明:属于个人体会,不涉及任何商业目的,请转载时注明出处,谢谢)
作者
field01@gmail.com
 
3. 3第二个开发工具的制作
2.3.1 搜索资料
通过一段时间的对51芯片的试验,我渐渐理解了51系列的概念,再加之一直在网上学习,也通过去图书馆借书学习,知道了,ATMEL的89C51芯片已停产,现在在用的是89s51的芯片,不仅功能强大,而且价格便宜。我进一步了解到51芯片现在使用两种技术,一种是ISP在系统编程,还有一种是IAP在应用编程(以下为引用)
ISP:in system programming,
IAP: in applicatin programming
但两者的操作方式,结果和应用场合有什么区别
ISP:
用写入器将code烧入,不过,芯片可以在目标板上,不用取出来,在设计目标板的时候就将接口设计在上面,所以叫"在系统编程",即不用脱离系统;
IAP:
在应用编程,有芯片本身(或通过外围的芯片)可以通过一系列操作将code写入,比如一款支持Iap的单片机,内分3个程序区,1作引导程序区,2作运行程序区,3作下载区,芯片通过串口接收到下载命令,进入引导区运行引导程序,在引导程序下将new code内容下载到下载区,下载完毕并校验通过后再将下载区内容复制到2区,运行复位程序,则Iap完成;
应用场合:
1,ISP 程序升级需要到现场解决,不过好一点的是不必拆机器了;
2,IAP 如果有网管系统的话,用网管下载一切搞定,人不用跑来跑去,
这可能是他们的优点或应用吧
典型IAP:IC卡电话机
内含V.xx MODEM芯片,MCU自带引导区,可远程下载更新程序。
2.3.2 验证可行性确立制作方案
看了,isp与iap有那么多好处,我还得知,isp技术可以用来做下载线,iap技术可以用来做仿真器。
继续在网上寻找,终于找到了一个做自制isp下载线的文档,作者也是一位高校的学生,是长沙理工大学,电气工程系的。看了他的文档和原理图后,对我的诱惑很大,因为他的整个电路就一个DB25的电脑接头和5个电阻,一个74LS373的锁存器,就可以了,于是我想,就算做不成,这点工作量与成本也算不了什么,于是着手开始制作了。
2.3.3 在制作中学习成长
这个图应该是原理图了,因为引脚和实物的排列都不一样,所以,我刚刚拿得到此图的时候有些茫然了。
     有点不知如何下手,后来就试着去www.atmel.com下载了 ATMEL89S51的技术资料,全英文的,用电子词典慢慢的看,终于看出了点名堂,知道了89s51芯片 的引脚名称与定义,然后再如法炮制,去下载了74LS373的技术文档 ,搞清楚其管脚的排列,也和上图中的 不同,还要自己排版,其实到最后,工作量也不小,因为,我看到,ISP下载线的成品很小的,可以做在DB25插头里面,所也我也尝试着想坐进去,我在纸上打上草稿,一个点一个点地假设电路板上洞的间隔,然后再将各元件画上,说来也巧,这样设计出来的电路板的宽度正好和DB25插头的宽度差不多,于是我就用锯子将电路板下,再在上面与插头上拧螺丝的适当位置打上洞,焊上连线,拧上螺丝样子还真不错。然后,用给89s51芯片搭上最小系统,插上电还好,还能用,可以检测到89s51的芯片,由于,这个原理图并没有说清楚怎样使用89s51进行在系统的编程,所以刚开始的时候,我就把他当成是我的另一个编程器,试验了彩灯程序,就是烧好程序后拔下,放到另一块板上试验少些是否成功,结果成功。最后在仔细研究其文档资料后,才大概猜出了其使用方法,问题关键就在芯片的RET脚上,当此脚接电脑db25口上时,可以进行对芯片的编程,如果接上复位电路,断开RET与电脑的连接的话,就可以脱离电脑独立运行了,于是我就在这两者之间加了指拨开关。用了,还真的成功了,那对我以后的开发真是带来了很大的方便。这个真是个好东西。