亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? zlg7290.txt

?? ZLG7290使用代碼 ,使用模擬I2C,其是ZLG7290的IIC驅(qū)動C語言程序。
?? TXT
?? 第 1 頁 / 共 2 頁
字號:
ZLG7290的IIC驅(qū)動C語言程序
      ZLG7290的IIC驅(qū)動C語言程序
      作者:未知    AVR單片機來源:網(wǎng)絡(luò)    點擊數(shù): 1336     更新時間:2007-10-1    

      //#####################---文件信息-----############################
      //文   件   名   :   7290.c
      //創(chuàng)   建   人   :   ZXJ
      //建  立 時 間   :   2004-2-17
      //版  本 描 述   :   V1.0
      //功  能 描 述   :   ZLG7290使用代碼 ,使用模擬I2C
      //備      注   :   調(diào)試環(huán)境為AVRGCC 3.3.1,MCU為Mega8 晶振為3.6864MHZ
      //               由于ZLG7290的速度很慢,換晶振時注意延時程序的調(diào)整.實際測試中
      //               死機現(xiàn)象比較嚴重,建議使用控制ZLG7290的復位
      //最后修改時間   :   2004-2-19
      //##################################################################

      #include "7290.h"

      //0到9
      //const u08 LED_Font[10] = 
      {0xCF,0x60,0xDA,0xF2,0x66,0xB6,0xBE,0xE0,0xFE,0xF6}; //正
      const u08 LED_Font[10] = 
      {0xfc,0x0c,0xda,0x9e,0x2e,0xb6,0xf6,0x1c,0xfe,0xbe}; //反

      //----------------------------------------------------------------
      void I2c_Send_Byte(u08 data);
      u08 I2c_Rev_Byte(void);

      //*****************************************************************
      //函   數(shù)   名   :   _Nop   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   延時函數(shù),最大值為0xff
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-18
      //*****************************************************************
      void  _Nop(u08 dly)  
      {
         u08 i;
         for(i=0;i<dly;i++)
         {
            asm("nop");
         }
      }

      //==============================================
      //I2C通訊協(xié)議實現(xiàn)部分
      //==============================================

      //*****************************************************************
      //函   數(shù)   名   :   Start_I2c   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   啟動模擬I2C通訊
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-17
      //*****************************************************************
      void Start_I2c(void)
      {
        SDA_1;   //發(fā)送起始條件的數(shù)據(jù)信號
        _Nop(1);
        SCL_1;
        _Nop(5);    //起始條件建立時間大于4.7us,延時   
        SDA_0;   //發(fā)送起始信號
        _Nop(5);    // 起始條件鎖定時間大于4μs
             
        SCL_0;   //鉗住I2C總線,準備發(fā)送或接收數(shù)據(jù)
        _Nop(5);
      }

      //*****************************************************************
      //函   數(shù)   名   :   Stop_I2c   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   停止模擬I2C通訊
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-17
      //*****************************************************************
      void Stop_I2c(void)
      {
        SDA_0  //發(fā)送結(jié)束條件的數(shù)據(jù)信號
        _Nop(1); 
        SCL_1  //結(jié)束條件建立時間大于4μs
        _Nop(5);
        SDA_1  //發(fā)送I2C總線結(jié)束信號
        _Nop(5);
      }

      //*****************************************************************
      //函   數(shù)   名   :   I2c_Send_Byte   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   向I2c總線發(fā)送1個字節(jié)的數(shù)據(jù)/命令
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-18
      //*****************************************************************
      void I2c_Send_Byte(u08 data)
      {
         u08 BitCnt;
       
         for(BitCnt=0;BitCnt<8;BitCnt++)  //要傳送的數(shù)據(jù)長度為8位
          {
           if((data<<BitCnt)&0x80)
              SDA_1        //判斷發(fā)送位
            else  
             SDA_0                
           _Nop(15);
           SCL_1                  //置時鐘線為高,通知被控器開始接收數(shù)據(jù)位
            _Nop(15);        
           SCL_0 
          }
          
          _Nop(15);
          SDA_1               //8位發(fā)送完后釋放數(shù)據(jù)線,準備接收應(yīng)答位
          _Nop(15); 
          SCL_1
          _Nop(15);
          if(bit_is_set(I2C_PIN,SDA))ack=0;     
             else ack=1;        //判斷是否接收到應(yīng)答信號
          SCL_0
          _Nop(15);
      }

      //*****************************************************************
      //函   數(shù)   名   :   Stop_I2c   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   從I2c總線接收1個字節(jié)的數(shù)據(jù)/命令
      //備      注   :   返回接收到的數(shù)據(jù)/命令
      //最后修改時間   :   2004-2-18
      //*****************************************************************
      u08 I2c_Rev_Byte(void)
      {
        u08 retc;
        u08 BitCnt;
        
        retc=0; 
        SDA_1             //置數(shù)據(jù)線為輸入方式
        for(BitCnt=0;BitCnt<8;BitCnt++)
            {
              _Nop(15);           
              SCL_0       //置時鐘線為低,準備接收數(shù)據(jù)位
              _Nop(20);
              SCL_1       //置時鐘線為高使數(shù)據(jù)線上數(shù)據(jù)有效
              _Nop(20);
              retc=retc<<1;
              if(bit_is_set(I2C_PIN,SDA))retc=retc+1; //讀數(shù)據(jù)位,接收的數(shù)據(jù)位放入retc中 
              _Nop(20);
            }
        SCL_0    
        _Nop(20);
        return(retc);
      }

      //*****************************************************************
      //函   數(shù)   名   :   Ack_I2c   
      //建 立 時  間   :   2004-2-17
      //功 能 描  述   :   主機的發(fā)送應(yīng)答信號
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-17
      //*****************************************************************
      void Ack_I2c(u08 a)
      {
        
        if(a==0)SDA_0     //在此發(fā)出應(yīng)答或非應(yīng)答信號 
              else SDA_1
        _Nop(5);  
        SCL_1
          _Nop(5);
       SCL_0               //清時鐘線,鉗住I2C總線以便繼續(xù)接收
          _Nop(5);
      }

      //*****************************************************************
      //函   數(shù)   名   :   I2c_Read
      //建 立 時  間   :   2004-2-18
      //功 能 描  述   :   從I2C總線上讀取數(shù)據(jù)/命令,icadder是從器件地址,adder
      //               是從器件的寄存器(如果有的話),count是一次讀取的的數(shù)量
      //               *buff讀取的數(shù)據(jù)存放地址
      //備      注   :   沒有返回值
      //最后修改時間   :   2004-2-18
      //*****************************************************************
      void I2c_Read(u08 icadder, u08 adder, u08 count, u08 *buff)
      {   
         u08 i;
         Start_I2c();
         _Nop(5);
         I2c_Send_Byte(icadder);   //寫入IC的地址
         _Nop(10);
          I2c_Send_Byte(adder);   //寫入寄存器地址
          _Nop(10);
         
         Stop_I2c();            //可查看I2C標準 
         _Nop(5);

          Start_I2c();
         _Nop(5);
          I2c_Send_Byte(icadder+1);
          _Nop(10);

          for (i=0;i<count;i++)
          {
             *buff=I2c_Rev_Byte();
             if (i!=count-1) Ack_I2c(0);//除最后一個字節(jié)外,其他都要從MASTER發(fā)應(yīng)答。
             buff++;
          }
          //SendAck();//除最后一個字節(jié)外,其他都要從MASTER發(fā)應(yīng)答。

          Ack_I2c(1);
          Stop_I2c();
         
      }

      //*****************************************************************
      //函   數(shù)   名   :   I2c_Send
      //建 立 時  間   :   2004-2-18
      //功 能 描  述   :   從I2C總線上讀取數(shù)據(jù)/命令,icadder是從器件地址,adder
      //               是從器件的寄存器(如果有的話),value要寫入的值
      //備      注   :   有返回值

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美午夜电影在线播放| 久久久久国产精品麻豆ai换脸| 国产肉丝袜一区二区| 国产麻豆一精品一av一免费| 久久先锋资源网| 懂色av中文一区二区三区| 中文字幕av一区二区三区| 久久美女高清视频| 国产+成+人+亚洲欧洲自线| 欧美国产丝袜视频| 91网站黄www| 视频一区视频二区中文| 日韩一区二区三区四区| 国产一区二区三区视频在线播放| 久久久99精品免费观看| www.色综合.com| 亚洲国产综合在线| 日韩一区二区免费电影| 国产成人在线影院| 亚洲欧美另类久久久精品 | 亚洲女爱视频在线| 欧美日韩亚洲综合| 国产呦萝稀缺另类资源| 国产精品视频免费看| 欧美最猛性xxxxx直播| 蜜桃一区二区三区在线| 中文字幕在线观看一区| 欧美日韩小视频| 国产精品69久久久久水密桃| 亚洲欧美日韩综合aⅴ视频| 日韩欧美激情一区| 91猫先生在线| 久久疯狂做爰流白浆xx| 亚洲激情av在线| www亚洲一区| 欧美日韩色综合| 不卡的av网站| 韩国女主播成人在线| 亚洲免费观看在线视频| 欧美精品一区二区在线播放| 在线免费不卡视频| 成人听书哪个软件好| 麻豆国产精品视频| 亚洲精品高清在线| 国产婷婷色一区二区三区| 欧美日韩高清在线| 99免费精品在线观看| 狠狠网亚洲精品| 首页国产欧美久久| 亚洲人吸女人奶水| 国产精品视频一区二区三区不卡| 91精品国产综合久久久久| 91免费版在线看| 国产成人av影院| 老司机一区二区| 亚洲成av人在线观看| 亚洲私人影院在线观看| 国产亚洲一本大道中文在线| 91精品国产综合久久香蕉的特点| 日本精品免费观看高清观看| 丁香桃色午夜亚洲一区二区三区| 美女性感视频久久| 日韩一区欧美二区| 亚洲你懂的在线视频| 国产精品灌醉下药二区| 国产午夜精品福利| 精品久久久久99| 欧美va日韩va| 日韩欧美成人激情| 日韩欧美中文一区| 欧美一区二区三区不卡| 欧美色爱综合网| 欧美日韩中文字幕一区二区| 色嗨嗨av一区二区三区| 色综合久久久网| 在线看日本不卡| 精品视频一区三区九区| 欧美在线观看禁18| 欧美日韩国产大片| 欧美肥妇bbw| 日韩欧美成人午夜| 久久久久久久久免费| 国产亚洲一区二区三区在线观看| 久久青草欧美一区二区三区| 久久先锋影音av鲁色资源网| 久久免费美女视频| 欧美韩日一区二区三区四区| 国产精品水嫩水嫩| 一区二区三区在线观看网站| 亚洲综合在线五月| 三级欧美韩日大片在线看| 免费xxxx性欧美18vr| 国内一区二区视频| 成人一级视频在线观看| av动漫一区二区| 欧美在线免费视屏| 日韩三级视频中文字幕| 国产午夜精品久久| 亚洲黄色小说网站| 日韩精品午夜视频| 国产999精品久久久久久| 99视频在线精品| 欧美老年两性高潮| ww久久中文字幕| 一区二区三区中文字幕| 日日夜夜一区二区| 粉嫩一区二区三区性色av| 国产欧美一区二区精品婷婷| 国产精品三级电影| 亚洲在线免费播放| 久久99精品久久只有精品| aa级大片欧美| 91精品国产综合久久福利| 国产精品素人视频| 午夜伦理一区二区| 高潮精品一区videoshd| 欧美视频中文字幕| 国产欧美一区二区精品性色 | 色狠狠一区二区三区香蕉| 91麻豆精品国产91久久久久| 国产欧美日韩麻豆91| 亚洲福利一二三区| 大白屁股一区二区视频| 欧美日韩一二三| 国产精品久久久久久久久动漫| 午夜免费久久看| jizz一区二区| 精品久久人人做人人爽| 伊人色综合久久天天| 激情成人综合网| 欧美三级电影网| 国产精品国模大尺度视频| 日韩av午夜在线观看| 色综合久久综合网欧美综合网| 精品欧美乱码久久久久久| 亚洲综合激情小说| 成人av免费在线| 日韩欧美电影一二三| 一区二区国产视频| 日韩欧美国产电影| 亚洲精品自拍动漫在线| 国产一区在线不卡| 欧美一区二区三区色| 亚洲国产一二三| 成人aaaa免费全部观看| 欧美精品一区二区久久婷婷| 午夜一区二区三区视频| 99久久精品国产一区| 国产三级欧美三级| 国内精品伊人久久久久av影院 | 欧美一级黄色录像| 亚洲综合色视频| 91蝌蚪porny| 国产精品天干天干在观线| 国产伦精品一区二区三区在线观看| 欧美狂野另类xxxxoooo| 亚洲午夜精品一区二区三区他趣| 99re在线视频这里只有精品| 国产日韩亚洲欧美综合| 国产一区二区精品久久99| 精品日韩av一区二区| 日本不卡一二三| 欧美久久一区二区| 亚洲成年人网站在线观看| 欧美色手机在线观看| 亚洲一区在线播放| 欧美日韩精品福利| 三级影片在线观看欧美日韩一区二区| 欧美三级电影在线观看| 亚洲高清不卡在线观看| 欧美日韩视频专区在线播放| 一区二区三区四区蜜桃| 在线观看www91| 午夜久久久久久电影| 6080国产精品一区二区| 亚洲成人福利片| 欧美一级理论片| 国产一区二区三区四区五区入口| 久久久久久久综合狠狠综合| 国产黄色成人av| 中文字幕佐山爱一区二区免费| 91视频免费播放| 亚洲一级二级三级在线免费观看| 欧美色网一区二区| 日欧美一区二区| 久久中文字幕电影| 成人av高清在线| 亚洲亚洲人成综合网络| 欧美一区二区三区免费观看视频| 麻豆精品视频在线| 欧美国产日产图区| 色综合久久中文综合久久97 | 国产日韩欧美综合在线| 成人高清伦理免费影院在线观看| 亚洲色图另类专区| 日韩亚洲欧美成人一区| 97se亚洲国产综合自在线不卡| 国产一区二区中文字幕| 国产精品久久久久9999吃药| 欧美视频一区二区三区|