设计用3x3矩阵键盘、一位数码管和8051单片机的接口电路,并编程实现用数码管显示矩阵键盘按键1-9的值。

#include<reg51.h>
#define uchar unsigned char
sbit line0=P2^0;
sbit line1=P2^1;
sbit line2=P2^2;
unsigned char led[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80};
bit iskeyinput()
{
P2=0x07;
if((P2&0x07)==0x07)
return 0;
else
return 1;
}
uchar key_identify()
{
uchar linecode=0,rowcode=0;
uchar i;
uchar scancode=0x37;
for(i=0;i<3;i++)
{
P2=scancode;
if((P2&0x07)==0x07)
{
rowcode++;
scancode=scancode<<1|1;
}
else
{
if(line0==0)linecode=1;
if(line1==0)linecode=4;
if(line2==0)linecode=7;
break;
}
}
return linecode+rowcode;
}
void wait_key_release()
{
while(1)
{
P2=0x07;
if((P2&0x07)==0x07)
break;
}
}
void display(uchar n)
{
P3=1;
P1=led[n];
}
int main(void)
{
uchar keycode;
unsigned int i;
while(1)
{
while(!iskeyinput());
for(i=0;i<500;i++);
if(iskeyinput())
{
keycode=key_identify();
wait_key_release();
display(keycode);
}
}
}

《单片机原理及应用(魏洪磊)》第七章第10题相关推荐

  1. C51(AT89C52)同济大学出版社《单片机原理及应用》(魏鸿磊)第六章第12题答案

    原题题目: 12.设系统时钟频率为12MHz,利用定时器T0中断,实现从P2.1输出高电平宽度为10ms,低电平为20ms的矩形波. 解提思路: 1.系统时钟频率为12MHz,那么一个机器周期为1us ...

  2. C51(AT89C52)同济大学出版社《单片机原理及应用》(魏鸿磊)第六章第11题答案

    原题题目: 11.设系统时钟频率为12MHz,利用定时器T1中断,控制P2.1引脚和P2.2引脚分别输出频率为1000Hz和10Hz的方波 解:由题意,时钟频率为12MHz即一个机器周期为1us,需要 ...

  3. 单片机c语言1ms 2ms 4ms方波,第4章 7~10节 单片机C语言.ppt

    第4章 7~10节 单片机C语言 4.7 函 数;4.7.2函数的定义无参函数的定义: 返回值类型 函数名 ( ) {函数体语句} 如果函数没有返回值,可以将返回值类型设为void 函数以&qu ...

  4. 《单片机原理及应用(魏洪磊)》第六章第12题

    设系统时钟频率为12MHz,利用定时器T0中断,实现从P2.1输出高电平宽度为10ms,低电平为20ms的矩形波. #include<reg51.h> bit flag=0; sbit a ...

  5. 微型计算机原理及应用第四版第七章课后答案,郑学坚微型计算机原理及应用第4版笔记和课后习题答案详解...

    第1章 二进制数加法电路 1.1 复习笔记 一.二进制数的相加 两个二进制数相加时,可以逐位相加.如二进制数可以写成 则从最右边第1位(即0权位)开始,逐位相加,其结果可以写成 其中各位是分别求出的 ...

  6. 人物志 | 美团技术委员会前端通道主席洪磊:爱折腾的斜杠青年

    洪磊,2013年加入美团,目前是美团外卖事业部终端组的负责人,也是美团技术委员会前端通道主席.在加入美团之前,洪磊的职业生涯可以用"跌宕起伏"来形容.他就读于中南财经政法大学,曾任 ...

  7. 【人物志】美团前端通道主席洪磊:一位产品出身、爱焊电路板的工程师 1

    洪磊,2013年加入美团,目前是美团外卖事业部终端组的负责人,也是美团技术委员会前端通道主席.在加入美团之前,洪磊的职业生涯可以用"跌宕起伏"来形容.他就读于中南财经政法大学,曾任 ...

  8. 单片机原理,单片机能做什么?

    现在单片机这个词慢慢进入了这个视野,相信很多人是通过一些智能硬件,然后一层层挖出来的. 一般人一听单片机,正常的反应就是:啥玩意? 这就是信息差,很多时候也正是这些信息差,直接决定你是吃肉还是喝汤. ...

  9. 试从微型计算机的硬件组成角度谈谈单片机,单片机原理及应用课后习题参考答案1~6章...

    <单片机原理及应用>习题答案 第一章计算机基础知识 1-1 微型计算机主要由哪几部分组成?各部分有何功能? 答:一台微型计算机由中央处理单元(CPU).存储器.I/O接口及I/O设备等组成 ...

  10. [渝粤教育] 西南科技大学 单片机原理与应用 在线考试复习资料(2)

    单片机原理与应用--在线考试复习资料 一.单选题 1.信息能够同时双向传送的是( ). A.并行通信 B.单工串行通信 C.半双工串行通信 D.全双工串行通信 2.T89S52单片机片内有( )个定时 ...

最新文章

  1. CircleLoss
  2. Ubuntu下安装依赖的几个解决方案
  3. 使用Windows software center进行在线更新的后台进程SCClient.exe
  4. 第十节: EF的三种追踪实体状态变化方式(DBEntityEntry、ChangeTracker、Local)
  5. python3中的int类型占64位,有没有什么办法来强制Python来使用64位整数的Windows?
  6. scheduledexecutorservice 只执行一次_一个ScheduledExecutorService启动的Java线程无故挂掉引发的思考...
  7. mysql 实验7,MySQL5.7多源复制的实验
  8. [Python]爬虫v0.1
  9. 我大意了,刚一放出来就上了牛客网头条了
  10. web前端笔试试题一(含答案)
  11. Idea中使用maven命令
  12. 未知显示器设置屏幕分辨率和屏幕扩展设置
  13. 马原期末复习知识点完整版!
  14. IP地址分类(A类 B类 C类 D类 E类)
  15. 漫画:骚操作系列(必须掌握的疯子找座问题)
  16. 汉语拼音拼读的小技巧
  17. 神兽传说1 java_神兽传说RPG
  18. winfrom下载服务器图片到本地,用C#打开Windows自带的图片传真查看器
  19. 使用org.apache.pdfbox 2.x PDF 转Doc 转图片 转字符串
  20. linux下D620显卡的安装

热门文章

  1. java中解决脏读_JAVA数据脏读
  2. linux的重启ip失效,linux配置ip 重启出错解决方法
  3. 如何读一篇论文,笔记
  4. 关于Mariadb数据库 配置
  5. qq空间进入游戏显示服务器拒绝,显示ptlogin2.qq.com,QQ空间打不开的快速解决办法...
  6. android 短信 易用性总结,详解短信验证和邮件验证的区别
  7. DNC: A deep neural network-based clustering-oriented network embedding algorithm 2021
  8. excel相乘再相加_excel现乘积再求和如何自动生成
  9. python、变量命名中字母不区分大小写_python变量名不区分大小写吗
  10. 2021-01-12