<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SLE4442卡_IC的51單片機(jī)驅(qū)動(dòng)程序

          SLE4442卡_IC的51單片機(jī)驅(qū)動(dòng)程序

          作者: 時(shí)間:2016-12-02 來(lái)源:網(wǎng)絡(luò) 收藏
          整理了最初的實(shí)驗(yàn)草稿版,將端口宏定義,函數(shù)聲明以及常用的函數(shù)聲明建立頭文件,感覺(jué)清楚多了,在不斷地修改中凝練,在不停的實(shí)踐中提高,滿眼的思緒,在小小的Readme中劃過(guò)一筆~~~~~~~~

          char data_RST[4], ErrorCount[4];

          本文引用地址:http://www.ex-cimer.com/article/201612/324690.htm

          void IC_RST(void)
          {
          uchar value,i,count;
          DATA_IN; //IC輸入
          RST_LOW; //復(fù)位時(shí)序
          CLK_LOW;
          DATA_HIGH;
          DelayUs(5);
          RST_HIGH;
          DelayUs(5);
          CLK_HIGH;
          DelayUs(5);
          CLK_LOW;
          DelayUs(5);
          RST_LOW;
          DelayUs(2);
          for(i=0;i<4;i++) //讀4個(gè)BYTE 可用后面的Byte_Read()代替
          {
          value = 0xff;
          for(count=0;count<8;count++)
          {
          value = value >> 1;
          DelayUs(2);
          CLK_LOW;
          DelayUs(2);
          CLK_HIGH;
          DelayUs(2);
          if(RD5 == 1)
          {
          value |= 0x80; //判斷IO腳是否為1,是則位置1
          }
          else
          {
          value &= 0x7f; //否則位置0
          }
          DelayUs(2);

          }
          data_RST[i] = value;
          DelayUs(2);
          }
          DelayUs(2);
          CLK_LOW;
          DelayUs(2);
          DATA_HIGH;
          }

          void IC_Init(void) //初始化
          {
          TRISD1 = 0;
          RD1 = 0; //上電
          TRISD4 = 0; //時(shí)鐘輸出
          TRISD3 = 0; //RST輸出
          DelayMs(5); //上電的必要延時(shí),否則程序出錯(cuò)
          }


          void Start(void)
          {
          DATA_OUT; //開(kāi)始時(shí)序
          CLK_LOW;
          DATA_HIGH;
          DelayUs(2);
          CLK_HIGH;
          DelayUs(2);
          DATA_LOW;
          DelayUs(2);
          CLK_LOW;
          }

          void Stop(void) //結(jié)束時(shí)序
          {
          DATA_OUT;
          CLK_LOW;
          NOP();
          NOP();
          DATA_LOW;
          DelayUs(2);
          CLK_HIGH;
          DelayUs(2);
          DATA_HIGH;
          DelayUs(2);
          }

          uchar Byte_Read(void) //讀字節(jié)
          {
          uchar count;
          uchar value;
          DATA_IN;
          DelayUs(2);
          value = 0xff;
          for(count=0;count<8;count++)
          {
          value = value >> 1; //循環(huán)右移,從最低位開(kāi)始讀
          DelayUs(2);
          CLK_LOW;
          DelayUs(2);
          CLK_HIGH;
          DelayUs(2);
          if(RD5 == 1)
          {
          value |= 0x80;//判斷IO腳是否為1
          }
          else
          {
          value &= 0x7f;
          }
          DelayUs(2);
          }
          return (value);
          }


          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();