IIC 软件模拟时PIC引脚如何连接

[复制链接]
1020|18
 楼主| pengf 发表于 2021-12-7 20:58 | 显示全部楼层 |阅读模式
#define SDA TRISIO1
#define SCL TRISIO0
#define SDA_IN GPIO1
#define SDA_OUT TRISIO1=0
不明白GPIO1 TRISIO0 如何与硬件连接,RA0和RA1吗?
 楼主| pengf 发表于 2021-12-7 21:00 | 显示全部楼层
这段代码是什么含义?
wuhany 发表于 2021-12-7 21:02 | 显示全部楼层
RA0,RA1应该是定义成_TRISA0,_TRISA1
午夜粪车 发表于 2021-12-7 21:04 | 显示全部楼层
TRISIO1是不是指芯片的第一个管脚?
yszong 发表于 2021-12-7 21:05 | 显示全部楼层
第一个管脚如果不是IO口的话,也有可能指RA1
llljh 发表于 2021-12-7 21:10 | 显示全部楼层
应该就是方向寄存器TRISxbits.TRISxn;这个是应该比较老的片子寄存器命名吧
 楼主| pengf 发表于 2021-12-7 21:12 | 显示全部楼层

不明白如此定义后,与原来有何不同,PIC本来不就可以位操作吗
supernan 发表于 2021-12-7 21:13 | 显示全部楼层
要看是那一款芯片了?管脚比较少吧。
 楼主| pengf 发表于 2021-12-7 21:16 | 显示全部楼层
shimx 发表于 2021-12-7 21:17 | 显示全部楼层

#define SDA TRISIO1
#define SCL TRISIO0
#define SDA_IN GPIO1
我感觉TRISIO1可能在其他地方有宏定义。
这样指示不清楚的,不知道是哪个腿。
dingy 发表于 2021-12-7 21:19 | 显示全部楼层
define就是换个称呼,好记一点,以后改的时候也方便。TRIS配置输出输出方向的
huangchui 发表于 2021-12-7 21:20 | 显示全部楼层
我做过用软件模拟I2C协议通信,我的程序宏定义与楼主列出的类似,SDA_IN是指连接到模块SDA的IO引脚设置为输入模式,同理SDA_OUT是设置为输出模式。也就是说楼主在进行硬件连接只要考虑SDA和SCL两个引脚该连接到哪里就好了。
 楼主| pengf 发表于 2021-12-7 21:22 | 显示全部楼层

明白了,多谢大家讨论这么多哈
tpgf 发表于 2022-1-5 14:58 | 显示全部楼层
是否还需要接上拉电阻呢
wowu 发表于 2022-1-5 15:00 | 显示全部楼层
跟目标芯片没有什么关系的
xiaoqizi 发表于 2022-1-5 15:01 | 显示全部楼层
定义的哪个引脚就用哪个引脚
木木guainv 发表于 2022-1-5 15:03 | 显示全部楼层
看你自己定义的是什么引脚啊
磨砂 发表于 2022-1-5 15:04 | 显示全部楼层
查看一下宏定义是多少
晓伍 发表于 2022-1-5 15:07 | 显示全部楼层
TRISIO1指向的是哪个引脚啊
您需要登录后才可以回帖 登录 | 注册

本版积分规则

718

主题

10129

帖子

3

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