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

请教大家一个关于IIC硬件通信的问题

[复制链接]
1066|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhubajie1122|  楼主 | 2015-3-24 19:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
下面这个是IIC硬件通讯程序,单片机与877A通讯,先写个字节00000011,然后读出来从PORTB显示,程序实现不了,B口最后没有反应(照理说B0,B1上的LED灯应该亮的);下面是调试过程出现的情况:(1)程序本身都检查了N遍,看来看去看不出问题,程序也查阅了网上用C语言写的IIC程序 基本上感觉是一致的;(2)程序初始化里面,对SSPSTAT,SSPCON,SSPCON2也更改了一些配置位,反复试验结果也无济于事(比如SMP位改1,CKP改1,事实上我感觉在主模式通讯对这几个位好像没有意义);(3)各个子程序、数据发送、数据接收也看不出哪里有问题,对bank的设定都没有问题;(4)用软件模拟IIC在同一个硬件电路能实现功能,就是用硬件IIC不行,我认为电路没有问题;(5)从机SDA\SCL 都接了上拉电阻5.1K,硬件24C02跟单片机连接都检查了N遍,确定没有接错;(6)我发现故意用一个错误的寻址命令(正常的是10100000,我随便弄个10110000),程序居然 也没有报错(因为程序里有报错功能的),但是用软件模拟的时候就能实现这个报错功能;实在找不出毛病所在,老师能不能帮我分析下,附上程序代码:这个程序困扰我好长时间了,虽然软件模拟是成功的,但硬件也得会啊,或者老师能指导下哪个地方可能有问题,因为靠我自己实在找不出问题所在了。

硬件 iic通讯11.rar

2.06 KB

沙发
zhubajie1122|  楼主 | 2015-3-25 19:04 | 只看该作者
没有人知道这个程序的问题所在吗?

使用特权

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

本版积分规则

1

主题

2

帖子

0

粉丝