单片机IO口不能输出高电平
今天在做单片机项目时遇到了一个这样的问题,所用的单片机是PIC的,但是IO/P3.3口不能输出高电平。(PIC的叫RC3)
这次用的板子是别的公司的,最开始给它烧我们的程序,单片机每一个引脚都可以按照程序执行,因为后来需要用到延时,而最开始的时钟频率不便于计算延时,于是我在原有的程序上加了内部时钟的频率,选择的是4M,因为PIC单片机每4个时钟周期运行一条指令,这样便于计算时间。
IO口不能输出
按照上述方法执行之后,结果尽不如人意,这时候PIC单片机的IO口竟然连高电平都不能输出,怎么办呢?最开始是怀疑单片机的问题,于是用相同的程序给另外一块板子烧进去,结果还是一样的,之后试过很多办法都一样的结果,即使把时钟的配置去掉之后,IO口还是不能输出高电平,怎么办呢?好在我们这现在来了一位外聘专家S,他是属于大师级别一类人,尤其是对于PIC单片机。
AD采集
我把问题复述给S,他第一句话问我关AD采集了吗?我说,没有开AD采集啊。因为之前用的单片机没出现过,这次最开始编程的时候就没有注意这个AD采集,最后我把RC3上的AD采集口关掉之后,单片机又可以完美的输出高电平了。
专家就是专家,看待问题总能命中要害,这一点我的道行还很薄,同时我所需要的是去闭关沉淀。
写这一篇文章主要给给自己共勉,以后少犯类似的错误。
「单片机」3个IO口检测21按键分享
3IO口检测21按键
前言:
按键作为常用的输入部分,是常用的单片机外接模块。如密码锁,计算器,等。常用的独立按键和矩阵按键,编程原理很简单,只需要普通的单片机IO口即可实现。如果要输入数字,字母,用独立按键就需要较多IO,此时就是矩阵按键的领域了。最常用的矩阵按键是4X4矩阵按键,需要8个IO口,能检测出16个按键,每个按键对应一个按键值,或者按键值可以切换(某个按键设为切换按键)但是切换次数过多,不利于使用体验。升级一点,把矩阵按键当成普通按键,可以检测单击,双击,长按等操作,实现输入多值。
回归主题,本文章讨论的是3个IO口检测21个按键
10年前的帖子
3IO检测21按键原理图
原理图
电路图是以二极管为中心,21个按键,一部分是接在GND和三极管节点之间,另一部分按键两端均接在二极管节点之间。
特别说明L1,L3,L5为3个IO口连接点。
要区分出不同的按键,这些按键肯定是不同的。上图也是按照按键按下后的效果进行分类的。
大体上分两种,
第一种(直接检测)
按下某个按键,使某个IO口为低电平,使某两个IO口为低电平,(3个IO口低电平,本图暂未使用,不划算,需要再加三个二极管)
第二种(主动拉低检测)
一个IO口写0,拉低另外一个,
两个IO口通过按键短接
一个IO口拉低两个IO口
两个IO口均拉低一个IO口
程序代码截图
定义变量
前6个按键检测
后15个按键的检测
后15个按键区分
主要扫描函数
相关问答
51 单片机io口 是什么有效?51单片机上的IO口无所谓高低电平有效,高低电平有效是指触发条件,可以自设定的。只有P0口是OC输出的,需要外部加上拉电阻,其它端口都带有上拉。在单片机系统...
51 单片机 读 IO口 有几种方法?51单机片读IO口有4种不同的工作模式:准双向I/O、推挽输出、高阻输入、开漏。准双向I/O模式与标准51相比,虽然在内部结构上是不同的,但在用法上类同,比如要作...
51 单片机io口 设置?51单片机的I/O口包括三类:通用I/O口、外部中断I/O口、特殊功能I/O口。通用I/O口可以用来实现数字输入/输出、模拟输入、计数器输入等功能,其设置方法如下:1...
51系列 单片机 的引脚中有多少根 IO 线? 地址 线和数据线什么关系?80C51单片机有4个I/O端口,每个端口都是8位双向口,共占32根引脚。每个端口都包括一个锁存器(即专用寄存器P0~P3)、一个输入驱动器和输入缓冲器。通常把4个端...
为什么 单片机io口 不能用来驱动?单片机的IO口是用来输入输出数字信号的,它们通常只承受很小的电流和电压。如果你尝试用IO口来直接驱动负载(例如电机、灯泡、继电器等),可能会导致IO口烧毁或...
三、简答题1、MCS51系列 单片机 共有几个并行I/O 口 ,分别用什么...[最佳回答]MCS-51单片机有4个双向的8位I/O口的P0~P3口为三态双向口P1,P2,P3口为准双向口(用作输入时,口线被拉成高电平,所以称为准双向口).51单片机的4个口...
STC系列 单片机 -定义 IO口 的工作状态?PnM0=0,PnM1=0是设为了准双向口(即芯片内部有弱上拉电阻,即可作为读又可写出(也叫传统51模式))可以设置某一位的模式,例如:P3M1=10100000BP3M0=1100......
单片机 的I/O 口 的编址方式有两种分别是?存储器和I/O端口在两个独立的地址空间中(1)优点:I/O端口的地址码较短,译码电路简单,存储器同I/O端口的操作指令不同,程序...1.独立编址(专用的I/O端口编址)--...
怎样使 单片机 上电时 IO口 为低电平呀?由于STC单片机上电后有一段时间的延迟,好像最长能到65535个指令周期,才进入用户程序,所以从软件上想办法不能阻止上电误动作的产生,最简单的方法是在需要处理...
单片机 的 io口 和LED外置供电模块怎么接线?单片机IO口做控制信号,LED外置供电模块与单片机的电源共地就可以了。单片机IO口做控制信号,LED外置供电模块与单片机的电源共地就可以了。