- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二十八节:数码管通过切换窗口来设置参数。开场白:上一节讲了数码管的驱动程序,这节在上节的基础上,通过按键切换不同的窗口来设置不同的参数。这一节要教会大家两个知识点:第一个:如何通过一个窗口变量来把按键,数码管,被设置的参数关联起来。第二个:需要特别注意,在显示被设置参数时,应该先分解出每一位,然后再把分解出来的数据过渡到显示缓冲变量里。具体内容,请看源代码讲解。(1)硬件平台:基于朱兆祺51单片机学习板。加按键对应S1键,减按键对应S5键,切换窗口按键对应S9键(2)实现功能:? ???通过按键设置4个不同的参数。? ?? ?一共有4个窗口。每个窗口显示一个参数。第8,7,6,5位数码管显示当前窗口,P-1代表第1个窗口,P-2代表第2个窗口,P-3代表第3个窗口,P-4代表第1个窗口。第4,3,2,1位数码管显示当前窗口被设置的参数。范围是从0到9999。有三个按键。一个是加按键,按下此按键会依次增加当前窗口的参数。一个是减按键,按下此按键会依次减少当前窗口的参数。一个是切换窗口按键,按下此按键会依次循环切换不同的窗口。(3)源代码讲解如下:#include REG52.H#define const_voice_short??40? ?//蜂鸣器短叫的持续时间#define const_key_time1??20? ? //按键去抖动延时的时间#define const_key_time2??20? ? //按键去抖动延时的时间#define const_key_time3??20? ? //按键去抖动延时的时间void initial_myself();? ??void initial_peripheral();void delay_short(unsigned int uiDelayShort);?void delay_long(unsigned int uiDelaylong);//驱动数码管的74HC595void dig_hc595_drive(unsigned char ucDigStatusTemp16_09,unsigned char ucDigStatusTemp08_01);??void display_drive(); //显示数码管字模的驱动函数void display_service(); //显示的窗口菜单服务程序//驱动LED的74HC595void hc595_drive(unsigned char ucLedStatusTemp16_09,unsigned char ucLedStatusTemp08_01);void T0_time();??//定时中断函数void key_service(); //按键服务的应用程序void key_scan();//按键扫描函数 放在定时中断里sbit key_sr1=P0^0; //对应朱兆祺学习板的S1键sbit key_sr2=P0^1; //对应朱兆祺学习板的S5键sbit key_sr3=P0^2; //对应朱兆祺学习板的S9键sbit key_gnd_dr=P0^4; //模拟独立按键的地GND,因此必须一直输出低电平sbit beep_dr=P2^7; //蜂鸣器的驱动IO口sbit led_dr=P3^5;??//作为中途暂停指示灯 亮的时候表示中途暂停sbit dig_hc595_sh_dr=P2^0;? ???//数码管的74HC595程序sbit dig_hc595_st_dr=P2^1;??sbit dig_hc595_ds_dr=P2^2;??sbit hc595_sh_dr=P2^3;? ? //LED灯的74HC595程序sbit hc595_st_dr=P2^4;??sbit hc595_ds_dr=P2^5;??unsigned char ucKeySec=0;? ?//被触发的按键编号unsigned int??uiKeyTimeCnt1=0; //按键去抖动延时计数器unsigned char ucKeyLock1=0; //按键触发后自锁的变量标志unsigned int??uiKeyTimeCnt2=0; //按键去抖动延时计数器unsigned char ucKeyLock2=0; //按键触发后自锁的变量标志unsigned int??uiKeyTimeCnt3=0; //按键去抖动延时计数器unsigned char ucKeyLock3=0; //按键触发后自锁的变量标志unsigned int??uiVoiceCnt=0;??//蜂鸣器鸣叫的持续
您可能关注的文档
最近下载
- 人教版七年级数学上册第五章一元一次方程.pptx VIP
- 超星学习通网课《从爱因斯坦到霍金的宇宙》尔雅答案2025题目及答案.docx
- 证监会行业分类指引 2012版 (2).xls VIP
- 通信中级整理-终端与业务.pdf VIP
- 【初中数学】第五章一元一次方程单元测试+2024-2025学年人教版数学七年级上册.docx VIP
- 快乐日记(三上日记范文).docx VIP
- 4.1 《喜看稻菽千重浪》课件(共46张PPT)统编版高中语文必修上册.pptx VIP
- 群众安全满意度培训课件.pptx VIP
- 石材厂15万吨年砂石料加工项目突发环境事件应急预案2024年第一版.docx VIP
- 道德与法治人教版二年级上册教案.doc VIP
原创力文档


文档评论(0)