微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > PIC16C84单片机介绍

PIC16C84单片机介绍

时间:02-22 来源:互联网 点击:

)关闭中断,② 读端口B,则清0 RBIF位。

不相等的条件将继续配置1RBIF位为止。读PORTB将结束不相等条件,并允许RBIF被清0。这一特征为软件可配置上拉一起允许用户非常容易的使用PORTB作为键盘输入的接口。也就可以通过按键来唤醒系统。

注意:如果正在执行敛僮鳎琁/O引脚改变了信号,RBIF中断标志不可能被置成1。

建议用改变信号中断作为按键唤醒操作,PORTB只不用改变信号中断,建议不要用查询方式。图4-7是用端口作键盘接口的原理图其R1为ESD保护而新选择的电阻。使用此接口时,通过软件选择保持内部上拉,即RB4~RB7为高,设置为输入方式。RB0~RB3输出。任何键被按下,RB4~RB7的某一根线将改变从而产生中断。这个中断可以唤醒芯片,用这种方法可以节省计时器资源。

16个键

RB4 100

RB5

RB6

RB7

RB0

RB1

RB2

BR3

Rf

图4-7利用端口B的键盘接口图。

5-3 I/O编程的考虑

任何对端口的写操作,在内部都是读-修改-写。例如BCF,BSF 指令,先将寄存器读入CPU,执行位操作,将结果写回寄存器。例如对 PORTB执行BSF操作,首先将PORTB的8位读入CPU,在Bit5上进行BSF操 作,将这一位置1,将PORTB写回输出锁存器,如果这个时候PORTB的bit0用作输入引脚,则先将PORTB读入CPU,然后进行有关操作,结果写回PORTB的锁存器,并复盖了先前的内容,如果bit0一直保持在输入方式,这一操作是没有问题,但如果bit0在销后又改变成输出方式,数据锁存器的内容是未知的。

实际写I/O端口发生在一个指令周期的结束,而读一个I/O端口,其有效的数据必须在指令周期的开始就出现。因此,对一个I/O通道相断执行读,写操作,要考虑数据的可靠性。为此,应在这两条指令之间加入一条NOP指令就可以保证数据的可靠性。

六、计时器。

(TMRO)模式 TMRO计时/计数器模式具有如下特点:

·8位计时计数器

·可读,可写

·8位软件可编程的预分配器

·从FFH到00H产生溢出中断

·具有外部时钟的边沿选择

TMRO模式的简单框图与PIC16C6X系列相同。它可以经过清0 TOCs 位(即TION<5>)来选择计时器方式。在计时器方式,TMRO模式对每个指令周期加1(没有预分频器),如果对TMRO写操作,则计时器为加 (操作后两个周期被禁止。)

量TOCS为1(OPTION<5>)选择TMRO为计数器方式。这种方式下 TMRO将对RA4/TOCK1引脚上出现的上跳变或下跳变加1。清0TOSE(OPTION<4>)选择上跳变否则为下跳变。有关预分频器的使用与PIC16C6X系列相同。当TMRO在计时/计数器方式下其值由FFH到00H时产生溢出中断,这个溢出中断将置TOIF位为1。此中断可以TOIE位为0来屏蔽。要能再次产生中断,必须在中断服务程序中,通过软件使TOIF清0,TMRO中断不可以用来唤醒芯片。因为在SLEEP状态下,计时器是关闭的。

如何使用TMRO的外部时钟,外部时钟的同步问题,预分频器的使用等,参看PIC16C6X系列关于TMRO的技术性能。

七、数据EEPROM存储器

数据EEPROM存储器在满电源电压(VDD)时,正常操作期间是可读,可写的,这部分存储器不能直接映象到寄存器文件空间,只有通过专用功能寄存器经间接寻址来访问,有四个SFR用于读、写这些存储器,这些寄存器是EECON1;EECON2;EEDATA;EEDAR。

其中EEDATA用来保持8位的读/写数据。EEADR用来保持正在访问 的EEPROM单元的地址。PIC16C84具有64个字节的EEPROM,其单元的地 址范围是00H-3FH。

EEPROM允许一次读/写一个字节。一个字节的写入将自动擦除该单元,写入新的内容(在写入之前擦除)。EEPROM数据存储器是高 速率的擦/写周期,写入时间正常为10ms,由芯片的计时器控制。实 际写入时间与所加电压,温度,芯片等有关。严格的时间请参看芯片的AC说明。当器件是在代码保护时,只有CPU可以完成数据存储器的读 /写。即器件的编程器的不再访问存储器(外部读/写被关闭)。

6 连接的考虑

因为模拟输入用了ESD保护,它们有反偏二极管连到VDD和VSS。这就要求模拟输入电压应在VDD和VSS之间。

如果模拟输入电压超过了最大值的0.6V以上的范围,二极管可能变为正向导通,如果输入电流超过了说明书上的规定,它可能破坏器件。有些时候把外部的RC滤波器加在输入信号上。要求选用的电阻R要保证总的信号源电阻不超过10K,任何在模拟信号上的其它的附加元件均应有非常小的漏电流。

7.变换功能

理论上A/D变换器的变换功能如下。

当模拟输入信号电压是1位L sb的电压时(或是VREF/256)第一次变换就发生。

8 A/D变换工作的流程图

表2-4 PIC16C74/73的A/D变换所涉及的寄存器

地址 名称 bit7 bit6 bit5 bit4 bit3 bit 2 bit1 bit0

0B/8B IN

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top