ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:685.50KB ,
资源ID:7881413      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7881413.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(8279控制键盘与显示实验.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

8279控制键盘与显示实验.docx

1、8279控制键盘与显示实验中国地质大学长城学院 电气工程及其自动化课程设计题 目 单片机原理与应用课程设计 (8279控制键盘与显示实验)系 别 信息工程系 学生姓名 专 业 电气工程及其自动化 学 号 * 指导教师 职 称 讲师 2012年6月19日摘要8279芯片是Intel公司生产的通用可编程键盘和显示器I/O接口芯片。利用8279.可实现对键盘/显示器的自动扫描,并识别键盘上闭合键的键号,这样可以大大节省CPU对键盘/显示器的操作时间,从而减轻CPU的负担,而且显示稳定,程序简单,不会出现错误操作。8279芯片还可以直接和单片机连接,使用它可简化系统的软件设计,提高CPU的工作效率,在

2、工程设计中日益被设计者采用。本设计中需要掌握在51系统中扩展8279键盘显示接口方法,并且掌握8279的工作原理和编程方法。关键词:8279芯片 键盘控制 八位逻辑数码管 显示1. 8279键盘显示1.1实验准备电子设计竞赛实训平台:(1)单片机核心板(2)键盘和数码管显示模块(3)通用转接板(4)串口线(两端均为DB9母孔);1.2实验内容本实验的主要内容是实现用单片机控制6段数码管、44矩阵键盘。程序功能如下:(1)实现单片机驱动键盘和数码管显示模块上的芯片8279,按下按键S1时,数码管循环显示“000000”到“999999”,每按一下加“111111”;(2)按下按键S2时,数码管循

3、环显示“999999”到“00000000”,每按一下减“11111111”;按下按键S3时,数码管显示“012345”(3)按下按键S4时,数码管显示“543210”;2.8279的内部功能模块2.1公用模块数据缓冲器是双向缓冲器,连接内、外总线,用于传送CPU和8279之间的命令或数据;I/O控制线是CPU对8279进行控制的引线。CS是8279的片选信号,CS=0时,8279才被允许读出或写入信息。WR、RD为来自CPU的控制信号。A0用于区别信息特性:A0=1时,表示数据缓冲器输入为指令、输出为状态字;A=0时,输入、输出皆为数据。2.2键盘功能模块 回复缓冲器、键盘去抖及控制来自RL

4、0RL3的8根回复线的回复信号,由回复缓冲器缓冲并锁存。在键盘工作方式中,回复线作为行列式键盘的行列输入线。在逐行列输入时,在逐行列扫描时,回复线用来搜索每一行列中闭合的键。当某一键闭合时,去抖电路被置位,延时等待10ms后,再检验该键是否继续闭和,并将该键的地址和附加的移位、控制状态一起形成键盘数据被送入8279内部FIFO(先进先出)存储器。键盘数据格式如下:D7 D6 D5 D4 D3 D2 D1 D0控制移位扫描回复控制和移位(D6、D7)的状态由两个独立的附加开关决定,而扫描(D5、D4、D3)和回复(D2、D1、D0)则是被按键置位的数据。D5、D4、D3来自动扫描计数器,是按下键

5、的行列编码,而(D7D7D7)则来自行/列计数器,它们是根据回复信号而确定的行/列编码。在传感器开关状态矩阵方式中,回复线的内容直接被送往和相应的传感器RAM(即FIFO存储器)。在选通输入方式中,回复线的内容在CNTL/STB线的脉冲上升沿被送入FIFO存储器。2.3显示功能模块显示RAM用来存储显示数据。容量为168位。在显示过程中,存储的显示数据轮流从显示寄存器输出。显示寄存器分别为A、B两组,OUTA03和OUTB03可以单独送数,也可以组成一个8位的字。显示寄存器的输出与显示扫描配合,不断从显示RAM中读出显示数据,同时轮流驱动被选中的显示器件,以达到多路复用的目的,使显示器件呈现稳

6、定的显示状态。显示地址寄存器用来寄存由CPU进行读/写显示RAM的地址,它可以由命令设定,也可以设置成每次读写或写入之后自动递减。3.8297芯片管脚引线功能及原理图 3.1引线管脚功能介绍如下:D0D7(数据总线):双向、三态总线,和系统数据总线相连;用于CPU和8279间的数据/命令传递。CLK(系统时钟):输入线,为8279提供内部时钟的输入端。RESET(复位):输入线,当RESET=1时,8279复位,其复位状态为:A0(数据选择):输入线。当A0=1时CPU写入数据为命令字,读出数据为状态字;A0=0时CPU读、写的字节均为数据。RD、WR(读、写信号):输入线。低电平有效,来自C

7、PU的控制信号,控制8279的读、写操作。IRQ(中断请求):输出线。高电平有效。在键盘工作方式中,当FIFO/传感器RAM存有数据时,IRQ为高电平。CPU每次从RAM中读出数据时,IRQ变为低电平。若RAM中仍有数据,则IRQ再次恢复高电平。在传感器工作方式中,每当检测到传感器状态变化时,IRQ就出现高电平。SL0SL3(扫描线):输出线。用来扫描键盘和显示器。它们可以编程设定为编码(4中取1)或译码输出(16取1)。RL0RL7(回复线):输入线。它们是键盘矩阵或传感矩阵的列(或行)信号输入线。SHIFT(移位信号):输入线、高电平有效。该输入信号是键盘数据的最高位(D7),通常用来扩充

8、键开关的功能,作为控制功能键用。在选通输入方式时,该信号的上升沿可将来自RL0RL7的数据存入FIFO RAM中。在传感器输入下,该信号无效。OUTA0OUTA3(A组显示信号):输出线。OUTB0OUTB3(B组显示信号):输出线。这两组引线都是显示数据输出线,与多位数字显示的扫描线SL0SL3同步,两组可以独立使用,也可以合并使用。BD(显示消隐):输出线。低电平有效。该信号在数字切换显示或使用消隐命令时,将显示消隐。3.2电路图4. 流程图及源程序4.1流程图4.2源程序#include#include#include /-8279端口定义-#define com XBYTE0X0001

9、/命令字地址#define dat XBYTE0X0000/数据口地址unsigned long data temp_r ; /频率值预存sfr AUXR = 0x8e;bit int_flag=0;/*中断标志位*/sbit clflag=ACC7;/ma步进值下标 unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; /数码管段码unsigned char i,temp;/temp用于存放临时命令状态字unsigned char key_value;/按键值/-主要函数-unsigned

10、 char keyin(void);/按键函数void setup_8279(void);/8279初始化void display_led(void); /数码管显示void delay(unsigned long i);/延时void serial_init(void);/串口初始化函数,用于调试void mode(void);unsigned char a,b,k,num;void f1(void); /f1f8写您所需要的功能函数,通过按键触发void f2(void);void f3(void);void f4(void);void f5(void);void f6(void);voi

11、d f7(void);void f8(void);/-主函数-void main(void) AUXR = 0x02;/*STC单片机关内部RAM和开ALE*/ IE=0; EA=0; EX0=1; /开外部中断 IT0=0; /-延时(必须加)- for(a=0;a5;a+) for(b=0;b50;b+) for(k=0;k50;k+); /- serial_init();/9600 8-N-1 setup_8279(); EA=1;/初始化 delay(1000); while(1) mode(); /delay(1000);/-数码管显示-void display_led(void)

12、for(i=0;i9) num=0; display_led( ); SBUF= key_value;void f2(void) num=num-1; if(num=255) num=9; display_led(); SBUF= key_value;void f3(void) for(i=0;i8;i+) com=0x80+i; /写显示RAM,p301 dat=dispcodei;/显示段码 delay(120); SBUF= key_value;void f4(void) for(i=0;iNew Project 启动工程建立向导。指定工程存储路径后,进入目标器件选择界面如图1-3所示。

13、选择目标器件后,点击“确认”,弹出对话框提示是否拷贝STARTUP.A51文件,点击“是”。一个工程至少包含一个源文件,可在此时建立新的源文件,也可以导入已有的源文件。在Source Group 1上单击鼠标右键,单击“Add File ToSource Group 1”,在弹出的对话框中寻找源文件“8279-display.C”,单击ADD按钮加入文件到工程中,加入完成后单击Close按钮关闭对话框。点击工具栏的options of target,在弹出的对话框中,选择output选项卡,勾选create HEX File,使得工程能够输出烧写进单片机的文件。点击确认保存选项。依次点击编译、

14、连接、重新编译连接按钮,编译、连接程序。如果有错误会在下面的输出区域显示。调整程序直到没有错误和警告发生。3打开下载软件STC_ISP_V486.exe,选择单片机类型STC89C58RD+,打开要下载的程序文件,选择下载用的串口编号,将串口线一段连接在电脑上,另一端接到单片机核心板的串口上,点击下载,根据最下面指示框的说明进行操作。6.个人总结本次设计是四人一组,实验设计中,能够感受到若是光靠自己的能力,是不能够完成这次设计的。自己分析原因:其一,没有对单片机了解不够详细,知识面欠缺。其二,自己做的许多过程有差误,不说自己到头来能否发现,即使发现,时间耽误太多了,自己过于粗心马虎。正是因为我

15、们是团体合作,有异议提出来,将错误及时解决,避免了很多设计的复杂性。当然,这次设计,其他的同学也提供了不少援助,当然,老师为我们课程设计的成功提供了很重要的帮助。有一些我们没有了解透彻的知识,求得老师支援。设计的成功很让我庆幸的是,我们这个四人的团队还是第一次合作,竟然能过如此的和谐,人人都能为实验设计提供必要的技术支持,相互配合也是相当的默契。再次感谢我的老师,感谢我的合作伙伴,当然,这次的实验设计也看到自己的不足,以后自己会更加努力的学习,相信自己以后会越来越棒。中国地质大学长城学院课程设计成绩评定表学生姓名学 号043班 级09级指导教师职 称高级工程师单 位课程设计题目: 8279控制键盘与显示实验课程设计内容提要 本实验的主要内容是实现用单片机控制7段数码管、44矩阵键盘。程序功能如下:(1)实现单片机驱动键盘和数码管显示模块上的芯片8279,按下按键S1时,数码管循环显示“00000000”到“99999999”,每按一下加“11111111”;(2)按下按键S2时,数码管循环显示“99999999”到“00000000”,每按一下减“11111111”;按下按键S3时,数码管显示“01234567”;(3)按下按键S4时,数码管显示“76543210”;评 语 总成绩指导老师

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1