关闭
关键部件

机器人开发常用芯片

单片机现在可谓是铺天盖地,种类繁多,让开发者们应接不暇,发展也是相当的迅速,从上世纪80年代,由当时的4位8位发展到现在的各种高速单片机。各个厂商们也在速度、内存、功能上此起彼伏,参差不齐。同时涌现出...

admin

admin

发布于 2017-03-01 阅读:474

        单片机现在可谓是铺天盖地,种类繁多,让开发者们应接不暇,发展也是相当的迅速,从上世纪80年代,由当时的4位8位发展到现在的各种高速单片机。各个厂商们也在速度、内存、功能上此起彼伏,参差不齐。同时涌现出一大批拥有代表性单片机的厂商:Atmel、TI、ST、MicroChip、ARM,国内的宏晶STC单片机也是可圈可点。其中,51、STM和AVR单片机最为常用!
        下面小瓦君为大家带来51、STM32和AVR单片机之间的优缺点比较及功能体现。
        (1) 51单片机。
        应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。
        特点:
        1. 从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手;
        2. 同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便;
        3. 乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。
        缺点:
        1. AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担;
        2. 虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋;
        3. 运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利;
        4. 51保护能力很差,很容易烧坏芯片。
        应用范围:目前在教学场合和对性能要求不高的场合大量被采用。
        使用最多的器件:8051、80C51。
 
        (2) STM32单片机。
        这是一款性价比超高的系列单片机,功能及其强大。其基于专为要求高性能、 低成本、低功耗的嵌入式应用专门设计的ARM Cortex-M内核,同时具有一流的外设:1μs的双12位ADC,4兆位/秒的UART,18兆位/秒的SPI等等,在功耗和集成度方面也有不俗的表现,由于其简单的结构和易用的工具再配合其强大的功能在行业中赫赫有名。
        特点:
        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系列。
 
        (3) AVR单片机。
        Atmel公司推出的较为新颖的单片机,其显著的特点为高性能、高速度、低功耗。它取消机器周期,以时钟周期为指令周期,实行流水作业。AVR单片机指令以字为单位,且大部分指令都为单周期指令。而单周期既可执行本指令功能,同时完成下一条指令的读取。通常时钟频率用4~8MHz,故 最短指令执行时间为250~125ns。AVR单片机能成为最近仍是比较火热的单片机。
        特点:
        1. AVR系列没有类似累加器A的结构,它主要是通过R16~R31寄存器来实现A的功能。在AVR中,由 X(由R26、R27组成)、Y(由R28、R29组成)、Z(由R30、R31组成)三个16位的寄存器来完成数据指针的功能(相当于有三组 DPTR),而且还能作后增量或先减量等的运行;
        2. AVR的专用寄存器集中在00~3F地址区间,无需像PIC那样得先进行选存储体的过程,使用起来比PIC方便。AVR的片内RAM的地址区间 为0~00DF(AT90S2313) 和0060~025F(AT90S8515、AT90S8535),它们占用的是数据空间的地址,这些片内RAM仅仅是用来存储数据的,通常不具备通用寄存器的功能;
        3. AVR的I/O脚类似PIC,它也有用来控制输入或输出的方向寄存器,在输出状态下,高电平输出的电流在10mA左右,低电平吸入电流20mA。
        缺点:
        1. 没有位操作,都是以字节形式来控制和判断相关寄存器位的;
        2. C语言与51的C语言在写法上存在很大的差异,这让从开始学习51单片机的朋友很不习惯;
        3. 通用寄存器一共32个(R0~R31),前16个寄存器(R0~R15)都不能直接与立即数打交道,因而通用性有所下降。
        使用最多的器件:ATUC64L3U、ATxmega64A1U、AT90S8515。
 

 

 
admin
admin

他很懒,什么都没有留下~