电子说
在电子工程领域,微控制器是众多项目的核心组件,其性能和特性直接影响着整个系统的表现。今天,我们将深入探讨Microchip的PIC16F8X系列微控制器,全面了解它的特点、架构、应用以及开发支持等方面。
文件下载:PIC16LF83-04/P.pdf
PIC16F8X属于PIC16CXX家族,是低成本、高性能、CMOS、全静态的8位微控制器。该系列包含PIC16F83、PIC16F84、PIC16CR83、PIC16CR84等型号,还有扩展电压范围的PIC16LF8X和PIC16LCR8X。它采用先进的RISC架构,具有增强的核心功能、八级深堆栈和多个内外部中断源。与同类型的8位微控制器相比,PIC16F8X通常能实现2:1的代码压缩和高达4:1的速度提升(在20 MHz时)。
根据设备编号,有以下四种类型:
PIC16CXX采用哈佛架构,程序和数据从不同的内存中访问,拥有独立的程序内存总线和数据内存总线,这提高了带宽,并且允许指令和8位宽的数据字大小不同。PIC16CXX的操作码为14位宽,可实现单字指令。
通过两级流水线,指令的取指和执行重叠,除程序分支外,所有指令都能在一个周期内执行。PIC16F83和PIC16CR83可寻址512 x 14的程序内存,PIC16F84和PIC16CR84可寻址1K x 14的程序内存,且所有程序内存均为内部存储。
PIC16CXX包含一个8位的ALU和工作寄存器,ALU能执行算术和布尔函数,操作数通常为工作寄存器(W寄存器)和文件寄存器或立即常量。W寄存器用于ALU操作,不可寻址。ALU的操作可能会影响STATUS寄存器中的Carry(C)、Digit Carry(DC)和Zero(Z)位。
PIC16FXX的13位程序计数器可寻址8K x 14的程序内存空间。PIC16F83和PIC16CR83实现了前512 x 14(0000h - 01FFh),PIC16F84和PIC16CR84实现了前1K x 14(0000h - 03FFh)。访问超出物理实现地址的位置会导致回绕。
数据内存分为特殊功能寄存器(SFR)区域和通用寄存器(GPR)区域。SFR控制设备的操作,部分数据内存采用分页方式,通过STATUS寄存器中的控制位进行银行选择。GPR区域允许超过116字节的通用RAM。
PORTA是一个5位宽的锁存器,RA4是施密特触发器输入和开漏输出,其他RA端口引脚具有TTL输入电平。所有引脚都有数据方向位(TRIS寄存器),可配置为输入或输出。
PORTB是一个8位宽的双向端口,每个引脚都有弱内部上拉电阻,可通过单个控制位开启。PORTB的四个引脚(RB7:RB4)具有变化中断功能,可用于唤醒设备。
在使用双向I/O端口时,要注意读写操作的顺序和引脚状态的变化。连续对I/O端口进行操作时,要确保引脚电压稳定后再进行下一次读取操作,避免读取到错误的状态。
Timer0模块是一个8位的定时器/计数器,具有可读可写、8位软件可编程预分频器、内部或外部时钟选择、溢出中断等功能。定时器模式通过清除T0CS位选择,计数器模式通过设置T0CS位选择。
PIC16F8X有4个中断源:外部RB0/INT引脚、TMR0定时器溢出、PORTB<7:4>变化中断和数据EEPROM写入完成中断。中断控制寄存器(INTCON)记录中断请求,并包含全局和单个中断使能位。
配置位可用于选择设备的各种配置,如程序内存代码保护、数据内存代码保护、上电定时器使能、看门狗定时器使能和振荡器选择等。
PIC16F8X可在四种不同的振荡器模式下工作:LP(低功耗晶体)、XT(晶体/谐振器)、HS(高速晶体/谐振器)和RC(电阻/电容)。用户可通过编程两个配置位(FOSC1和FOSC0)来选择。
PIC16F8X有多种复位类型,包括上电复位(POR)、MCLR复位、WDT复位等。复位电路具有噪声滤波器,部分寄存器在不同复位条件下有不同的复位状态。
WDT是一个独立的片上RC振荡器,无需外部组件。在正常操作中,WDT超时会产生设备复位;在SLEEP模式下,WDT唤醒会使设备继续正常操作。WDT的超时周期可通过预分频器进行调整。
通过执行SLEEP指令,设备可进入低功耗模式。在SLEEP模式下,看门狗定时器被清除,振荡器驱动关闭,I/O端口保持之前的状态。设备可通过外部复位、WDT唤醒或中断事件从SLEEP模式中唤醒。
代码保护位可防止程序内存被非法读取,设备在代码保护状态下,CPU仍可读写数据EEPROM内存。四个内存位置(2000h - 2003h)被指定为ID位置,用于存储校验和或其他代码标识号。
PIC16F8X微控制器可在最终应用电路中进行编程,只需两条线用于时钟和数据,以及另外三条线用于电源、接地和编程电压。
PIC16CXX的指令集分为字节操作、位操作、文字和控制操作三类。所有指令通常在一个指令周期内执行,除非条件测试为真或程序计数器发生变化,此时需要两个指令周期。
Microchip为PIC16F8X提供了丰富的开发工具,包括PICMASTER实时在线仿真器、ICEPIC低成本在线仿真器、PRO MATE II通用编程器、PICSTART Plus入门级开发系统等,还有MPASM汇编器、MPLAB-SIM软件模拟器、MPLAB-C17 C编译器等软件工具。
文档详细列出了PIC16F83/84和PIC16CR83/84的绝对最大额定值、DC特性、AC特性等,包括电源电压范围、电流消耗、输入输出电压和电流等参数,为工程师在设计电路时提供了重要的参考依据。
Microchip的PIC16F8X系列微控制器以其高性能、低功耗、丰富的功能和良好的开发支持,在众多应用领域具有广泛的应用前景。无论是高速汽车和家电电机控制,还是低功耗远程传感器、电子锁、安全设备和智能卡等应用,PIC16F8X都能发挥出色的性能。作为电子工程师,深入了解和掌握这款微控制器的特性和使用方法,将有助于我们设计出更加优秀的电子系统。你在使用PIC16F8X过程中遇到过哪些有趣的问题或挑战呢?欢迎在评论区分享交流。
全部0条评论
快来发表一下你的评论吧 !