在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<abbr id="27omo"></abbr>

<menu id="27omo"><dl id="27omo"></dl></menu>
    • <label id="27omo"><tt id="27omo"></tt></label>

      新聞中心

      EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 用HI-TECH C寫的使用PIC12C508讀寫93LC4

      用HI-TECH C寫的使用PIC12C508讀寫93LC4

      作者: 時間:2011-05-17 來源:網(wǎng)絡(luò) 收藏

      /*----------------------------------------------------
      Function : EWEN
      Input : None
      Output : None
      Description : ERASE/WRITE Enable
      ------------------------------------------------------*/
      void EWEN(void)
      {
      unsigned char i,temp;

      StartBit(); /* 1 */

      temp = 0x80; /* 0011xxxx ,(opcode:00, Address:11xxxx) */
      for(i=0; i8; i++) {
      if(0x30 temp)
      DI = 1;
      else
      DI = 0;
      Pulse();
      temp >>= 1;
      }

      CS = 0;
      }

      /*----------------------------------------------------
      Function : EWDS
      Input : None
      Output : None
      Description : ERASE/WRITE Disable
      ------------------------------------------------------*/
      void EWDS(void)
      {
      unsigned char i;

      StartBit(); /* 1 */

      DI = 0; /* 0000xxxx, (opcode:00, Address:00xxxx) */
      for(i=0; i8; i++)
      Pulse();

      CS = 0;
      }

      /*----------------------------------------------------
      Function : Write6
      Input : unsigned char Offset Address, unsigned int tx_data
      Output : None
      Description : Write 16bits data in to 6 Offset Address
      ------------------------------------------------------*/
      void Write6(unsigned char Offset_Addr, unsigned int tx_data)
      {
      unsigned char Addr, i;
      unsigned int temp;

      EWEN();

      StartBit(); /* 1 */
      Offset_Addr=Offset_Addr0x3F; /* 6bits address */
      Addr = Offset_Addr + 0x40; /* 01AAAAAA ,(opcode:01, address:AAAAAA) */
      temp = 0x0080;
      for(i=0; i8; i++) {
      if(Addr temp)
      DI = 1;
      else
      DI = 0;
      Pulse();
      temp >>= 1;
      }

      temp = 0x8000; /* DDDDDDDDDDDDDDDD(16bits data)*/
      for(i=0; i16; i++) {
      if(tx_data temp)
      DI = 1;
      else
      DI = 0;
      Pulse();
      temp >>= 1;
      }
      CS = 0;

      EWDS();
      }

      /*----------------------------------------------------
      Function : Read93LC46
      Input : unsigned char Offset Address
      Output : unsigned int
      Description : Read 16bits data from 93LC46 offset address
      ------------------------------------------------------*/
      unsigned int Read93LC46(unsigned char Offset_Addr)
      {
      unsigned char Addr, i, temp;
      unsigned int rx_data;

      StartBit(); /* 1 */
      Offset_Addr = Offset_Addr0x3F; /* 6bits address */
      Addr = Offset_Addr + 0x80; /* 10AAAAAA ,(opcode:10, address:AAAAAA) */
      temp = 0x80;
      for(i=0; i8; i++) {
      if(Addr temp)
      DI = 1;
      else
      DI = 0;
      Pulse();
      temp >>= 1;
      }

      rx_data = 0x0000; /* DDDDDDDDDDDDDDDD(16bits data)*/
      for(i=0; i16; i++) {
      Pulse();
      if(DO)
      rx_data |= 0x0001;
      if(i 15)
      rx_data = 1;
      }
      CS = 0;

      return(rx_data);
      }

      void InitPIC(void)
      {
      OPTION = (GPWU | GPPU | PS2 | PS1 | PS0);
      TRIS = 0x10;
      CS = 0;
      CLK = 0;
      DI = 0;
      }

      /* Main routine */
      void main(void)
      {
      unsigned char addr;
      unsigned int rx_buf;

      InitPIC();
      /* Read a word then +1 and write back to 93LC46 */
      for (addr = 0; addr 10; addr++)
      {
      rx_buf = Read93LC46(addr);
      rx_buf = rx_buf+1;
      Write93LC46(addr, rx_buf);
      }

      }


      上一頁 1 2 下一頁

      關(guān)鍵詞: 93LC4 讀寫 PIC12C508 使用 HI-TECH

      評論


      相關(guān)推薦

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

      關(guān)閉