音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

接收PS/2條形碼掃描器數(shù)據(jù)源程序,有問題!!

作者:TragicJun 欄目:通信技術(shù)
接收PS/2條形碼掃描器數(shù)據(jù)源程序,有問題!!
用外部中斷去讀取PS/2接口的數(shù)據(jù)端,但是發(fā)現(xiàn)從頭到尾的數(shù)據(jù)位都為1,顯然是有錯誤,請大家看看有什么問題!!

//========================================================
//            讀取條形碼掃描器傳送的編碼數(shù)據(jù)程序
//========================================================
#include "SPCE061A.h"
#define  CLK_Port         0x0004    //IOB2接時鐘口   
#define  Data_Port        0x0001    //IOB0接數(shù)據(jù)口
void main()
{
int i;
int clkinput=0x0001,datainput;
CHAR getCHAR=0x00;
//設置IOB口為懸浮式輸入
*P_IOB_Dir=0x0000;
*P_IOB_Attrib=0xffff;
*P_IOB_Data=0xffff;

for(i=0;i<8;i++)
{
  while(clkinput)//等待時鐘線變低,即產(chǎn)生下降沿
  {
     *P_Watchdog_Clear=0x0001;
     clkinput=*P_IOB_Data;
     clkinput&=CLK_Port;
  }
  datainput=*P_IOB_Data; //立刻讀數(shù)據(jù)端獲得數(shù)據(jù)位
  datainput&=Data_Port;
  getCHAR|=datainput;
  getCHAR<<=1;           //左移一位準備接收下一位
  getCHAR&=0xfffe;      
  while(!clkinput)//等待時鐘線變高,一位數(shù)據(jù)接受完畢準備下次接收
  {
   *P_Watchdog_Clear=0x0001;
   clkinput=*P_IOB_Data;
   clkinput&=CLK_Port;
  }
     *P_Watchdog_Clear=0x0001;
}
while(1)
{
  *P_Watchdog_Clear=0x0001;
}
}


2樓: >>參與討論
gaolf_2000
這樣試試
for(i=0;i<8;i++)
{
  getchar<<=1;           //左移一位準備接收下一位
  getchar&=0xfffe;     
  while(clkinput)//等待時鐘線變低,即產(chǎn)生下降沿
  {
     *P_Watchdog_Clear=0x0001;
     clkinput=*P_IOB_Data;
     clkinput&=CLK_Port;
  }
  datainput=*P_IOB_Data; //立刻讀數(shù)據(jù)端獲得數(shù)據(jù)位
  datainput&=Data_Port;
  getchar|=datainput;

  while(!clkinput)//等待時鐘線變高,一位數(shù)據(jù)接受完畢準備下次接收
  {
   *P_Watchdog_Clear=0x0001;
   clkinput=*P_IOB_Data;
   clkinput&=CLK_Port;
  }
     *P_Watchdog_Clear=0x0001;
}


3樓: >>參與討論
TragicJun
請問這樣跟上面的有什么不同嗎?
請問這樣跟上面的有什么不同嗎?

4樓: >>參與討論
gaolf_2000
按照你原來的程序,8位的最低一位會丟失
 
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請問有沒有4腳的速度快一點的光藕,Toff小于10uS ,RL=3K時
485的問題
請推薦一款SLIC芯片,用于2-4線轉(zhuǎn)換的電話接口芯片
請教:400MHz射頻電路中的電阻電容電感是否必須用高頻高Q值的?
串口232電容的問題
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號