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

AVR控制矩阵键盘,12864显示简单计算器(国外英文资料).doc

AVR控制矩阵键盘,12864显示简单计算器(国外英文资料).doc

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

AVR控制矩阵键盘,12864显示简单计算器(国外英文资料) # include iom16v. H # include macros. H # define uint unsigned int # define uchar unsigned char # define RS_0 (PORTA = ~ BIT (7)) # define RS_1 (PORTA | = BIT (7)) # define WR_0 (PORTA = ~ BIT (6)) # define WR_1 (PORTA | = BIT (6)) # define EN_0 (PORTA = ~ BIT (5)) # define EN_1 (PORTA | = BIT (5)) Uchar temp, key, num, I, n, s, k = 0, d, w, h, jj, Chen, ch, m; Uchar x81 d = 0; Uchar jia [] = +; Uchar jian [] = -; Uchar cheng [] = *; Uchar chu [] = /; Void delay (uint z) { Uint I, j; For (I = z;) For (j = 114; j; ; j --); } Uchar anjian () { Uchar I; Uchar num1. PORTB = 0 xef; / / low in, scan first DDRB = 0 xf0; / / the key is 00000000000 If ((PINB 0x01) = = = 0) / / determines if the PA0 is 0, then s1 is pressed { Delay (1); / / delay cancellation If (PINB 0x01) = = 0) / / there is a press button {n + +; Delay (1); / / delay cancellation Key = 0; Write_data (0 x30 + key); While ((! PINA 0x01)) If (s = = 1) { H++; } If (s! = 1) { W++; } / / return 0; / / wait for the button to loosen } } / / button 1 If ((PINB 0x02) = = 0) / / determines if the PA0 is 0, then s1 is pressed { Delay (1); / / delay cancellation If ((PINB 0x02) = = 0) / / there is a button pressed {n + +; Delay (1); / / delay cancellation Key = 1; Write_data (0 x30 + key); ((! PINA 0x02)) / / wait for the button to loosen / / return 1; If (s = = 1) { H++; } If (s! = 1) { W++; } } } / / button 2 If ((PINB 0x04) = = 0) / / determines if the PA0 is 0, then s1 is pressed { Delay (1); / / delay cancellation If (PINB 0x04) = = 0) / / there is a press button {n + +; Delay (1); / / delay cancellation Key = 2; Write_data (0 x30 + key); While ((.pina 0X04)) / / wait for the button to loosen / / return 2; If (s = = 1) { H++; } If (s! = 1) {w++; } } } / / button 3 If ((PINB 0x08) = = = 0) / / determines if the PA0 is 0, then s1 is pressed { Delay (1); / / delay cancellation If ((PINB 0x08) = = 0) / / there is a press button {n + +; Delay (1); / / delay cancellation Key

您可能关注的文档

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档