




已阅读5页,还剩39页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单击此处编辑母版标题样式 三、IO应用 - LED数码管 X 位X 段数码管 单击此处编辑母版标题样式 单击此处编辑母版标题样式 dp g f e d c b a D7 D6 D5 D4 D3 D2 D1 D0 8段LED,段码是按格式:如下图 显示位 段码位 单击此处编辑母版标题样式 dp g f e d c b a D7 D6 D5 D4 D3 D2 D1 D0 显示位 段码位 11000000 即为:0xC0 LED数码管 显示“0”编码 单击此处编辑母版标题样式 dp g f e d c b a D7 D6 D5 D4 D3 D2 D1 D0 显示位 段码位 11111001 即为:0xF9 LED数码管 显示“1”编码 单击此处编辑母版标题样式 七段共阳数码管显示数据表 单击此处编辑母版标题样式 LED数码管显示器的显示方法有两种: 静态显示和动态扫描显示。 (一)LED数码管的显示方法 单击此处编辑母版标题样式 LED静态显示 单击此处编辑母版标题样式 例: 利用2位LED静态显示“12” 单击此处编辑母版标题样式 #include unsigned char d1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; void main() P0=0xff; P2=0Xff; while(1) P0=d11; /笔段码 P2=d12; /笔段码 思考:如是实现 显示完“12”延时一会儿有显示“34”呢? 单击此处编辑母版标题样式 #include unsigned char d1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; void delay(int m) unsigned int i,j; for (i=0; i unsigned char d1=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; void delay(int m) unsigned int i, j; for (i=0; i unsigned char d1= 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90 ; unsigned char d2= 0xdf,0xef,0xf7,0xfb,0xfd,0xfe ; void delay ( int m) ; void main() unsigned char i; P0=0XFF; P2=0XFF; while(1) for (i=0; i void Delayms(unsigned char); /具体定义省略 void main(void) /main函数 P2_0 =1; /按键初始化,防止误读 while(1) /保证系统一直运行 if (P2_0=0) /如果有按键按下 Delayms(10); /延时去抖动 if (P2_0 =0) /再次确认按键 P2_7 = P2_7; while (P2_0 =0); /等待按键释放 单击此处编辑母版标题样式 #include sbit LED = P2_7; sbit KEY = P2_0; void Delayms(unsigned char); void main(void) /main函数 KEY=1; /按键初始化 while(1) /死循环,保证系统一直运行 if (KEY=0) /如果有按键按下 Delayms(10); /延时去抖动 if (KEY=0) /再次确认按键 LED = LED; /将LED取反 while (KEY=0); /等待松开 单击此处编辑母版标题样式 例2:键控花样流水灯 单击此处编辑母版标题样式 请大家思考,根据流程图采用C51编出任务程序! 下节课用带来检查,并计入平时成绩! 单击此处编辑母版标题样式 例2: 2位十进制按键计数器(0099) 请大家思考,采用C51编出任务程序,并画出流程图! 下节课用带来检查,并计入平时成绩! 单击此处编辑母版标题样式 单片机系统中,若使用按键较多时,通常采用 矩阵式键盘,其结构如下图所示。 (二)矩阵按键( keyboard ) 单击此处编辑母版标题样式 行列式键盘 由图可知,一个44的行、列结构,可以构成一个含 有16个按键的键盘,节省了很多I/O口。 单击此处编辑母版标题样式识别矩阵键盘按键的方法 1、行扫描法; 2、线反转法 单击此处编辑母版标题样式 判断哪一行有键按下 写端口(0xf0):行线电平=0;列线电平=1。 读端口进行判断:若P1 = 0xf0没有按键压下; 若P10xf0某行有键压下W1 判断哪一列有键按下 写端口(0x0f):行线电平=1;列线电平=0。 读端口进行判断:若P1 = 0x0f没有按键压下; 若P1 0x0f某列有键压下W2 将W1与W2相“或” 并存于W(形成键值) 闭合键所在行、列的状态均为0,其余皆为1。 利用查表比对法求出闭合按键的键模。 线反转法思路 单击此处编辑母版标题样式 vcc P10 P11 P12 P13 P14 P15 P16 P17 0123 4567 891011 12131415 AT89C51 R1R2R3R4 单击此处编辑母版标题样式 P10 P11 P12 P13 P14 P15 P16 P17 0123 4567 891011 12131415 0 1 2 3 0123 AT89C51 EE DE BE 7E ED DD BD 7D EB DB BB 7B E7 D7 B7 77 单击此处编辑母版标题样式 单击此处编辑母版标题样式 例1:矩阵键盘识别,利用LED来显示按键。 单击此处编辑母版标题样式 #include unsigned char code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82, 0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E; unsigned char w; void delay(); /申明函数 void key_scan(); void key_tran(); void main() P1=0XFF; /输入初始化 P0=0x00; /LED开始不亮 while(1) /保证系统一直运行 key_scan(); /键盘扫描程序 key_tran(); /键值译码并显示 单击此处编辑母版标题样式 void key_scan() unsigned char w1,w2; P1=0x0F; w1=P1 if(w1!=0x0F) delay(); /软件延时去抖动 P1=0xF0; w2=P1 w=(w1|w2); /求出相应的键值。 while(P1!=0xF0); /等待释放按键 else w=0xFF; 单击此处编辑母版标题样式 void key_tran() switch(w) case 0xEE: P0=table0;break; / LED显示0 case 0xED: P0=table1;break; / LED显示1 case 0xEB: P0=table2;break; / LED显示2 case 0xE7: P0=table3;break; / LED显示3 case 0xDE: P0=table4;break; / LED显示4 case 0xDD: P0=table5;break; / LED显示5 case 0xDB: P0=table6;break; / LED显示6 case 0xD7: P0=table7;break; / LED显示7 case 0xBE: P0=table8;break; / LED显示8 case 0xBD: P0=table9;break; / LED显示9 case 0xBB: P0=table10; break; / LED显示A case 0xB7: P0=table11; break; / LED显示B case 0x7E: P0=table12; break; / LED显示C case 0x7D: P0=tab
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年宁夏银川六中中考数学二模试卷(含部分答案)
- 2025-2026学年陕西省西安市雁塔区高新一中九年级(上)收心考数学试卷(含部分答案)
- 咖啡理论知识题库及答案
- 国企考试财会题目及答案
- 2025年有毒有害固体废弃物处理设备项目建议书
- 抗击八国联军优教课件
- 2025年移动通信终端设备及零部件项目发展计划
- 扶贫知识两熟悉专题培训课件
- 2025年许职招聘考试真题及答案
- 2025年中铝炭素考试试卷及答案
- 基因工程的伦理问题主题班会课件
- 实验小学“五大行动”实验校建设方案
- 医院麻醉科诊疗规范
- 加速康复外科(ERAS)在骨科护理中的应用
- TCANSI262022电动船舶用锂离子动力蓄电池包电性能试验方法
- 大一新生班助培训
- 2025秋人教版(2024)八年级上册英语课件 Unit 1 Happy Holiday (第1课时) Section A 1a- 1d
- 网络运营培训课件
- 单轨吊验收标准(柴油和锂电)
- 汽修进出厂管理制度
- I型呼吸衰竭护理查房
评论
0/150
提交评论