1、单片机接口技术n并行接口n键盘显示器接口n串行接口nA/D转换nD/A转换并行接口n可编程并行接口芯片8255 n3个可编程8位并行I/O口n可编程多功能接口芯片8155 n2个8位I/O口n1个6位I/O口n256BYTE的RAMn1个14位计数器8255并行接口结构图 8255结构图 引脚图8255的逻辑结构框图和引脚图8255工作方式n三种基本工作方式n方式0:基本输入输出n方式1:选通输入输出n方式2:双向传送(仅PA口)n工作方式的选择由CPU送出的控制字寄存器选择 P207nPC口可以按位进行操作口可以按位进行操作n注意注意:端口端口C的下半部由的下半部由PC0PC3组成组成n端口
2、端口C的上半部由的上半部由PC4PC7组成组成端口选择表命令口地址:7FFFH ; PA:7FFCH ; PB:7FFDH; PC:7FFEH若按实验箱KC打向上则(Y5):命令口地址:0BFFFH ; PA:0BFFCH ; PB:0BFFDH; PC:0BFFEH ( 0A003H; PA:0A000H; PB:0A001H; PC:0A002H)编程要点n 初始化时要设置8255的工作方式及端口的输入输出n 端口地址的确定(根据电路原理图)n 端口访问用MOVX数码显示器nLED(Light Emitting Diode)数码管n共阳极数码管n共阴极数码管n每个显示字形对应一个二进制数码
3、,称为段码、字形码或显示码 n公共端称为位码电路图字型表 工作方式n数码与显示码之间要有转换方法:n硬件法:使用译码集成电路n软件法:使用查表法得到显示码n静态方式:恒定点亮n动态方式:每个一段时间点亮一次即轮流点亮n注意:导通电流和点亮时间比例。动态显示工作方法n硬件:n 段码控制线来控制显示字形(段码)n 公共极COM端(位码)n软件:n 查段码表n 实现各位轮流点亮 n注意 要根据数码管的大小,确定驱动电路,包括位码驱动和段码驱动75451逻辑图n75451可提供300mA的电流nY=AB电路图n注意接线柱LE0LE5是接在75451的输入端n本实验箱的数码管为共阴极数码管,经7406反
4、相驱动后,实际上相当共阳极数码管键盘n键盘是由若干个按键组成的开关矩阵n键盘上闭合键的识别n由专用的硬件电路实现称为编码键盘n由软件实现的成为非编码键盘键盘结构n列线Y轮流输出低电平,由行线X读入,若有键按下,则相应的行线电平为低n程序控制扫描方式n只有当单片机空闲时才调用键盘扫描子程序n定时扫描方式n利用定时器的溢出中断请求,每隔一定的时间对键盘扫描一次n中断扫描方式n提高CPU的效率,当键盘上有键闭合时产生中断请求单片机对非编码键盘的控制键盘处理程序n消除键抖动n判断有无键闭合n求闭合键的键号n判断闭合键有无释放n若释放结束处理键盘抖动键盘消抖动硬件消除抖动电路 软件消除抖动流程图n本实验
5、箱为2*8的矩阵键盘n07为第一行;8F为第二行n键盘显示器控制电路n采用专用键盘显示器接口芯片8279n可采用8255扩展并行口n采用8051的串行口扩展8279键盘显示器接口芯片n实现对键盘和显示器的自动扫描n识别闭合键的键号n完成显示器的动态扫描8279引脚及逻辑符号8279的内部结构工作原理n由SL0SL3输出键盘和显示器的扫描线n回复线RL0RL7作为键盘的列线以搜索闭合键将键盘数据送入FIFO存储器,n有键闭合时数据进入FIFO存储器,使IRQ置位向CPU申请中断。n显示缓冲区(RAM)存放显示数据的段码,数据轮流从显示寄存器输出,在SL0SL3的配合下,实现动态显示。(OUTA和OUTB)接口方法n控制线连接: 、 、 、A0、IRQ、CLK及RESETn信息交换:命令字、状态字(A0=1)和数据(A0=0);n口地址的确定:由 A0确定出两个端口地址nIRQ经反相器接INT0;CLK接时钟线(ALE)程序初始化n写入清除命令字(清除FIFO和显示RAM)n等待清除结束(100uS)(读状态字)n置键盘/显示方式字n设置外部时钟分频系数n中断初始化(触发方式、开中断)显示子程序n置写显示命令字n指向显示缓冲区n查表求出显示代码n显示完毕返回键盘中断服务程序n保护现场n置读FIFORAM命令字(仅读一个单元)n通过数据口读出键码n恢复现场n中断返回