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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? main.c

?? IAR WorkBench下
?? C
字號:
#include  <msp430x14x.h>
#include  <string.h>

#include "xtype.h"

#define AT24LC64_ADDR 0xa0

#define IICSDA 0x01
#define IICSCL 0x20

#define IICSDAIn()   P2DIR &= ~IICSDA
#define IICSDAOut()  P2DIR |= IICSDA

#define IICSetSDA()  P2DIR |= IICSDA;P2OUT |= IICSDA
#define IICClrSDA()  P2DIR |= IICSDA;P2OUT &= ~IICSDA
#define IICReadSDA() P2IN & IICSDA 

#define IICSetSCL()  P1OUT |= IICSCL
#define IICClrSCL()  P1OUT &= ~IICSCL


/********************************************************************************************************
** 函數名稱: WriteDelay
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void WriteDelay(void)
{
  uint16 i;
  for(i=0;i<8000;i++);
}

/********************************************************************************************************
** 函數名稱: IICStart
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------ 
********************************************************************************************************/
void IICStart(void)
{
  IICSetSDA();
  IICSetSCL();
  IICClrSDA();
  IICClrSCL();
}
/********************************************************************************************************
** 函數名稱: IICStop
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void IICStop(void)
{
  IICClrSDA();
  IICSetSCL();
  IICSetSDA();
  IICSetSCL();
}
/********************************************************************************************************
** 函數名稱: IICReadAck
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
bit IICReadAck(void)
{
  bit status;
  IICSetSDA();
  IICSetSCL();
  
  IICSDAIn();
  status=IICReadSDA();
  
  IICClrSCL();
  IICSDAOut();
  
  return(status);
}
/********************************************************************************************************
** 函數名稱: IICWriteAck
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void IICWriteAck(void)
{
  IICSDAOut(); 
  IICClrSDA();
  
  IICSetSCL();
  IICClrSCL();
  IICSetSDA();
}
/********************************************************************************************************
** 函數名稱: IICNoAck
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
void IICNoAck(void)
{
  IICSDAOut();
  IICSetSDA();
  
  IICSetSCL();
  IICClrSCL();
}
/********************************************************************************************************
** 函數名稱: IICWriteByte
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
bit IICWriteByte(uint8 v)
{
  uint8 i;
  for(i=0;i<8;i++)
  {
    if(v &0x80)
    {
      IICSetSDA();
    }
    else
    {
      IICClrSDA();
    }
    IICSetSCL();
    IICClrSCL();
    v=v<<1;
  };
  return(IICReadAck());
}
/********************************************************************************************************
** 函數名稱: IICReadByteWithAck
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 IICReadByteWithAck(void)
{
  uint8 rc,i;
  rc=0;
  
  IICSDAOut();
  IICSetSDA();
  
  IICSDAIn();
  for(i=0;i<8;i++)
  {
    rc=rc<<1;
    IICSetSCL();
    rc=(IICReadSDA())?(rc | 0x01):(rc);
    IICClrSCL();
  };
  
  IICWriteAck();
  return(rc);
}
/********************************************************************************************************
** 函數名稱: IICReadByteWithoutAck
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
uint8 IICReadByteWithoutAck(void)
{
  uint8 rc,i;
  rc=0;
  
  IICSDAOut();
  IICSetSDA();
  
  IICSDAIn();
  for(i=0;i<8;i++)
  { 
    rc=rc<<1;
    IICSetSCL();    
    
    rc=(IICReadSDA())?(rc | 0x01):(rc);
    IICClrSCL();
  };
  IICNoAck();
  return(rc);
}
/********************************************************************************************************
** 函數名稱: EEPROMWriteData
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
bit EEPROMWriteData(uint16 word_address, uint8 *p, uint16 count)
{
  uint16 i;
  uint8 word_address1,word_address0;
  uint8 slave_address;
  
  slave_address = AT24LC64_ADDR;
  
  i=0;
  
  P1DIR |= IICSCL;  //define to output 
  IICSDAOut(); //define to output
  
  while(i<count)
  {
    word_address1 = word_address>>8;
    word_address0 = word_address&0xff;
   
    IICStart();
    slave_address=slave_address&0xfe;
    if(IICWriteByte(slave_address))return(1);
    if(IICWriteByte(word_address1))return(1);
    if(IICWriteByte(word_address0))return(1);
    
    while(i<count)
    {
      if(IICWriteByte(*p))return(1);
      word_address++;
      p++;
      i++;
      if((word_address&0x001f)==0)
        break;
    };
    IICStop();
    WriteDelay();
  };
  return(0);
}
/********************************************************************************************************
** 函數名稱: EEPROMReadData
** 功能描述: 
** 輸 入: 無
** 輸 出: 無
** 全局變量: 無
*-------------------------------------------------------------------------------------------------------
** 修改人:
** 日 期:
**------------------------------------------------------------------------------------------------------
********************************************************************************************************/
bit EEPROMReadData(uint16 word_address,uint8  *p,uint16 count)
{
    uint16 i;
    uint8 word_address1,word_address0;
    uint8 slave_address;
  
    slave_address=AT24LC64_ADDR;
  
    i=0;
  
    P1DIR |= IICSCL;  //define to output 
    IICSDAOut(); //define to output
  
    while(i<count)
    {
        word_address1=word_address>>8;
        word_address0=word_address&0xff;

        IICStart(); 
        slave_address=slave_address&0xfe;
        if(IICWriteByte(slave_address)) return(1);
        if(IICWriteByte(word_address1)) return(1);
        if(IICWriteByte(word_address0)) return(1);
        IICStart();
        slave_address=slave_address|0x01;
        if(IICWriteByte(slave_address))return(1);
        while(i<count)
        {  
            word_address++; 
	        i++;
            
            if(((word_address&0x001f)==0)||(i==count))
            {
	            *p=IICReadByteWithoutAck();
            }
            else
            {
                *p=IICReadByteWithAck();
            };
            
            p++;
            if((word_address&0x001f)==0)break; 
        };
        IICStop();
    };
    return(0);
}

void main(void)
{
  uint8 Buf[128],stat;
  
  WDTCTL = WDTPW + WDTHOLD;             // Stop WDT  

  BCSCTL1&=~XT2OFF;       //XT2 available         
  BCSCTL2|=SELM1;         //Mclk,SMCLK=8M
  BCSCTL2|=SELS; 

  do              
  { 
    int k = 0xff;
    IFG1&=~OFIFG;              
    for(k=0xff;k>0;k--);       
  }
  while((IFG1&OFIFG)!=0); 
   
  for(stat=0;stat<128;stat++)
  {
    Buf[stat] = stat;
  };
  while(1)
  {
    stat = EEPROMWriteData(0x0000, Buf, 128);
    
    memset(Buf,0,sizeof(Buf));
    Buf[1]= stat;
    
    stat = EEPROMReadData(0x0000, Buf, 128); 
    
    Buf[0]= stat;
  }
}



?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品亚洲午夜一区二区三区 | 亚洲国产成人tv| 久久先锋影音av鲁色资源网| 欧美一级高清片在线观看| 欧美亚洲丝袜传媒另类| 欧美在线免费观看亚洲| 91成人国产精品| 在线观看网站黄不卡| 欧美日韩精品三区| 日韩视频一区二区| 久久亚洲欧美国产精品乐播 | 亚洲欧美国产三级| 亚洲色欲色欲www在线观看| 亚洲综合在线免费观看| 亚洲国产精品影院| 另类小说色综合网站| 国产91精品久久久久久久网曝门| 丰满白嫩尤物一区二区| www.欧美日韩国产在线| 色哟哟一区二区在线观看| 欧美色手机在线观看| 欧美一区午夜视频在线观看| 久久午夜电影网| 日韩码欧中文字| 午夜激情一区二区三区| 国产在线精品视频| 在线观看一区二区视频| 日韩精品在线一区| 椎名由奈av一区二区三区| 亚洲一二三区视频在线观看| 九一九一国产精品| 91网站在线观看视频| 欧美卡1卡2卡| 国产精品丝袜在线| 日本欧美韩国一区三区| 本田岬高潮一区二区三区| 欧美亚洲精品一区| 国产日韩欧美精品在线| 午夜精品福利一区二区三区av| 国产精品资源网| 欧美视频一区二区在线观看| 国产午夜精品理论片a级大结局| 亚洲国产一区视频| 成人av先锋影音| 日韩免费观看高清完整版| 亚洲丝袜精品丝袜在线| 国产伦精品一区二区三区免费 | 中文字幕精品一区二区精品绿巨人| 亚洲一级电影视频| 成人午夜电影网站| 日韩欧美的一区| 亚洲国产另类av| 91丨九色丨蝌蚪丨老版| 国产日韩欧美高清在线| 精品一区二区影视| 91超碰这里只有精品国产| 亚洲色图.com| av电影在线观看一区| 久久久久九九视频| 伦理电影国产精品| 欧美精品xxxxbbbb| 亚洲成人三级小说| 欧美日韩国产电影| 亚洲一区二区欧美| 欧亚洲嫩模精品一区三区| 自拍偷拍亚洲激情| 99久久99久久久精品齐齐| 欧美激情一区不卡| 高潮精品一区videoshd| 国产欧美日韩综合| 国产精品一区二区三区乱码| 精品国内片67194| 六月丁香婷婷色狠狠久久| 91精品黄色片免费大全| 亚瑟在线精品视频| 欧美一级片免费看| 麻豆视频观看网址久久| 9191成人精品久久| 日本aⅴ精品一区二区三区| 欧美顶级少妇做爰| 久久成人精品无人区| 精品国产乱码久久久久久老虎 | 亚洲一区免费观看| 欧美网站大全在线观看| 亚洲国产一二三| 91麻豆精品久久久久蜜臀| 免费日本视频一区| 久久精品一二三| 国产成人8x视频一区二区| 国产精品蜜臀在线观看| 一本大道久久a久久精品综合| 免费成人在线观看视频| 日韩一级免费观看| 粉嫩13p一区二区三区| 日韩一区日韩二区| 欧美三级电影一区| 另类综合日韩欧美亚洲| 亚洲国产成人私人影院tom| 在线亚洲+欧美+日本专区| 视频一区中文字幕| 国产农村妇女毛片精品久久麻豆| 91麻豆成人久久精品二区三区| 亚洲激情成人在线| 欧美大片顶级少妇| 97精品久久久午夜一区二区三区| 日韩成人av影视| 久久久99久久| 欧美区在线观看| 成人午夜激情视频| 日韩av不卡一区二区| 国产三级欧美三级日产三级99| 91国在线观看| 国产精品中文有码| 婷婷丁香久久五月婷婷| 国产日韩亚洲欧美综合| 欧美高清www午色夜在线视频| 国产.精品.日韩.另类.中文.在线.播放| 中文字幕日本不卡| 91精品国产综合久久精品图片| 成人天堂资源www在线| 奇米四色…亚洲| 亚洲自拍偷拍av| 国产女主播一区| 日韩午夜电影在线观看| 色婷婷综合久久久| 成人激情文学综合网| 九色综合国产一区二区三区| 亚洲一区视频在线观看视频| 中文一区二区完整视频在线观看| 在线看不卡av| 成人丝袜视频网| 国产一区二区三区四区五区美女 | 激情五月播播久久久精品| 亚洲综合图片区| 亚洲人一二三区| 综合网在线视频| 国产精品乱人伦| 久久综合给合久久狠狠狠97色69| 欧美久久久久久久久| 在线观看成人小视频| 99久久国产综合精品麻豆| 成人手机在线视频| 国产成人在线网站| 国产一区三区三区| 国内精品伊人久久久久av一坑 | 成人精品一区二区三区中文字幕| 久草这里只有精品视频| 看电视剧不卡顿的网站| 日韩国产精品久久| 日韩电影一区二区三区| 亚洲.国产.中文慕字在线| 亚洲3atv精品一区二区三区| 午夜精品久久久久久久99樱桃| 亚洲国产综合色| 天堂蜜桃91精品| 日本伊人色综合网| 男人操女人的视频在线观看欧美| 青青草97国产精品免费观看无弹窗版| 亚洲一区二区三区四区的| 亚洲国产中文字幕| 蜜臀av亚洲一区中文字幕| 五月天精品一区二区三区| 日本 国产 欧美色综合| 久久精品国产亚洲a| 国产一区二区三区四区五区入口| 国产不卡视频一区二区三区| 成人午夜视频免费看| 成年人国产精品| 欧美中文字幕一区| 337p亚洲精品色噜噜噜| 精品国内片67194| 亚洲欧美在线aaa| 亚洲成人黄色小说| 久久精品国产久精国产爱| 国产在线播精品第三| 97久久超碰精品国产| 欧美日韩精品一区视频| 久久久噜噜噜久久人人看| 国产精品网友自拍| 亚洲成人动漫精品| 国产成人午夜电影网| 欧美性感一区二区三区| 欧美不卡123| 1区2区3区精品视频| 天堂蜜桃91精品| 成人久久视频在线观看| 欧美久久久久久久久| 国产精品少妇自拍| 日韩高清不卡在线| 成人视屏免费看| 日韩久久久精品| ●精品国产综合乱码久久久久 | 精品伦理精品一区| 综合久久久久综合| 久国产精品韩国三级视频| 91国偷自产一区二区三区观看 | 亚洲男同1069视频| 国产一区二区电影| 日韩三级高清在线| 亚洲另类春色国产|