硬汉嵌入式论坛

 找回密码
 立即注册
查看: 900|回复: 8
收起左侧

[技术讨论] (ARM)看到所谓的SDA切换的问题

[复制链接]

19

主题

150

回帖

207

积分

高级会员

积分
207
发表于 2021-11-11 16:02:55 | 显示全部楼层 |阅读模式
#define SDA_IN()  {GPIOA->CRL&=0X0FFFFFFF;GPIOA->CRL|=(u32)8<<28;}#define SDA_OUT() {GPIOA->CRL&=0X0FFFFFFF;GPIOA->CRL|=(u32)3<<28;}模拟I^2C看到了这个东东 我想请问下 这种写法是有啥好处?一开始客户问 我都懵逼了 啥叫 SDA切换?这个是比那种封成函数 put(1)/put(0)跟好吗?还请高人指教。谢谢。
回复

使用道具 举报

0

主题

3

回帖

3

积分

新手上路

积分
3
发表于 2021-11-11 17:15:34 | 显示全部楼层
SDA_IN是寄存器版本的端口初始化啊,配置成输入输出。
PUT(1)我不知道是啥
PxOUT我倒是见过,这个是配置后再设置引脚的电平。都不一样
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2021-11-11 19:36:43 | 显示全部楼层
这种玩法太麻烦了,推荐使用GPIO配置为开漏模式即可。

切换读写无需重复配置。
回复

使用道具 举报

19

主题

150

回帖

207

积分

高级会员

积分
207
 楼主| 发表于 2021-11-12 11:38:27 | 显示全部楼层
eric2013 发表于 2021-11-11 19:36
这种玩法太麻烦了,推荐使用GPIO配置为开漏模式即可。

切换读写无需重复配置。

哦 谢谢 。我也觉得麻烦 我还以为是高科技呢。被鄙视了半天。
回复

使用道具 举报

19

主题

150

回帖

207

积分

高级会员

积分
207
 楼主| 发表于 2021-11-12 11:41:02 | 显示全部楼层
爱晴海玩偶 发表于 2021-11-11 17:15
SDA_IN是寄存器版本的端口初始化啊,配置成输入输出。
PUT(1)我不知道是啥
PxOUT我倒是见过,这个是配 ...

谢谢高人回答。put那个我是打个比方,把高低电平封成单独的函数。主要是“切换”这个唬住我了,我还以为是什么arm里面的状态转换呢。谢谢你的具体解释。
回复

使用道具 举报

0

主题

20

回帖

20

积分

新手上路

中国梦我的梦

积分
20
发表于 2021-11-12 21:36:34 | 显示全部楼层
eric2013 发表于 2021-11-11 19:36
这种玩法太麻烦了,推荐使用GPIO配置为开漏模式即可。

切换读写无需重复配置。

请问老大,配置为开漏模式,就不需要输出时切换IO口为输出模式,输入切换IO口为输入模式吗?
回复

使用道具 举报

3

主题

337

回帖

346

积分

高级会员

积分
346
发表于 2021-11-13 12:30:07 | 显示全部楼层
sxw101320 发表于 2021-11-12 21:36
请问老大,配置为开漏模式,就不需要输出时切换IO口为输出模式,输入切换IO口为输入模式吗?

配置为开漏输出模式,最好片内上拉使能,片外再接个上拉电阻。
不用切换IO方向,直接可以读取IDR寄存器。
回复

使用道具 举报

0

主题

20

回帖

20

积分

新手上路

中国梦我的梦

积分
20
发表于 2021-11-14 21:44:58 | 显示全部楼层
glory 发表于 2021-11-13 12:30
配置为开漏输出模式,最好片内上拉使能,片外再接个上拉电阻。
不用切换IO方向,直接可以读取IDR寄存器 ...

谢谢老哥解答
回复

使用道具 举报

19

主题

150

回帖

207

积分

高级会员

积分
207
 楼主| 发表于 2021-11-15 14:55:32 | 显示全部楼层
glory 发表于 2021-11-13 12:30
配置为开漏输出模式,最好片内上拉使能,片外再接个上拉电阻。
不用切换IO方向,直接可以读取IDR寄存器 ...

谢谢指导。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-14 22:36 , Processed in 0.171777 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表