本帖最后由 bigbat 于 2019-9-28 11:12 编辑
话说公元2006年,单片机的“江湖里”突然的风雨大作!8051的盟主宝座一夜之间被掀翻,圈子里PIC、AVR、ARM、DSP、CPLD、FPGA,等等技术“山头”林立。只会51的工程师好象成了二手货一般,变成了“初级”的代名词。象我这种只知道抱着51大腿的“小强”们压力山大!那时候比较热的技术有“变频器“、“无纸记录仪”和”组态软件“。你如果和人家交流不带点新名词都不好意思开口。哎!我也不能坐着发呆呀。就买了AVR和PIC的资料来了解。我最喜欢的是去”图批“寻宝,在加上网查找资料。对AVR和PIC有了一些认识。那时候PIC非常的火爆,当时我还自费参加了2006年的MicroChip的北京年会。在会上我花了四百大洋买了一台”MPLAB ICD2“。从那时候才体会到ICSP的便利。但是PIC的C编译器速度很慢,而且芯片配置设置复杂,程序编写麻烦。主要是变量寻址受指令长度的限制需要分页。最头痛的是对于逻辑复杂结构嵌套较多的程序有可能还不能实现。当然PIC芯片对于仪表类的应用还是比较适用的。这在当时MicroChip单片机的价格和芯片外设算是比较丰富的了。那个时候芯片里集成了EEPROM和IIC总线接口等外设,甚至有的芯片还集成了ADC等特点,在当时其它厂家很少能做到,即使能做到价格也不容易接受。比如:AT98C53里面集成了EEPROM,但是价格比AT89C52+AT24CXX的组合价格要高出不少。更困难的是市场上还不容易买到,甚至需要和供应商订货。所以那时候如果你会使用PIC单片机工资都会比用51的高。就是因为PIC的仪表整体价格比51系统的低很多,甚至能低到51系统的一半,真是市场说了算啊!当时使用PIC的同行说话好象都是用”鼻孔“的。当然代价也是蛮高的估计死的脑细胞也不少。记得有一个做仪表的公司想把公司里的高档仪表“俗称带电脑接口的(UART)”改成PIC芯片的系统。可是UART通讯就是不稳定。那哥们被老板逼得估计精神都快崩溃了。后来经过高人指点将晶振改成11.0592M才把问题解决了。个人观点:采用RISC芯片的PIC指令体系主要的问题是:CPU指令集设计的简化注定了软件的复杂性,这是RISC芯片的通病不是PIC芯片独有的。但是随着技术的发展集成度的提高和指令集字长的变宽,软件的复杂度也就随之下降了。就象目前普遍使用的ARM-Cortex M的指令集一样。当然PIC也在不断的改进,随后出现的16位宽的指令集就不在有8位的那些各令人头痛的问题了。我的PCB软件也从Protel 99se改成了DXP 2004。DXP最让我感动的特性是支持鼠标中间的滚轮。但那时的PCB厂家普遍不支持DXP的PCB格式文件。需要转成99se的格式。烦人的是转换后覆铜就会丢失,必须用99se重新覆铜。所以机器里两个软件都需要装着。DXP的操作改进与99se真的是天壤之别。MCU的多元化也让我认识了ICSP技术,编译器也不只有keil一种了。51体系用的比较多的也不是ATMEL了,换成了WinBond华邦。那时对ATMEL的AVR也做过了解。AVR的单片机软件要优于PIC的8位机,但是芯片的价格却要比PIC的高不少。所以我当时也没有了解的太深入,直到现在火爆的arduino出现也没有太多的关注。虽然AVR还在!虽然ATMEL已成了Microchip的子公司。2006年对我来说真的变化太多!
这是我自制的51编程器和软件验证器。
|