本帖最后由 北宸xyz 于 2016-7-21 20:53 编辑
采用IIC读写24C02的程序修改为读SM9541数据。
IIC读写24C02正常,把24C02芯片拆了,接上SM9541,采用跳线方式连接。
读数据代码:
u16Pressure 这个数据读回来值都是0xFFFF;
这个值 肯定是不对的。
u16Pressure = SM9541_ReadOneByte();
u16 SM9541_ReadOneByte(void)
{
u8 temp=0;
u16 ReTemp=0;
IIC_Start();
IIC_Send_Byte((0x28<<1)+1); //发送器件地址0X28<<1,读数据
IIC_Wait_Ack();
temp=IIC_Read_Byte(1); //发送ACK
ReTemp = temp<<8;
temp=IIC_Read_Byte(0); //发送nACK
ReTemp = ReTemp + temp;
IIC_Stop();//产生一个停止条件
return ReTemp;
}
这个帖子我也看了
http://www.openedv.com/forum.php?mod=viewthread&tid=77527
是的,我用的是原子的IIC,就是不是能。
然后用430单片机做了,就没用ST的芯片了。
我这二天有不公司,回去后把资料发出来。
一周热门 更多>