单片机矩阵键盘与显示.ppt
文本预览下载声明
单片机原理与接口技术 广州大学自动化系 肖忠 * 一、设计目标 任务: 矩阵键盘与显示 * 二、典型硬件电路 * 三、知识点 1-矩阵键盘工作原理 B7~B4定义为:输出口(输出0时扫描键) B3~B0定义为:带上拉的输入口 B7--O B6--O B5--O B4--O B3--I B2--I B1--I B0--I * 三、知识点 1-矩阵键盘工作原理 扫描第一列:PORTB = 1110 1111 读取值:PINB 0x0F = 0000 1111 B7--1 B6--1 B5--1 B4--0 B3--1 B2--1 B1--1 B0--1 * 三、知识点 1-矩阵键盘工作原理 扫描第二列:PORTB = 1101 1111 读取值:PINB 0x0F = 0000 1011 B7--1 B6--1 B5--0 B4--1 B3--1 B2--0 B1--1 B0--1 * 三、知识点 1-矩阵键盘工作原理 扫描第三列:PORTB = 1011 1111 读取值:PINB 0x0F = 0000 1111 B7--1 B6--0 B5--1 B4--1 B3--1 B2--1 B1--1 B0--1 * 三、知识点 1-矩阵键盘工作原理 扫描第四列:PORTB = 0111 1111 读取值:PINB 0x0F = 0000 1111 B7--0 B6--1 B5--1 B4--1 B3--1 B2--1 B1--1 B0--1 * 三、知识点 2-键盘信息总结 第1列扫描: 1110 1111(EF)-0键 -1键-2键 -3键 第2列扫描: 1101 1111(DF) “4”=(0E) “5”=(0D) “6”=(0B) “7”=(07) 第3列扫描: 1011 1111(BF) “8”=(0E) “9”=(0D) “A”=(0B) “b”=(07) 第4列扫描: 0111 1111(7F) “c”=(0E) “d”=(0D) “E”=(0B) “F”=(07) * 四、软件设计 1-扫描程序 PORTB=0xEF; //第一次扫描码 C=PINB0x0F; switch(c) { case 0x0E: key=0; break; case 0x0D: key=1; break; case 0x0B: key=2; break; case 0x07: key=3; break; } PORTB=0xDF; //第二次扫描码 C=PINB0x0F; switch(c) { case 0x0E: key=4; break; case 0x0D: key=5; break; case 0x0B: key=6; break; case 0x07: key=7; break; } * 五、电路仿真 * 六、实物演示 * 七、作业 1、矩阵键盘与显示 * 本次课所学知识 IO端口----输入、输出、第二功能 定时器----普通、CTC、PWM 中 断----定时器中断、外部中断 其 它----AD、USART、SPI、 比较器 * 课后复习 数据手册:P~ 教材:P62~64 * 下一讲的主要内容 AVR定时器的PWM模式 * 一、用Proteus仿真演示;二、用视频进行实物演示; * * * * * * * * * * * * * 一、用Proteus仿真演示;二、用视频进行实物演示; * * * * * * * * * * * * *
显示全部