关于PIC16f877的硬件i2c的疑问

2020-02-10 08:38发布

这2天由于工作关系要学pic,学到它的i2c口的时候就糊涂了!首先看了有SSPCON2寄存器的设置后,感觉,似乎这个东西就是通过设置寄存器的相应位来达到在sda,scl上产生相应的电平,从而实现i2c的起始信号,停止,应答等!但是,不知道为什么,我写的程序就是无法运行啊!当初在51上模拟i2c还好好的呢!现在不行了,希望有做过的前辈能够发几个用C语言写的例子看看!!!!不胜感谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
leofoolish
1楼-- · 2020-02-10 10:50
微芯网站上一定有的哇。
honami520
2楼-- · 2020-02-10 13:29
 精彩回答 2  元偷偷看……
joylight
3楼-- · 2020-02-10 14:23
你用什么编译器,一般编译器都会有例子,参考一下。
machunshui
4楼-- · 2020-02-10 18:17
http://www.proteus.com.cn/bbs/viewthread.php?tid=19173&extra=page%3D1

本人写的pic的i2c主控的例子,基于中断方式

注意实际电路中运行,中断中的
else if(temp ^ 0b00001100 == 0)
要改为
else if((temp ^ 0b00001101) == 0 )

原因时microchip手册中的有一处错误,导致proteus模型不正确
MZ_Guo
5楼-- · 2020-02-10 19:49
我的也是用pic的硬件i2c主控方总是不行,用模拟的倒可以,但目前我模拟的发送ok,但接收还有问题,总是读不到正确的数据,被控方用的是硬件i2c,工作正常

一周热门 更多>