网站大量收购独家精品文档,联系QQ:2885784924

单片机控制系统开发训练 -授课对象电气自动化技术 180102 主讲教师刘旭东 电气工程系-1743039516137.ppt

单片机控制系统开发训练 -授课对象电气自动化技术 180102 主讲教师刘旭东 电气工程系-1743039516137.ppt

  1. 1、本文档共44页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

保证正确时序是HD7279A正常工作前提条件。当选定振荡元件RC和单片机晶振后,应调节延时时间,使时序中的T1~T8满足表5-9要求。由表中数值可知HD7279A速度,应仔细调整HD7279A时序,使其运行时间接近最短。3.AT89S51单片机与HD7279A接口设计(1)接口电路图5-32为单片机通过HD7279A控制8个数码管及64键矩阵键盘的接口电路。晶振频率为12MHz。上电后,HD7279A约经过15~18ms时间才进入工作状态。单片机通过P1.3脚检测KEY*脚电平,来判断键盘矩阵中是否有按键按下。HD7279A采用动态循环扫描方式,如普通数码管亮度不够,可采用高亮度或超高亮度数码管。图5-32AT89S51单片机与HD7279A的接口电路图5-32所示电路,HD7279的3、5、26引脚悬空。(2)程序设计控制数码管显示及键盘监测的参考程序如下:#includereg51.h//以下定义各种函数voidwrite7279(unsignedchar,unsignedchar);//写7279unsignedcharread7279(unsignedchar);//读7279voidsend_byte(unsignedchar);//发送1字节unsignedreceive_byte(void);//接收1字节voidlongdelay(void); //长延时函数voidshortdelay(void); //短延时函数voiddelay10ms(unsignedchar);//延时“unsignedchar”个//10ms函数unsignedcharkey_number,i,j;//变量及I/O口定义unsignedinttmp;unsignedlongwait_cnter;sbitCS=P1^0; //HD7279A的CS端连P1.0sbitCLK=P1^1; //HD7279A的CLK端连P1.1sbitDATA=P1^2; //HD7279A的DATA端连P1.2sbitKEY=P1^3; //HD7279A的KEY端连P1.3//HD7279A命令定义#defineRESET0xa4; //复位命令 #defineREADKEY0x15; //读键盘命令 #defineDECODE00x80; //方式0译码命令 #defineDECODE10xc8; //方式1译码命令 #defineUNDECODE0x90;//不译码命令 #defineSEGON0xe0; //段点亮命令 #defineSEGOFF0xc0; //段关闭命令 #defineSEGOFF0xc0;//段关闭命令 #defineBLINKCTL0x88; //闪烁控制命令 #defineTEST0xbf;//测试命令 #defineRTL_CYCLE0xa3;//循环左移命令 #defineRTR_CYCLE0xa2;//循环右移指令 #defineRTL_UNCYL0xa1;//左移命令 #defineRTR_UNCYL0xa0;//右移命令 voidmain(void) //主程序 { while(1){ for(tmp=0;tmp0x3000;tmp++);//上电延时send_byte(RESET);//发送复位HD7279A命令send_byte(TEST);//发送测试命令,LED全部点亮并闪烁 for(j=0;j5;j++);//延时约5s { delay10ms(100); }send_byte(RESET);//发送复位HD7279A的命令,关闭显示器显示,键盘监测:如有键按下,则将键码显示出来,如10ms内无键按下或按//下0键,则往下执行wait_cnter=0;key_number=0xff;write7279(BLINKCTL,0xfc);//把第1、2两位设为闪烁显示write7279(UNDECODE,0x08);//在第1位上显示下划“_”write7279(UNDECODE+1,0x08);//在第2位上显示下划线“_”do{ if(!key)//如果键盘中有键按下{ key_number=read7279(READKEY);//读出键码write7279(

您可能关注的文档

文档评论(0)

vermonth155-2娟 + 关注
实名认证
内容提供者

专注ppt课件

版权声明书
用户编号:8046135067000064

1亿VIP精品文档

相关文档