打印
[PIC®/AVR®/dsPIC®产品]

PIC单片机的IO口设置为输出时还能读数据吗?

[复制链接]
4824|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hj007|  楼主 | 2017-3-15 13:40 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
PIC单片机在与I2C器件模拟时序通信时需要单片机发送数据,同时I2C设备也要发送应答信号,当设置单片机的IO口为输出时能否读取数据?
例如:
#define        SCL                LATDbits.LATD2
#define         SDA           LATDbits.LATD3


发送数据时置位SDA或清零SDA,当需要读取应答信号时能否把SDA的值赋给一个变量?

沙发
NE5532| | 2017-3-15 13:59 | 只看该作者
这个在需要读入时,要切换到输入状态,输出状态读不到引脚(起码在现在的层次上暂时这样认为)。

使用特权

评论回复
板凳
hj007|  楼主 | 2017-3-15 15:05 | 只看该作者
NE5532 发表于 2017-3-15 13:59
这个在需要读入时,要切换到输入状态,输出状态读不到引脚(起码在现在的层次上暂时这样认为)。 ...

那有没有一种简洁一点的切换方法?比如使用一个宏定义

使用特权

评论回复
地板
NE5532| | 2017-3-15 15:08 | 只看该作者
hj007 发表于 2017-3-15 15:05
那有没有一种简洁一点的切换方法?比如使用一个宏定义

宏,只是你写起来省事一点,单片机需要的操作步骤一点也不少。

使用特权

评论回复
5
山东电子小菜鸟| | 2017-3-20 16:09 | 只看该作者
这个在需要读入时,要切换到输入状态,输出状态读不到引脚(起码在现在的层次上暂时这样认为)。

使用特权

评论回复
6
mojingjian| | 2017-3-21 22:38 | 只看该作者
路过学习

使用特权

评论回复
7
tdh03z| | 2017-3-22 18:36 | 只看该作者
记得现在IO口寄存器输出输入是分开的,自己试下,应该可以读出

使用特权

评论回复
8
hj007|  楼主 | 2017-3-27 08:58 | 只看该作者
NE5532 发表于 2017-3-15 15:08
宏,只是你写起来省事一点,单片机需要的操作步骤一点也不少。

谢谢了

使用特权

评论回复
9
拉普拉思| | 2017-5-22 21:30 | 只看该作者
可以读啊,寄存器不一样,
• TRISx:数据方向寄存器
• PORTx:I/O 端口寄存器
• LATx:I/O 锁存寄存器

使用特权

评论回复
10
shenzhenherry| | 2017-5-23 10:37 | 只看该作者
这个问题都不应该问!
PIC系列的单片机与51的本质区别就是IO口的应用问题
因为内部的硬件结构的不同
51在操作io口时,可以不管当前是设置的输入还是输出状态
而PIC系列,一定要先设置好是输入还是输出!
若设置为输出状态,而想读入数据,真是做梦呀

使用特权

评论回复
11
yangzj1974| | 2018-2-13 15:28 | 只看该作者
学习

使用特权

评论回复
12
toicbin| | 2019-8-8 15:49 | 只看该作者
shenzhenherry 发表于 2017-5-23 10:37
这个问题都不应该问!
PIC系列的单片机与51的本质区别就是IO口的应用问题
因为内部的硬件结构的不同

As with any other register, the I/O register(s) can be
written and read under program control. However, read
instructions (e.g., MOVF PORTB,W) always read the I/O
pins independent of the pin’s Input/Output modes.

使用特权

评论回复
13
hyxstrive| | 2021-11-4 09:22 | 只看该作者
从图上看,TRIS寄存器么有禁止输入,所以读LAT和读PORT应该跟TRIS寄存器无关。那么不管是设置输入还是输出,读应该都是可以读的。


使用特权

评论回复
评论
hyxstrive 2021-11-4 09:23 回复TA
当然啦,设置为输入就不能读LAT寄存器了 
14
hu9jj| | 2021-11-4 11:24 | 只看该作者
需要读入引脚电平时设置为输入模式,需要控制引脚电平时设置为输出模式,就如同I2C的SDA引脚一样。

使用特权

评论回复
15
dengdc| | 2023-2-10 19:51 | 只看该作者
本帖最后由 dengdc 于 2023-2-10 19:54 编辑

?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

9

主题

39

帖子

0

粉丝