什么是PIC单片机?有什么优点与缺点?

2021-03-30 17:40:33 hongling

PIC单片机是由microchip于1993年开发的,PIC表示外围接口控制器。最初,它是为支持PDP计算机控制其外围设备而开发的,因此被称为外围设备接口设备。与其他单片机相比,这些单片机非常快速且易于执行程序。PIC单片机架构基于哈佛架构。PIC单片机由于易于编程、可用性高、易于与其他外设接口传输、低成本、庞大的用户群和串行编程能力等而很受欢迎。

我们知道单片机是一个集成芯片,它由CPU、RAM、ROM、定时器和计数器等组成。以同样的方式,PIC单片机体系结构由RAM,ROM,CPU,定时器,计数器组成,并支持诸如SPI,CAN和UART,用于与其他外设接口。目前,PIC单片机因其低功耗,高性能和易于使用的支持硬件和软件工具(例如编译器、调试器和仿真器)而广泛用于工业目的。

一、什么是PIC单片机?

PIC(可编程接口控制器)单片机是世界上最小的单片机,可以对其进行编程以执行各种任务。这些单片机可在许多电子设备中找到,例如电话、计算机控制系统、警报系统、嵌入式系统等。

每个PIC单片机架构都由一些寄存器和堆栈组成,其中寄存器用作随机存取存储器(RAM),并且堆栈保存返回地址。PIC单片机的主要功能是RAM,闪存,定时器/计数器,EEPROM,I/O端口,USART,CCP(捕获/比较/PWM模块),SSP,比较器,ADC(模数转换器),PSP (并行从端口),LCD和ICSP(在线串行编程)根据内部架构,将8位PIC单片机分为四种类型,例如基线PIC,中端PIC,增强型中端PIC和PIC18。

二、PIC单片机的架构

PIC单片机架构包括CPU,I/O端口,存储器组织,A/D转换器,定时器/计数器,中断,串行通信,振荡器和CCP模块,下面将详细讨论。

PIC单片机的架构


1.CPU(中央处理器)

它与其他单片机CPU没什么不同,PIC单片机CPU由ALU,CU,MU和累加器等组成。算术逻辑单元主要用于算术运算和进行逻辑决策。存储器用于存储处理后的指令。为了控制内部和外部外围设备,使用了与CPU连接的控制单元,并使用累加器存储结果和进一步处理。

2.内存分类

PIC单片机架构中的存储器模块由RAM(随机存取存储器),ROM(只读存储器)和STACK组成。

随机存取存储器(RAM)

RAM是不稳定的存储器,用于将数据临时存储在其寄存器中。RAM存储器分为两个存储区,每个存储区由许多寄存器组成。RAM寄存器分为两种类型:特殊功能寄存器(SFR)和通用寄存器(GPR)。

(1)通用寄存器(GPR)

这些寄存器仅用于通用目的,顾名思义。例如,如果要使用PIC单片机将两个数相乘。通常,我们使用寄存器将数字相乘并将其存储在其他寄存器中。因此,这些寄存器没有任何特殊功能,CPU可以轻松访问寄存器中的数据。

(2)特殊功能寄存器

这些寄存器仅用于特殊目的,正如名称SFR所暗示的那样。这些寄存器将根据分配给它们的功能执行,并且不能用作普通寄存器。例如,如果您不能使用状态寄存器来存储数据,则这些寄存器用于显示程序的操作或状态。因此,用户无法更改SFR的功能。

(3)只读存储器(ROM)

只读存储器是稳定的存储器,用于永久存储数据。在PIC微控制器架构中,架构ROM根据微控制器执行的程序存储指令或程序 。ROM也称为程序存储器,其中用户将为微控制器编写程序并将其永久保存,最后该程序由CPU执行。所述微控制器的性能取决于指令,这是由CPU执行。

(4)电可擦可编程只读存储器(EEPROM)

在普通ROM中,我们只能编写一次程序,而不能多次使用单片机。但是,在EEPROM中,我们可以对ROM进行多次编程。

(5)flash闪存

闪存也是可编程只读存储器(PROM),在其中我们可以读取,写入和擦除程序数千次。通常,PIC单片机使用这种类型的ROM。

3.堆栈

发生中断时,首先PIC单片机必须执行中断和现有的过程地址。然后正在执行的存储在堆栈中。完成中断的执行后,单片机 借助存储在堆栈中的地址的地址调用该过程,并执行该过程。

4.I/O端口

PIC16系列包含五个端口,例如端口A,端口B,端口C,端口D和端口E。

端口A是一个16位端口,可以根据TRISA(Tradoc Intelligence支持活动)寄存器的状态用作输入或输出端口。
端口B是8位端口,可用作输入和输出端口。
端口C是8位,输出操作的输入由TRISC寄存器的状态决定。
端口D是一个8位端口,用作连接到微处理器BUS的从端口。
端口E是一个3位端口,用于向模数转换器提供控制信号的附加功能。

5.总线

BUS用于将数据从一个外围设备传输到另一个外围设备。它分为两种类型,例如数据总线和地址。

PIC单片机总线


数据总线: 仅用于传输或接收数据。
地址总线:地址总线用于将存储器地址从外围设备传输到CPU。I/O引脚用于连接外围设备。UART和USART都是串行通信协议,用于连接GSM、GPS、蓝牙、IR等串行设备。

6.A/D转换器

该模数转换器的主要目的是将模拟电压值转换为数字电压值。PIC单片机的A/D模块由用于28引脚器件的5个输入和用于40引脚器件的8个输入组成。模数转换器的操作由ADCON0和ADCON1特殊寄存器控制。转换器的高位存储在寄存器ADRESH中,转换器的低位存储在寄存器ADRESL中。为此,需要5V的模拟参考电压。

7.计时器/计数器

PIC单片机具有四个定时器/计数器,其中一个8位定时器和其余定时器可以选择8位或16位模式。计时器用于生成精度动作,例如,在两次操作之间创建特定的时间延迟。

8.中断

PIC单片机包含20个内部中断和三个外部中断源,它们与ADC,USART,定时器等不同的外设相关。

9.串行通讯

串行通信是一种通过通信通道顺序一次传输一位数据的方法。

USART:名称USART代表通用同步和异步接收器与发送器,它是两种协议的串行通信。它用于相对于时钟脉冲通过一条导线逐位发送和接收数据。PIC单片机具有两个引脚TXD和RXD。这些引脚用于串行发送和接收数据。
SPI协议:术语SPI代表串行外围设备接口。该协议用于在PIC单片机与其他外设(例如SD卡,传感器和移位寄存器)之间发送数据。PIC单片机支持公共时钟源上两个设备之间的三线SPI通信。SPI协议的数据速率高于USART。
I2C协议: 术语I2C代表内部集成电路,它是一个串行协议,用于连接低速设备,例如EEPROM,单片机,A/D转换器等。PIC单片机支持两线接口或两个之间的I2C通信可用作主设备和从设备的设备。

10.震荡器

振荡器用于产生时序。Pic单片机由外部振荡器(例如RC振荡器或晶体振荡器)组成。晶体振荡器连接在两个振荡器引脚之间。电容器的值连接到决定振荡器工作模式的每个引脚。这些模式为晶振模式,高速模式和低功耗模式。对于RC振荡器,电阻和电容器的值确定时钟频率,时钟频率范围为30KHz至4MHz。

11.CCP模块

CCP模块的名称代表捕获/比较/PWM,它在三种模式下工作,例如捕获模式,比较模式和PWM模式。

捕获模式: 捕获模式捕获信号到达的时间,或者说,当CCP引脚变为高电平时,它捕获Timer1的值。
比较模式:比较模式用作模拟比较器。当timer1值达到某个参考值时,它将生成一个输出。
PWM模式: PWM模式提供具有10位分辨率和可编程占空比的脉宽调制输出。

PIC单片机的优点:

(1)PIC单片机是一致的,并且PIC百分比的错误率非常低。由于使用RISC架构,PIC单片机的性能非常快。
(2)与其他单片机相比,功耗非常小,编程也非常容易。
(3)无需任何额外电路即可轻松连接模拟设备。

PIC单片机的缺点:

(1)由于使用RISC架构,因此程序的很长(35条指令)。
(2)存在一个累加器,无法访问程序存储器。