关于iic中的新人问题

2019-07-20 06:48发布

①关于原子个给的IIC的例程使用到PB8,PB9,是不是用其他管脚也可以实现,如果我在PB8,PB9上接线到其他从设备,是否会接收到一样的数据,实现一样的功能。
②关于SDA输出输入的问题,如图:
把SDA设置为输入后还能控制SDA的电平吗



悬赏不多,不介意的大佬教教我- -
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
DreamWaterPro
1楼-- · 2019-07-20 10:34
1、你提供的程序是模拟的IIC时序,因此用其他管脚依旧可以实现,具有非常强的可移植性。至于3楼说的器件地址,那个是你要接的从设备本身接线所决定的,与你在单片机上使用什么管脚来模拟IIC时序没有任何关系。
2、原则上,一个引脚设置为输入之后不能够再控制它输出电平。但是对于不同器件,也有一些不同:对于STM32系列来讲,一个引脚设置为输入之后可以在程序中向控制这个引脚的输出寄存器写内容,但是实际的引脚不会产生任何输出,说白了就是不会有任何作用;对于MSP430系列,往输出寄存器写1是设置引脚为上拉输入,写0是设置引脚为下拉输入(前提是有一个上下拉输入的寄存器中的开关得打开);我觉得楼主的程序应该是从传统51上修改得来的,传统51如果要想从一个引脚读取数据,必须先向这个引脚写1.
很多的地方
2楼-- · 2019-07-20 16:13
自顶一下,求回答
faiz
3楼-- · 2019-07-20 21:41
 精彩回答 2  元偷偷看……
正点原子
4楼-- · 2019-07-21 02:04
多自己测试,实践出真知
HexAI
5楼-- · 2019-07-21 03:12
谁说输入模式不能控制输出电平的啊?最简单的,不停地配置输入时候上拉还是下拉就可以啊
很多的地方
6楼-- · 2019-07-21 09:07
 精彩回答 2  元偷偷看……

一周热门 更多>