搜索

RF如何配置成普通的输入引脚检测按键状态?

[复制链接]
40|4
 楼主 | 2020-11-17 19:30 | 显示全部楼层 |阅读模式
本帖最后由 幸福白米饭 于 2020-11-17 19:42 编辑

单片机型号采用PIC18F66J11 ,想要将RF引脚配置成普通的输入引脚,但是目前好像是存在哪一块的复用,导致引脚一直检测到是低电平,按键接的上拉3.3V,当按键不按下的时候测得相应单片机检测引脚的电压就是3.3V,但是程序上一直检测到是低电平,看了好长时间手册了,能关的复用功能也尽量关了,请大佬们帮忙看一下是不是有哪一块还没有关掉。
图【RF】是引脚配置初始化程序
其他的图片是PIC手册上对应引脚初始化关闭的地方,请各位大佬帮忙看看有没有漏关的复用功能


RF10.PNG
RF9.PNG
RF7.PNG
RF6.PNG
RF5.PNG
RF4.PNG
RF3.PNG
RF2.PNG
RF.PNG

使用特权

评论回复
| 2020-11-18 13:57 | 显示全部楼层
PCFG位的定义写反了吧,一般0是数字pin,1是模拟pin。你改一下试试。

使用特权

评论回复
| 2020-11-18 14:54 | 显示全部楼层
我来看看,感谢楼主分享。

使用特权

评论回复
| 2020-11-18 18:03 | 显示全部楼层
目前好像是存在哪一块的复用,导致引脚一直检测到是低电平,按键接的上拉3.3V,当按键不按下的时候测得相应单片机检测引脚的电压就是3.3V,但是程序上一直检测到是低电平,
你这是预设了前提——复用未启用。实际情况可能并不是这样。可以按照下述步骤检查:
1、按键按下去时,用多用表测得低电平吗?
2、RF的所有管脚都是这样吗?
3、“程序中检测”,这里说的检测是怎样的检测,检测的对象是否跟实测的对象一致?
4、将程序中的检测对象换到另一组管脚上,能否获得和实测一样的结果?——也就是说程序写得对不对?
5、对怀疑复用未启用的管脚,逐个用程序读一下其他的复用功能,是否能正常读到结果?



使用特权

评论回复
 楼主 | 2020-11-21 16:45 | 显示全部楼层
找到原因了,ANCON寄存器和ADCON寄存器 SFR共享寄存器地址了,需要设定ADSH位

使用特权

评论回复
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式

论坛热帖

在线客服 快速回复 返回顶部 返回列表