现在主流单片机都有哪些
51单片机
应用最广泛的8位单片机当然也是初学者们最容易上手学习的单片机,最早由Intel推出,由于其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“经典”,为以后的其它单片机的发展奠定了基础。
51单片机之所以成为经典,成为易上手的单片机主要有以下特点:
特性:
1. 从内部的硬件到软件有一套完整的按位操作系统,称作位处理器,处理对象不是字或字节而是位。不但能对片内某些特殊功能寄存器的某位进行处理,如传送、置位、清零、测试等,还能进行位的逻辑运算,其功能十分完备,使用起来得心应手。
2. 同时在片内RAM区间还特别开辟了一个双重功能的地址区间,使用极为灵活,这一功能无疑给使用者提供了极大的方便,
3. 乘法和除法指令,这给编程也带来了便利。很多的八位单片机都不具备乘法功能,作乘法时还得编上一段子程序调用,十分不便。
缺点:(虽然是经典但是缺点还是很明显的)
1. AD、EEPROM等功能需要靠扩展,增加了硬件和软件负担
2. 虽然I/O脚使用简单,但高电平时无输出能力,这也是51系列单片机的最大软肋
3. 运行速度过慢,特别是双数据指针,如能改进能给编程带来很大的便利
4. 51保护能力很差,很容易烧坏芯片
应用范围:
目前在教学场合和对性能要求不高的场合大量被采用
使用最多的器件:8051、80C51
了解8051微控制器全系列产品:全面剖析久经验证的8051架构微控制器
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系列
了解MSP430全系类产品:全面直击MSP430微控制器全家族成员
TMS单片机
这里也提一下TMS系列单片机,虽不算主流。由TI推出的8位CMOS单片机,具有多种存储模式、多种外围接口模式,适用于复杂的实时控制场合。虽然没STM32那么优秀,也没MSP430那么张扬,但是TMS370C系列单片机提供了通过整合先进的外围功能模块及各种芯片的内存配置,具有高性价比的实时系统控制。同时采用高性能硅栅CMOS EPROM和EEPROM技术实现。低工作功耗CMOS技术,宽工作温度范围,噪声抑制,再加上高性能和丰富的片上外设功能,使TMS370C系列单片机在汽车电子,工业电机控制,电脑,通信和消费类具有一定的应用
应用最多的器件:TMS370C256A
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系列
了解STM32全系类产品:沙场点兵STM32微处理器全系列成员。
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系列还要严重,这在编程中的朋友应该深有体会
使用最多的器件:PIC16F873、PIC16F877
AVR单片机
AVR单片机是Atmel公司推出的较为新颖的单片机,其显著的特点为高性能、高速度、低功耗。它取消机器周期,以时钟周期为指令周期,实行流水作业。AVR单片机指令以字为单位,且大部分指令都为单周期指令。而单周期既可执行本指令功能,同时完成下一条指令的读取。通常时钟频率用4~8MHz,故最短指令执行时间为250~125ns。AVR单片机能成为最近仍是比较火热的单片机,主要的特点:
特点:
1. AVR系列没有类似累加器A的结构,它主要是通过R16~R31寄存器来实现A的功能。在AVR中,没有像51系列的数据指针DPTR,而是由X(由R26、R27组成)、Y(由R28、R29组成)、Z(由R30、R31组成)三个16位的寄存器来完成数据指针的功能(相当于有三组DPTR),而且还能作后增量或先减量等的运行,而在51系列中,所有的逻辑运算都必须在A中进行;而AVR却可以在任两个寄存器之间进行,省去了在A中的来回折腾,这些都比51系列出色些
2. AVR的专用寄存器集中在00~3F地址区间,无需像PIC那样得先进行选存储体的过程,使用起来比PIC方便。AVR的片内RAM的地址区间为0~00DF(AT90S2313) 和0060~025F(AT90S8515、AT90S8535),它们占用的是数据空间的地址,这些片内RAM仅仅是用来存储数据的,通常不具备通用寄存器的功能。当程序复杂时,通用寄存器R0~R31就显得不够用;而51系列的通用寄存器多达128个(为AVR的4倍),编程时就不会有这种感觉。
3. AVR的I/O脚类似PIC,它也有用来控制输入或输出的方向寄存器,在输出状态下,高电平输出的电流在10mA左右,低电平吸入电流20mA。这点虽不如PIC,但比51系列还是要优秀的…
缺点:
1. 是没有位操作,都是以字节形式来控制和判断相关寄存器位的
2. C语言与51的C语言在写法上存在很大的差异,这让从开始学习51单片机的朋友很不习惯
3. 通用寄存器一共32个(R0~R31),前16个寄存器(R0~R15)都不能直接与立即数打交道,因而通用性有所下降。而在51系列中,它所有的通用寄存器(地址00~7FH)均可以直接与立即数打交道,显然要优于前者。
使用最多的器件:ATUC64L3U、ATxmega64A1U、AT90S8515
STC单片机
说到STC单片机有人会说到,STC也能算主流,估计要被喷了~~我们基于它是国内还算是比较不错的单片机来说。STC单片机是宏晶生产的单时钟/机器周期的单片机,说白了STC单片机是51与AVR的结合体,有人说AVR是51的替代单片机,但是AVR单片机在位控制和C语言写法上存在很大的差异。而STC单片机洽洽结合了51和AVR的优点,虽然功能不及AVR那么强大,但是在AVR能找到的功能,在STC上基本都有,同时STC单片机是51内核,这给以51单片机为基础的工程师们提供了极大的方便,省去了学习AVR的时间,同时也不失AVR的各种功能…
STC单片机是高速、低功耗、超强抗干扰的新一代8051单片机51单片机,指令代码完全兼容传统8051,但速度快8~12倍,内部集成MAX810专用复位电路。4路PWM 8路高速10位A、D转换,针对电机电机 的供应商控制,强干扰场合,成为继51单片机后一个全新系列单片机…
特性:
1. 下载烧录程序用串口方便好用,容易上手,拥有大量的学习资料及视频,最著名的要属于杜老师的那个视频了,好多对单片机有兴趣的朋友都是通过这个视频入门的,同时具有宽电压:5.5~3.8V,2.4~3.8V, 低功耗设计:空闲模式,掉电模式(可由外部中断唤醒)
2. STC单片机具有在应用编程,调试起来比较方便;带有10位AD、内部EEPROM、可在1T/机器周期下工作,速度是传统51单片机的8~12倍,价格也较便宜
3. 4 通道捕获/比较单元,STC12C2052AD系列为2通道,也可用来再实现4个定时器或4个外部中断,2个硬件16位定时器,兼容普通8051的定时器。4路PCA还可再实现4个定时器,具有硬件看门狗、高速SPI通信端口、全双工异步串行口,兼容普通8051的串口,同时还具有先进的指令集结构,兼容普通8051指令集
使用一个电压源控制四个继电器
视频加载中...
如何使用一个电压源控制四个继电器01 四个继电器
一、前言
为了能够对多点电压进行测量, 昨天设计了这款单电源控制四个继电器的电路板。 利用一个单片机检测工作电压的大小, 根据电压的范围分别接通四个继电器。 利用了单面PCB板设计, 一分钟之后获得测试电路板。 对其进行焊接, 之后进行单片机编程。 单片机为 STC8G, 封装为 SOP8. 下面对其软件进行开发。
二、软件调试
首先编写一个最简单的测试程序, 周期改变LED状态, 指示着单片机工作状态。 通过STC的串口下载器, 将程序下载到测试电路板。 验证了电路板单片机下载程序功能正常。
▲ 图1.2.1 测试程序运行状态
测试电路板上的微型继电器的动作。 编写一个继电器流水灯, 依次闭合四个继电器。 利用它的输出端口驱动LED。 通过测试可以知道, 现在输出连接的端口是继电器上的常闭端口, 当继电器通电之后, 继电器打开。 在设计的时候, 忽略继电器的常闭和常开输出端口。
在SOP8封装的8G1k 单片机中, 它的ADC的参考电压内部连接到单片机的工作电源上了。 为了能够测量工作电压的高低, 通过对于内部 15 通道的 1.19V的参考电压进行测量, 在不同的工作电压下, 也就是不同的 ADC参考电压下, 这个 1.19V的参考电源的读数会不同。 通过软件采集可以知道, 对于从 4.25V 到5V之间的不同工作电压, 读取的1.19V参考电压的ADC取值会随着 VCC的降低而升高。 这是外部通过两个相同电阻将 VCC 分压一半之后,输入 ADC 第三通道, 可以看到它的读数始终为 512。 所以这里显示了自己在设计电路是犯的一个错误, 实际上这个外部的电源分压电路是不需要的。 这样也可以多出一个应用端口。
根据1.19V参考电压测量结果, 分成四个范围, 分别接通四个继电器的动作。 当外部电压过低, 比如4V的时候, 断开所有的开关。 现在工作电压5V, 可以看到第一个继电器吸合。 将电压修改为4.75V, 第二个继电器闭合。 修改工作电压为5V, 第三个继电器吸合, 将工作电压修改为 4.25V, 第四个继电器吸合。 最后也测试了当电压小于4V的时候, 所有的继电器都断开。
※ 总 结 ※
本文记录了一个单电压源控制四个继电器的设计方案。 利用该电压源的可编程特性, 可以选择控制四个继电器的闭合和打开动作。
C51\STC\Test\2023\REL4V11\REL4V11.uvproj
■ 相关文献链接:
如何使用一个电压源控制四个继电器● 相关图表链接:
图1.2.1 测试程序运行状态相关问答
51 单片机 有 几个串口 -ZOL问答普通51只有一个串口,有些51单片机有2个串口。比如STC12C5A60S2就有两个串口。两位数码管动态显示,外部中断0,+计数,外部中断1,-计数,供参考以下是单片机实...
cortex m3有几 个串口 ?一般有两个。有些单片机有4个,有些6个。这个看单片机设计公司怎么弄,这些外设的多少。一般有两个。有些单片机有4个,有些6个。这个看单片机设计公司怎么弄,这...
只有单 串口的单片机 如何实现与两 个串口 模块通信?两个单片机之间串口通信,如果是用proteus仿真,最简单了,两个单片机的RXD,TXD交叉连接就行了。要是实物最好用RS232连接通信,距离可以达到几十米。再远点距离...
51系列 单片机 有俩 个串口的 吗?型号是?w77e58、w77e516,所有w77系列的单片机都是双串口stc12c5a60s2,实际上只要以s2结尾的都是双串口w77e58、w77e516,所有w77系列的单片机都是双串口stc12c5...
【 单片机的 问题】“ 串口 ”和“串行接口”是一回事吗 - 懂得口语中的“串口”多数情况下是指RS232/TTL电平的UART接口,有时候也用来指计算机的COM口(RS232电平的UART接口)。“串行接口”这个概念就广泛的多了,...
单片机 中的 串口 是什么?单片机中的串口是口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口(SerialInterface)是指数据一位一位地顺序传送,其特点是通信...
单片机串口 通信原理[回答]我有一个8255的0-99的计时的,不知道对你有没有帮助;164串并转换程序,00~99循环显示;DCLK----PC0,DIN----PC1;FUNCTIONCODEMY_STACKSEGMEN...
单片机串口 通信原理我有一个8255的0-99的计时的,不知道对你有没有帮助;164串并转换程序,00~99循环显示;DCLK----PC0,DIN----PC1;FUNCTIONCODEMY_STACKSEGMEN...
stm32 单片机 usart 串口 上电后,单片机供电回路有3v电压,单片机程序部分工作原因?Uart2k口电平为高电平输入,通过内部钳位二极管流到VCC,给MCU供电,使其工作。Uart2k口电平为高电平输入,通过内部钳位二极管流到VCC,给MCU供电,使其工作。
单片机 上有多路 串口 一般哪路用作调试?一般是用第一路串口做调试,因为第一路串口使用频率高,为默认串口。一般是用第一路串口做调试,因为第一路串口使用频率高,为默认串口。