几种使用过的单片机比较
51系列单片机
使用的人很多,资料很多,根本不需要技术支持。价钱便宜(如批量AT89c52只需要8.5RMB)。但普通型的芯片内部资源较少,需要外部扩展。总线外置使系统抗干扰型变差。外括看门狗电路增加成本(max813比89c52要贵)。执行速度较慢,晶振频率较高,EMI性能较差。
功耗较大,不能用于低功耗产品(虽然philip有低功耗产品,但价格不如pic单片机)。
近几年出现一些扩展功能的51单片机,如外部ram内置、2个uart、加入spi接口、a/d转换器等,价格不是很贵,但批量大和产品期望生命周期长,使用有所顾虑。以上说的好像都是缺点,但51单片机的优点也很明显,51单片机是低档8位单片机中外括资源比较大的,便于用较低的成本构成一较大的系统,这是其他单片机不能相比的。根据使用过的几种51单片机(普通类型),ATMEL和PHILIP的性能差不多,但ATMEL比较便宜,Winbond的性能好,但价格较高。
开发工具价格中等,开发手段较落后。因为程序空间较大,堆栈可移动,适用C编程,编译软件也不错(keil),编程器(LABTOOL-48)支持较好。
以下的单片机用的不多。
Motorola的单片机(限于本人水平,仅说说8位单片机),资料较少(而且有错误,自己有教训),使用的人不多,技术支持一般,小客户更是基本不支持。使用过908gp32,晶振为32768Hz,内部PLL倍频到4MHz,抗干扰性较好,资源较多,基本不用扩展。但价格较高,不过908JL8的性价比要好于89c52,而且总类繁多,包括几乎所有功能,但是好像没有低功耗产品。
仿真开发工具昂贵(但因为内部有监控程序,908(flash)系列可以自制简单的调试和下载工具)。开发手段较先进。适用于C编程(经验是即使不熟悉汇编语言,也能用的很好),软件开发工具CodeWarrior,功能强大,但与其他开发工具有些区别,奇怪的是,有些头文件竟然有错误。编程器(LABTOOL-48)高版本支持较好。
Msp430单片机
技术支持还可以,资料也不多。使用过F11x1,功耗低而且速度快,汇编语言用起来很灵活,寻址方式很多,指令很少,容易上手。缺点是片内资源较少,没有a/d和窜口,但斜率a/d用起来还可以(怕中断)。缺点是占的指令空间较大,因为是16位单片机,程序以字为单位,有的指令竟然占6个字节。虽然程序表面上简洁,但空间占用很大(与pic单片机比较)。内部有flash信息储存器,用来保存不掉电信息,用起来一般。必须分页写入,数据必须读出回写,与flash操作相同,读出简单写入麻烦。Msp430单片机的低档类型,不如pic单片机。复位特性较差,根据实际应用,在掉电电压下降较慢时,瞬时掉电复位性能较差,需外加复位芯片。
和其他单片机相比,仿真开发是最顺手的一种。Jatg接口,可以快速下载程序到flash储存器,再线调试功能还可以,调试工具便宜,软件开发工具IAR也相当不错。编程器(LABTOOL-48)不支持。
最适于入门学习。
Pic单片机
技术支持较好(不知对小客户态度如何),是仅次于51的流行单片机。
虽然硬件结构和语言奇怪,开发手段落后。但价钱便宜、功耗低(但要频率够低)、很实用。程序代码空间很节省,与其结构有关。如果以前使用其它单片机而改用pic,会感到很别扭。因为堆栈指针不可变,不适用c语言(c语言的ram定义也要分页,应是首创吧),汇编语言还可以。Pic单片机最实用的资源是a/d转换器(而且比单独的a/d便宜),IIC接口基本无用(因为用起来比软仿还麻烦),串口做的也一般,如无多机通信功能(高档除外),虽然中断很多,但只有1个入口。
有的带有内部EEROM,但仍然为IIC接口,有的称是并行接口,但也不在ram空间里,读写仍然麻烦。Pic单片机硬件特性比较好,考虑的很周到,如复位性能较好(延迟上电复位、上电复位、掉电复位),看门狗也不错,而且抗干扰性好,在许多应用中不用外加辅助电路,特别适用于低成本应用。
仿真开发工具(ice2000)价格昂贵,而且根据单片机不同要更换单价数千元仿真模块。当然可以使用国产的。近来推出个ICD2,但是把监控程序下载到片上程序空间,而且占用ram。对于资源本就很少的芯片来说不太实用。
最常见的几款单片机性能对比
51单片机
应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。
51单片机之所以成为经典,成为易上手的单片机主要有以下特点:
特性:
1. 从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。
2. 同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便,
3. 乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。
缺点:(虽然是经典但是缺点还是很明显的)
1. AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担
2. 虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋
3. 运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利
4. 51保护能力很差,很容易烧坏芯片
应用范围:
目前在教学场合和对性能要求不高的场合大量被采用
使用最多的器件:8051、80C51
MSP430单片机
MSP430系列单片机是德州仪器1996年开始推向市场的一种16位超低功耗的混合信号处理器,给人们留下的最大的亮点是低功耗而且速度快,汇编语言用起来很灵活,寻址方式很多,指令很少,容易上手。主要是由于其针对实际应用需求,把许多模拟电路、数字电路和微处理器集成在一个芯片上,以提供“单片”解决方案。其迅速发展和应用范围的不断扩大,主要取决于以下的特点…
特性:
1. 强大的处理能力,采用了精简指令集(RISC)结构,具有丰富的寻址方式( 7 种源操作数寻址、 4 种目的操作数寻址)、简洁的 27 条内核指令以及大量的模拟指令;大量的寄存器以及片内数据存储器都可参加多种运算;还有高效的查表处理指令;有较高的处理速度,在 8MHz 晶体驱动下指令周期为 125 ns 。这些特点保证了可编制出高效率的源程序
2. 在运算速度方面,能在 8MHz 晶体的驱动下,实现 125ns 的指令周期。 16 位的数据宽度、 125ns 的指令周期以及多功能的硬件乘法器(能实现乘加)相配合,能实现数字信号处理的某些算法(如 FFT 等)
3. 超低功耗方面,MSP430 单片机之所以有超低的功耗,是因为其在降低芯片的电源电压及灵活而可控的运行时钟方面都有其独到之处。电源电压采用的是 1.8~3.6V 电压。因而可使其在 1MHz 的时钟条件下运行时, 芯片的电流会在 200~400uA 左右,时钟关断模式的最低功耗只有 0.1uA
缺点:
1. 个人感觉不容易上手,不适合初学者入门,资料也比较少,只能跑官网去找
2. 占的指令空间较大,因为是16位单片机,程序以字为单位,有的指令竟然占6
个字节。虽然程序表面上简洁, 但与pic单片机比较空间占用很大
应用范围:
在低功耗及超低功耗的工业场合应用的比较多
使用最多的器件:MSP430F系列、MSP430G2系列、MSP430L09系列
TMS单片机
这里也提一下TMS系列单片机,虽不算主流。由TI推出的8位CMOS单片机,具有多种存储模式、多种外围接口模式,适用于复杂的实时控制场合。虽然没STM32那么优秀,也没MSP430那么张扬,但是TMS370C系列单片机提供了通过整合先进的外围功能模块及各种芯片的内存配置,具有高性价比的实时系统控制。同时采用高性能硅栅CMOS EPROM和EEPROM技术实现。低工作功耗CMOS技术,宽工作温度范围,噪声抑制,再加上高性能和丰富的片上外设功能,使TMS370C系列单片机在汽车电子,工业电机控制,电脑,通信和消费类具有一定的应用。
STM32单片机
由ST厂商推出的STM32系列单片机,行业的朋友都知道,这是一款性价比超高的系列单片机,应该没有之一,功能及其强大。其基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成度方面也有不俗的表现,当然和MSP430的功耗比起来是稍微逊色的一些,但这并不影响工程师们对它的热捧程度,由于其简单的结构和易用的工具再配合其强大的功能在行业中赫赫有名…其强大的功能主要表现在:
特性:
1.内核:ARM32位Cortex-M3CPU,最高工作频率72MHz,1.25DMIPS/MHz,单周期乘法和硬件除法
2.存储器:片上集成32-512KB的Flash存储器。6-64KB的SRAM存储器
3.时钟、复位和电源管理:2.0-3.6V的电源供电和I/O接口的驱动电压。POR、PDR和可编程的电压探测器(PVD)。4-16MHz的晶振。内嵌出厂前调校的8MHz RC振荡电路。内部40 kHz的RC振荡电路。用于CPU时钟的PLL。带校准用于RTC的32kHz的晶振
4、调试模式:串行调试(SWD)和JTAG接口。最多高达112个的快速I/O端口、最多多达11个定时器、最多多达13个通信接口
使用最多的器件:STM32F103系列、STM32 L1系列、STM32W系列。
PIC单片机
PIC单片机系列是美国微芯公司(Microship)的产品,共分三个级别,即基本级、中级、高级,是当前市场份额增长最快的单片机之一,CPU采用RISC结构,分别有33、35、58条指令,属精简指令集,同时采用Harvard双总线结构,运行速度快,它能使程序存储器的访问和数据存储器的访问并行处理,这种指令流水线结构,在一个周期内完成两部分工作,一是执行指令,二是从程序存储器取出下一条指令,这样总的看来每条指令只需一个周期,这也是高效率运行的原因之一,此外PIC单片机之所以成为一时非常热的单片机不外乎以下特点:
特点:
1. 具有低工作电压、低功耗、驱动能力强等特点。PIC系列单片机的I/O口是双向的,其输出电路为CMOS互补推挽输出电路。I/O脚增加了用于设置输入或输出状态的方向寄存器,从而解决了51系列I/O脚为高电平时同为输入和输出的状态。
2. 当置位1时为输入状态,且不管该脚呈高电平或低电平,对外均呈高阻状态;置位0时为输出状态,不管该脚为何种电平,均呈低阻状态,有相当的驱动能力,低电平吸入电流达25mA,高电平输出电流可达20mA。相对于51系列而言,这是一个很大的优点
3. 它可以直接驱动数码管显示且外电路简单。它的A/D为10位,能满足精度要求。具有在线调试及编程(ISP)功能。
不足之处:
其专用寄存器(SFR)并不像51系列那样都集中在一个固定的地址区间内(80~FFH),而是分散在四个地址区间内。只有5个专用寄存器PCL、STATUS、FSR、PCLATH、INTCON在4个存储体内同时出现,但是在编程过程中,少不了要与专用寄存器打交道,得反复地选择对应的存储体,也即对状态寄存器STATUS的第6位(RP1)和第5位(RP0)置位或清零。数据的传送和逻辑运算基本上都得通过工作寄存器W(相当于51系列的累加器A)来进行,而51系列的还可以通过寄存器相互之间直接传送,因而PIC单片机的瓶颈现象比51系列还要严重,这在编程中的朋友应该深有体会
相关问答
PLC与 单片机 有什么不同?都是计算机,有cpu存储器等计算机具有的必要元件。1.PLC是建立在单片机之上的产品,单片机是一种可编程的集成芯片,换句话来说,plc就是由单片机加上外围电路...
怎么才能看懂 单片机程序 ?学习C语言.通常单片机的编程语言是C学会看懂单片机的数据手册,通常单片机的编程需要频繁操作其IO端口,定时器这些资源,这就需要仔细阅读其数据手册,了解这些...
plc编程是不是也是对 单片机 编程?1.PLC是建立在单片机之上的产品,单片机是一种可编程的集成芯片,换句话来说,plc就是由单片机加上外围电路做成的,单片机开发式底层开发,比较麻烦,程序编写...
一个 单片机 的 程序 ,底层,中间层,上层。各是指什么?详细点啦,最好能距离, 比较 笨,看不懂?一般当程序比较大、功能比较繁多,需要进行结构化程序设计的时候,才会进行分层。分层的好处是可以将应用与硬件剥离,当硬件发生变更(移植,设计更改)时只需改...
52 单片机 和51 单片机 有那些区别?51单片机51单片机是对所有兼容Intel8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flashrom技术的发展,8004单片机取得...
单片机 该怎么“烧”,用什么应用 比较 好?不同的单片机其程序的烧写方式是不一样的,从主流型号的单片机来看,下载方式无非有这么几种:1)ISP烧写方式;2)SWD烧写/调试方式;3)JTAG烧写调试/方式。当然也...J...
每个 单片机 都可烧写 程序 吗?不知道你说的“烧写程序”是什么概念。如果是说单片机内部都有编制好的程序,那是没错的。如果是说自己把程序写进单片机,那不一定。单片机内部程序存储器,如...
八位机和三十二位 单片机 有什么区别[回答]共是十六位,占用两个字节……。你说的LED灯闪烁,不知是指的流水灯还是一只发光二极管在不停地闪烁?但不管是哪一种,有一点很重要。你在编写此程序时...
单片机 汇编 程序 和C 程序 哪个容易出bug?c程序更容易出现bug,高级语言在编写的时候容易出现赋值,指针指向的问题有时候会很容易出错c程序更容易出现bug,高级语言在编写的时候容易出现赋值,指针指向的...
单片机 编程和PLC编程有什么区别?一、区别:1、PLC是建立在单片机之上的产品,单片机是一种可编程的集成芯片。2、plc就是由单片机加上外围电路做成的,单片机开发式底层开发,程序编写用汇编...