键盘电路实例分析:上拉电阻错误导致51单片机无法正常运行

发布者:hfy13567003617最新更新时间:2020-06-04 来源: eefocus关键字:键盘电路  上拉电阻  51单片机  正常运行 手机看文章 扫描二维码
随时随地手机看文章

在电路设计中,为了将电阻钳位维持在高电平,会借助上拉电阻来实现电阻的稳定,因此上拉电阻开始大量出现在电路设计中。本文从以键盘电路实例为切入点,为大家分析一种由于上拉电阻位置原因导致51单片机电路无法正常运行的情况。


首先让我们来看一看这个键盘电路的原理图,如图1所示。

基于键盘电路实例分析上拉电阻错误导致51单片机无法正常运行

图1


在按键没有被按下时,端口为低电平,按下按键的时候端口上接高电平。但电路却没有正常工作,出现了问题。


下面就来分析一下问题所在。首先,将电源直接接到端口上是绝对不可以的。当按下按键时,会有很大的电流进入单片机。在工程上,这种往往应该加限流电阻,一般选择1K即可。


但也不能选择太大的电阻,因为电阻上面压降太大,造成输入低于应有的高电平,造成错误。


其次,即便添加限流,电路也是不能工作的。检查AT89C51的DataSheet就会发现技术手册中提到:P0口是没有上拉电阻的端口。P1、P2、P3口带有上拉电阻。


这就是问题所在,那么什么是上拉电阻呢?

基于键盘电路实例分析上拉电阻错误导致51单片机无法正常运行

图2为红外线接收的电路图,图中的电阻就是上拉电阻。我们可以试图理解一下51单片机P2口的这个上拉电阻为这种形式:

基于键盘电路实例分析上拉电阻错误导致51单片机无法正常运行

图3中的R就是上拉电阻。如果按照文章开头的例子中那样设计电路,电路便会变成以下的形式:

基于键盘电路实例分析上拉电阻错误导致51单片机无法正常运行

图4


从图4中可以清晰的看出,不管按键是否按下,IO端口上都是高电平。问题就在这里,回头检测本例中的IO端口电平在按下按键前后的变化,可以发现不管是否按下按键,都为高电平。


由此可知,在进行电路设计之前,对所需各类器件的DataSheet进行充分了解还是非常有必要的,因为其中的一些小细节就极有可能决定整个设计是否能够顺利运行,希望大家能够在使用51单片机之前阅读到本文,从而避免不必要的错误。

关键字:键盘电路  上拉电阻  51单片机  正常运行 引用地址:键盘电路实例分析:上拉电阻错误导致51单片机无法正常运行

上一篇:单片机定时器应用过程中两大常见问题解析
下一篇:详细分析MCS-51单片机内部数据存储器RAM

推荐阅读最新更新时间:2024-11-17 01:21

51单片机学习笔记———13.2DS1302实时时钟代码部分(1)
代码: 实验序列:11.1 实验任务: 向DS1302中写入初始校准时间,然后不断从DS1302中读出时间并显示 实现现象:程序运行后动态数码管显示初始时间:23-59-50,并不断更新显示 硬件接线:同动态数码管一节要求。 注意事项:(1) DS1302的SPI接口用到了P3.4、P3.5、P3.6,若程序运行有问题查 硬件问题时可以从这三个引脚复用部分查起 (2) DS1302的初始化时间是随便给的,之所以给23.59.50,是为了在10 秒后即可看到24.59.59到00.00.00的跳变。 (3) DS1302寄存器读写的函数编写时要注意时序和LSB这2个要点。 ***
[单片机]
51单片机学习之路(二)-数码管显示
写在前面:以下涉及到的程序及电路图不保证为最优方案,会存在很多不足之处,望谅解。 正文 学习目标:使用51单片机实现数码管的显示。 学习内容: 了解数码管的静态显示 实现数码管动态显示 程序一:点亮数码管-静态数码管显示 根据数码管的结构,可以将数码管理解为数码管是由8个LED灯组成,并且这8个LED灯按照一定顺序排列且具有一个公共端。根据这样的结构,我们可以像点亮LED灯一样,将数码管点亮并显示所需内容。数码管又分为共阴和共阳,在这里使用的是共阴数码管。 源程序 #include reg52.h typedef unsigned char uchar; typedef unsigned int uint;
[单片机]
<font color='red'>51单片机</font>学习之路(二)-数码管显示
MCS-51单片机与CPLD/FPGA接口逻辑设计
在功能上,单片机与大规模CPLD有很强的互补性。单片机具有性能价格比高、功能灵活、易于人机对话、良好的数据处理能力潍点;CPLD/FPGA则具有高速、高可靠以及开发便捷、规范等优点。以此两类器件相结合的电路结构在许多高性能仪器仪表和电子产品中仍将被广泛应用。本文就单片机与CPLD/FPGA的接口方式作一简单介绍,希望对从事单片机和CPLD/FPGA研发的朋友能有所启发。 单片机与CPLD/FPGA的接口方式一般有两种,即总线方式与独立方式,分别说明如下: 一、总线方式 单片机以总线方式与CPLD/FPGA进行数据与控制信息通信有许多优点。 (1)速度快。如图一所示,其通信工作时序是纯硬件行为,对于MCS-51单片机,只需一条单字节
[单片机]
基于AT89S51单片机的定时报警器电路
  设计一个单片机控制的简易定时报警器。要求根据设定的初始值(1-59 秒)进行倒计时,当计时到0 时数码管闪烁“00”(以1Hz 闪烁),按键功能如下:   (1)设定键:在倒计时模式时,按下此键后停止倒计时,进入设置状态;如果已经处于设置状态则此键无效。 (2)增一键:在设置状态时,每按一次递增键,初始值的数字增1。 (3)递一键:在设置状态时,每按一次递减键,初始值的数字减1。 (4)确认键:在设置状态时,按下此键后,单片机按照新的初始值进行倒计时及显示倒计时的数字。如果已经处于计时状态则此键无效。 图 定时报警器电路原理图
[单片机]
基于AT89S<font color='red'>51单片机</font>的定时报警器<font color='red'>电路</font>图
51单片机的自调试与在线编程
传统的单片机系统开发中总是离不开仿真器和编程器。随着电子和计算机技术的迅猛发展,单片机技术也得到了空前的发展。部分16位单片机和32位ARM微控制器都带有JTAG接口,通过各自不同的专用硬件工具在指定的软件集成开发环境中进行在线调试和编程。某些片内集成Flash存储器、基于MCS-51增强内核的8位单片机可以通过专用接口和独有的专用硬件工具在指定的软件集成开发环境中进行在线调试和编程。如果能够在众多单片机中找到一款在通用接口下实现在线调试和编程的单片机,将对简化MCS-51内核的8位单片机系统开发和进一步普及具有极其重要的意义。 NXP公司(原Philips半导体公司)是最早获得MCS-51技术授权的公司,也是后继发展MC
[单片机]
<font color='red'>51单片机</font>的自调试与在线编程
ESP8266+51单片机WIFI控制多路遥控开关程序设计
这是一个基于单片机WIFI多路遥控开关设计,里面有文档,程序,图片等资料 制作出来的实物图如下: 电路原理图如下: Wifi开关元件清单 1) 9*15万用板 2) STC89C52单片机 3) 40脚IC座 4) 11.0592MHz晶振 5) 30pF瓷片电容*2 6) 10uF电解电容 7) ESP8266模块 8) 2*4P排母 9) 2P排母*2 10) 3.3V稳压模块 11) 2P接线端子*3 12) 继电器*3 13) 3MM LED灯*3(红、绿、蓝) 14) 8550三极管*3 15) 按键 16) 1k电阻*6 17) 10k电阻 18) 自锁开关 19) DC电
[单片机]
ESP8266+<font color='red'>51单片机</font>WIFI控制多路遥控开关程序设计
51单片机时钟精度误差的解决
前几天用STC89C52单片机制作了一个电子时钟,经过一段时间的实验,发现时间精度存在误差,一分钟慢4秒左右。 这可了不得,十分钟就要慢40秒,一天下来不得慢半96分钟!!! 这个单片机晶振频率为11.0592mhz,和大部分时钟的晶振频率相同,应该没有问题。 后天考虑到源代码: 在定时器中断函数里: void t0(void) interrupt 1 using 0 { tcount++; if(tcount==4000) {tcount=0; second++; if(second==60) {second=0; minute++; if(minut
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved