DSP28335用IIC挂了一个EEPROM(AT24C512),其中SDA口进来的数据是不是需要用中断来一个一个读取? 15

unsignedcharI2C_DATA_IN(void){unsignedchari,c,d;switch_sda_in();DSP28x_usDelay(10000)... unsigned char I2C_DATA_IN(void)
{
unsigned char i,c,d;
switch_sda_in();
DSP28x_usDelay(10000);
c=0;
for(i=0;i<8;i++)
{
d=GpioDataRegs.GPBDAT.bit.GPIO32; //SDA
d=d|0x01; // 输入1位
c=c|d;
c=c<<1;
}
// c=GpioDataRegs.GPBDAT.bit.GPIO32; //SDA 28335为32位 //c为8位数据
c=c&0x08;
if(c==0x08) //一直在发送的时候c==0x08;发送完c==0;
{
c=0x1;
}
else
{
c=0;
}
return(c);
}
程序就是上面这个,用28335的IIC对AT24C512进行读写,这里的GpioDataRegs.GPBDAT.bit.GPIO32进来的一直是1,是我哪里没设置对?还是这种数据要用中断接收?望大神指教!标题不对,SDA用的就是GpioDataRegs.GPBDAT.bit.GPIO32
展开
 我来答
  • 你的回答被采纳后将获得:
  • 系统奖励15(财富值+成长值)+难题奖励10(财富值+成长值)+提问者悬赏15(财富值+成长值)
readervip
2015-03-06 · TA获得超过156个赞
知道小有建树答主
回答量:424
采纳率:0%
帮助的人:242万
展开全部
设置有问题,GPIO与Peripheral的设置是不同的,SDA不是GPIO,而是Peripheral
追问
我在初始化里用GpioCtrlRegs.GPBMUX1.bit.GPIO32=1已经设置成外设功能了啊
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式