欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 單片機IIC通信,無法接收到從機發(fā)送的數(shù)據(jù) [打印本頁]

作者: PDDDF    時間: 2020-3-19 16:01
標題: 單片機IIC通信,無法接收到從機發(fā)送的數(shù)據(jù)
uchar IIC_receive_dat()//接受數(shù)據(jù)
{
  uchar i,num;
  SCL = 0;
  delay1();
  SDA = 1;
  for(i = 0;i <= 7;i++)
  {
          SCL = 1;
          delay1();
          num = (num<<1)|SDA;
          SCL = 0;
          delay1();
  }
  return num;
}

接受程序如上,接收前已檢測到從機發(fā)送的ACK信號,然后開始執(zhí)行上面的接收程序,不過無法收到任何數(shù)據(jù),從機芯片手冊說的發(fā)送8bit數(shù)據(jù),然而我把接收結(jié)果與0到255一一比較,居然沒有找出收到的數(shù)據(jù)內(nèi)容到底是什么,0到255沒有一個數(shù)值能觸發(fā)我寫的條件,很迷惑,不是0,也不是0xff,這種場面真的第一次見,不知道有沒有大佬知道其中的問題,謝謝


作者: 黃youhui    時間: 2020-3-19 18:02
留個眼,
作者: jamiliang    時間: 2020-3-20 01:04
1.SDA = 1;之后是否需要設置SDA為輸入模式?
2.從機是否需要先發(fā)送寄存器地址再進行讀出操作?
3.示波器看以下SDA,是否有波動,SCL是否速度超過器件限制(100K,410K?)
作者: PDDDF    時間: 2020-3-20 13:54
逐位檢測收到的信號后發(fā)現(xiàn)輸出的數(shù)據(jù)常態(tài)時為0xff,觸發(fā)態(tài)時數(shù)據(jù)中對應的觸發(fā)位為0,已檢測到共有4個觸發(fā)源,然而當我用FOR循環(huán)接收8bit數(shù)據(jù)時,無法用檢測對應觸發(fā)位是否為0來檢測收到的8bit數(shù)據(jù)內(nèi)容,可能是語句出了問題,但是將接收數(shù)據(jù)子程序移植到其他IIC收發(fā)設備上發(fā)現(xiàn)運行正常,,目前只能用順序語句逐位檢測來確定觸發(fā)位的電平狀態(tài),無法使用FOR循環(huán)




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1