
你的程序编译是通过的,看你的原理图,指出两点:
1你的地址端接的是高电平,读写时是不是和0xae,0xaf地址码对应,请请查看使用说明解决。
2SCL、SDA需要接上上电阻的,不然高电平上不去。
希望对你有帮助!
在程序起始地址写入bootloader程序
正常启动就跳转到主程序地址
需要更新程序就用iic写入新程序到你旧程序首地址,下次重启正常就跳转到同样地址,执行新程序,更新完毕
其实程序是一模一样的,唯一的区别是模拟IIC需要CPU运算,这样就增加了单片机的运算时间,而带IIC接口的单片机,程序还是需要的,但是IIC的运算通过集成在单片机里面的寄存器硬件电路来运算,就像定时器电路一样自己会运算,这样就不要cpu来运算过程了,从而节省了时间,使cpu运算的更快。当然这样就的多付出经济成本哦
IIC通讯只能是TTL连接通信,要求两个单片机是近距离的,应在1米以内。既然是TTL连接,为何不用串口呢,也是TTL连接,串口通信简单多了。
而IIC通信,两个单片机都是用引脚来模拟的,通信协议比较麻烦,写程序很麻烦的,又何苦呢?
以上就是关于51单片机 IIC总线 写24C02 问题 看程序 高分悬赏 错误原因。。。。。全部的内容,包括:51单片机 IIC总线 写24C02 问题 看程序 高分悬赏 错误原因。。。。。、iic bootloader。、51单片机 iic 总线程序,用IO口模拟和用自带IIC口有什么不同等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)