可编程芯片
可以通过软件命令,控制芯片的工作方式
可以控制:
数据传输方向
输入、输出方式
可编程定时计数器8253
定时/计算器的工作基准是时钟脉冲
计数脉冲周期恒定–》定时
定时的时间长度取决于时钟脉冲的周期及脉冲数
8253芯片特点
可编程的逻辑器件
非通道型的接口,具有特定功能
可实现计数和定时
工作方式:
减法计数
计数值减为0时输出相应控制信号
输出控制信号的形式可以通过软件设置
外部引线及内部结构
连接系统段的主要引线
D0-D7
#CS
#RD
#WD
A0,A1
连接外设端的主要引线
CLK–时钟脉冲输入
GATE–门控信号输入
OUT–定时输出
内部结构特点
具有三个完全相同的、独立的计数/定时器
结构特点
内部三个计数器均为减法计数器
根据计数脉冲的频率及需要定时的时间长度确定计数初值
每个计数器含:16位初值寄存器、16位计数寄存器
外部引线及内部结构
三个可独立工作的16位定时/计数器,一个控制寄存器。
共占有4个端口地址
4个端口的地址编码
00的时候选择了计数器1,11的时候选择了控制寄存器
计数启动方式
软件启动–GATE段为高电平
硬件启动–GATE段有一个上升沿
工作方式
一共6中
方式0
软件启动,不自动重复计数
计数结束输出高电平
方式1
硬件启动,不自动重复计数
计数开始输出低电平,结束后又变高
计数一旦启动,GATE端及时变低也不好影响计数
可重复处罚,当计数到0后,不用再次写入计数初值,只要再次出现GATE上升沿,即可产生一个同样宽度的负脉冲
方式2
软、硬件启动,自动重复计数
计数到最后一个脉冲时输出低电平
方式3
软、硬件启动,自动重复计数
输出对称方波
方式4
软件启动,不自动重复计数
计数结束输出一个CLK宽度的低电平
方式5
硬件启动,不自动重复计数
波形与方式4相同
工作方式小结
需要两个写脉冲–两次写操作
一个写脉冲写入控制字
第二个写脉冲写入计数初值
不同的工作方式,有不同的计数启动方法
可根据对输出波形的要求,选择不同的工作方式
能输出连续波形的只有方式2,3
控制字
用于设定各个计数器的工作方式
最大BCD数:9999
最大16位二进制:FFFF
8255为减法计数器
最大计数初值:0
8253应用
硬件设计
与系统的连接
软件设计
初始化程序设计
写入控制字和计数初值
注意点:
每一次启动计数,都需要两次写操作:
写控制字
写计数器初值:
如果初值为8位字长,则一次写入,若初值为16位字长,则需要两次写入
每个计数器的控制命令均送入控制寄存器
各计数器的计数初值送到该计数器的计数寄存器及初值寄存器
初始化程序流程
当有两个以上计数器被应用时的初始化程序设计流程
第一种:
第二种:
例子
初始化程序: