软件模拟IIC,但是在读写上有问题。

[复制链接]
451|0
 楼主| スモモ 发表于 2018-6-29 10:08 | 显示全部楼层 |阅读模式
各种纠结啊,在51上可以运行,到stm32上就不可以了。对比了一下,和demo对比一下,发现时单字节写入和读取上的问题。程序贴出来。各位大大,帮我看看啊。



#include "24C02.h"

void write_byte(u8 add,u8 dat)

{

        Start_IIC();

        Write_byte_IIC(0Xa0);

        I2C_Ack();

        Write_byte_IIC(add);

        I2C_Ack();

        Write_byte_IIC(dat);

        I2C_Ack();

        Stop_IIC();

}

u8 read_byte(u8 add)

{

        u8 dat;

        Start_IIC();

        Write_byte_IIC(0Xa0);

        I2C_Ack();

        Write_byte_IIC(add);

        I2C_Ack();

        Start_IIC();

        Write_byte_IIC(0Xa1);

        I2C_Ack();

        dat=Read_byte();

        I2C_NoAck();

           Stop_IIC();

         

        return dat;

                        

}



[/td][/tr][/table]

<div class="pattl">
您需要登录后才可以回帖 登录 | 注册

本版积分规则

458

主题

484

帖子

1

粉丝
快速回复 在线客服 返回列表 返回顶部