PIC16F72:8位CMOS FLASH微控制器的深度剖析
在电子工程师的日常设计中,选择一款合适的微控制器至关重要。PIC16F72作为Microchip公司推出的28引脚、8位CMOS FLASH微控制器,凭借其丰富的功能和出色的性能,在众多应用场景中得到了广泛应用。今天,我们就来深入探讨一下这款微控制器的特点和应用。
文件下载:PIC16LF72-I ML.pdf
一、器件概述
PIC16F72属于PIC系列的中档产品,具有高性能的RISC CPU。它只有35条单字指令,易于学习和掌握。除了程序分支指令为双周期外,其他指令均为单周期执行,大大提高了执行效率。其工作速度范围为DC - 20 MHz时钟输入,对应DC - 200 ns的指令周期,拥有2K x 14位的程序存储器和128 x 8字节的数据存储器(RAM),并且引脚与PIC16C72/72A和PIC16F872兼容,方便进行升级和替换。
二、存储器组织
2.1 程序存储器
PIC16F72的程序存储器有13位的程序计数器,可寻址范围为0000h - 07FFh的8K x 14程序存储空间。复位向量位于0000h,中断向量位于0004h。在进行CALL和GOTO指令时,需要注意地址的设置,不过该器件会忽略分页位PCLATH<4:3>。
2.2 数据存储器
数据存储器被划分为多个存储体,包含通用寄存器和特殊功能寄存器。通过STATUS寄存器中的RP1和RP0位来选择存储体,每个存储体最大可扩展到7Fh(128字节)。特殊功能寄存器用于控制CPU和外设模块的操作,不同的寄存器在不同的操作中发挥着关键作用。
三、外设特性
3.1 定时器模块
- Timer0:8位定时器/计数器,具有8位软件可编程预分频器,可选择内部或外部时钟源,溢出时可产生中断。
- Timer1:16位定时器/计数器,带有预分频器,可在SLEEP模式下通过外部晶体/时钟进行递增。它可以工作在定时器、同步计数器和异步计数器三种模式下。
- Timer2:8位定时器,具有8位周期寄存器、预分频器和后分频器,可用于产生PWM信号。
3.2 捕获、比较、PWM(CCP)模块
该模块具有16位捕获功能,最大分辨率为12.5 ns;16位比较功能,最大分辨率为200 ns;以及10位PWM功能。在不同的模式下,它可以实现对外部信号的捕获、比较和PWM输出控制。
3.3 同步串行端口(SSP)模块
支持SPI和I²C两种通信模式,可用于与其他外设或微控制器进行通信。在SPI模式下,可实现8位数据的同步收发;在I²C模式下,可实现主从设备之间的通信。
3.4 模拟 - 数字转换器(A/D)模块
具有5个输入通道,可将模拟输入信号转换为8位数字信号。该模块可以在SLEEP模式下工作,只需将A/D转换时钟设置为内部RC振荡器即可。
四、特殊功能
4.1 复位机制
PIC16F72支持多种复位方式,包括上电复位(POR)、MCLR复位、WDT复位和欠压复位(BOR)。不同的复位方式会对寄存器产生不同的影响,通过STATUS和PCON寄存器中的相关位可以判断复位的类型。
4.2 中断系统
该器件具有多达8个中断源,通过INTCON、PIR1和PIE1等寄存器来控制中断的使能和标志位。在中断服务程序中,需要注意清除相应的中断标志位,以避免递归中断。
4.3 看门狗定时器(WDT)
WDT是一个独立的RC振荡器,可在正常操作和SLEEP模式下工作。当WDT超时,会导致设备复位或唤醒。可以通过配置位永久禁用WDT。
4.4 低功耗模式(SLEEP)
通过执行SLEEP指令,设备可以进入低功耗模式。在该模式下,振荡器停止工作,I/O端口保持原状态。可以通过外部复位、WDT唤醒或中断来唤醒设备。
4.5 代码保护
通过配置位可以对程序存储器进行代码保护,防止程序被非法读取。
4.6 ID存储区
四个内存位置(2000h - 2003h)可用于存储校验和或其他代码标识号,这些位置在正常执行时不可访问,但在编程/验证时可读可写。
4.7 在线串行编程(ICSP)
PIC16F72支持在线串行编程,只需使用两条线进行时钟和数据传输,以及三条线进行电源、接地和编程电压,方便在最终应用电路中对微控制器进行编程。
五、开发支持
Microchip为PIC16F72提供了丰富的开发工具,包括MPLAB集成开发环境、MPASM汇编器、MPLAB C17和MPLAB C18 C编译器、MPLAB SIM软件模拟器、MPLAB ICE在线仿真器、MPLAB ICD在线调试器、PRO MATE II通用设备编程器、PICSTART Plus入门级开发编程器以及各种低成本演示板。这些工具可以帮助工程师更高效地进行开发和调试。
六、电气特性
在使用PIC16F72时,需要注意其电气特性,包括电源电压范围、输入输出电压、电流等参数。同时,还需要关注不同振荡器模式下的频率和功耗特性,以确保设备在不同的工作条件下都能稳定运行。
七、总结
PIC16F72是一款功能强大、性能稳定的8位微控制器,具有丰富的外设和特殊功能,适用于各种应用场景。通过合理利用其存储器组织、外设特性和特殊功能,工程师可以设计出高效、可靠的电子系统。在实际应用中,还需要根据具体需求进行详细的配置和调试,以充分发挥其优势。
希望以上内容对各位电子工程师在使用PIC16F72进行设计时有所帮助。如果你在使用过程中遇到任何问题,欢迎在评论区留言讨论。
-
微控制器
+关注
关注
49文章
8863浏览量
165694 -
电子设计
+关注
关注
42文章
2947浏览量
49921
发布评论请先 登录
8位微控制器 -MCU PIC16F1503-I/SL
PIC16F72:8位CMOS FLASH微控制器的深度剖析
评论