久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標(biāo)題: 關(guān)于警告[I2CMEM]stop condition whilst memory is transmitting data is unreliable [打印本頁(yè)]

作者: 唔昂王    時(shí)間: 2022-3-3 14:43
標(biāo)題: 關(guān)于警告[I2CMEM]stop condition whilst memory is transmitting data is unreliable
如題所述,51單片機(jī)仿真中外接AT24C02提示這個(gè)警告:[I2CMEM]stop condition whilst memory is transmitting data is unreliable。
請(qǐng)教下這個(gè)警告的意思以及該如何消除警告。謝謝。

作者: 唔昂王    時(shí)間: 2022-3-3 14:44
程序可以正常運(yùn)行沒(méi)發(fā)現(xiàn)有什么異常
作者: 唔昂王    時(shí)間: 2022-3-3 16:19
/*************************************************************
                      AT24C02頭文件

實(shí)現(xiàn)功能:AT24C02的控制

補(bǔ)充說(shuō)明:
***************************************************************/
#ifndef _AT24C02_H_
#define _AT24C02_H_
#include<reg52.h>
#include<intrins.h>

#define uchar unsigned char
#define uint unsigned int

/*********************AT24C02引腳定義*********************/
sbit sda=P2^1;
sbit scl=P2^0;

/*********************AT24C02函數(shù)定義*********************/
void  AT24C02_delay(uint n);                                            //延時(shí)40*n微妙
void  AT24C02_start();                                                           //開(kāi)始信號(hào)
void  AT24C02_stop();                                                           //停止信號(hào)
void  AT24C02_respons();                                                   //應(yīng)答信號(hào)
void  AT24C02_write(uchar date);                                   //寫(xiě)數(shù)據(jù)
uchar AT24C02_read();                                                           //讀數(shù)據(jù)
void  AT24C02_write_date(uchar address,uchar date);//向address地址寫(xiě)輸dete數(shù)據(jù)
uchar AT24C02_read_date(uchar address);                           //向address讀出數(shù)據(jù)并返回

/********************************************************
函數(shù)名稱:void AT24C02_delay(uint n)
函數(shù)作用:AT24C02延時(shí)函數(shù)
參數(shù)說(shuō)明:延時(shí)40*n微妙
********************************************************/
void AT24C02_delay(uint n)
{
        uint i;
        uchar j;
        for(i=n;i>0;i--)
        for(j=0;j<2;j++);   
}
/*********************************************************
函數(shù)名稱:void AT24C02_start()
函數(shù)作用:AT24C02開(kāi)始信號(hào)
參數(shù)說(shuō)明:
*********************************************************/
void AT24C02_start()
{
        sda=1;
        _nop_();
        _nop_();
        scl=1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        sda=0;
        _nop_();
        _nop_();
}
/*********************************************************
函數(shù)名稱:void AT24C02_stop()
函數(shù)作用:AT24C02停止信號(hào)
參數(shù)說(shuō)明:
*********************************************************/
void AT24C02_stop()
{
        sda=0;
        _nop_();
        _nop_();
        scl=1;
        _nop_();
        _nop_();
        _nop_();
        _nop_();
        sda=1;
        _nop_();
        _nop_();
}

/*********************************************************
函數(shù)名稱:void AT24C02_respons()
函數(shù)作用:AT24C02應(yīng)答信號(hào)
參數(shù)說(shuō)明:
*********************************************************/
void AT24C02_respons()
{
        uchar i;
        scl=1;
        _nop_();
        _nop_();
        while((sda=1)&&(i<250))
                i++;
        scl=0;
        _nop_();
        _nop_();
}

/*********************************************************
函數(shù)名稱:void AT24C02_write(uchar date)
函數(shù)作用:AT24C02寫(xiě)一個(gè)字節(jié)數(shù)據(jù)
參數(shù)說(shuō)明:
*********************************************************/
void AT24C02_write(uchar date)
{
         uchar i;
         scl=0;
         for(i=0;i<8;i++)
         {
                 sda = (bit)(date&0x80);
                 _nop_();                 
                 scl=1;
                 _nop_();
                 _nop_();
                 scl=0;
                 date<<=1;
         }
}

/*********************************************************
函數(shù)名稱:uchar AT24C02_read()
函數(shù)作用:AT24C02讀一個(gè)字節(jié)數(shù)據(jù)
參數(shù)說(shuō)明:
*********************************************************/
uchar AT24C02_read()
{
        uchar i,k;
        for(i=0;i<8;i++)
        {
                scl=1;               
                k=(k<<1)|sda;
                scl=0;
        }
        return k;
}

/*********************************************************
函數(shù)名稱:void AT24C02_write_date(uchar address,uchar date)
函數(shù)作用:AT24C02寫(xiě)數(shù)據(jù)
參數(shù)說(shuō)明:將數(shù)據(jù)date寫(xiě)入到address地址里
*********************************************************/
void AT24C02_write_date(uchar address,uchar date)
{
        AT24C02_start();                //開(kāi)始信號(hào)
        AT24C02_write(0xa0);         //寫(xiě)時(shí)候。寫(xiě)入AT24C02器件地址,由于器件引腳A2,A1,A0都是接地,所以器件地址為0xa0
        AT24C02_respons();                //應(yīng)答信號(hào)
        AT24C02_write(address); //寫(xiě)入將要存放數(shù)據(jù)的地址
        AT24C02_respons();                //應(yīng)答信號(hào)
        AT24C02_write(date);    //寫(xiě)入數(shù)據(jù)
        AT24C02_respons();                //應(yīng)答信號(hào)
        AT24C02_stop();                        //停止信號(hào)
        AT24C02_delay(150);
}

/*********************************************************
函數(shù)名稱:uchar AT24C02_read_date(uchar address)
函數(shù)作用:AT24C02讀數(shù)據(jù)
參數(shù)說(shuō)明:向address地址里讀出一個(gè)數(shù)據(jù),并返回
*********************************************************/
uchar AT24C02_read_date(uchar address)
{
        uchar date;
        AT24C02_start();                           //開(kāi)始信號(hào)
        AT24C02_write(0xa0);                    //寫(xiě)時(shí)候。寫(xiě)入AT24C02器件地址,由于器件引腳A2,A1,A0都是接地,所以器件地址為0xa0
        AT24C02_respons();                           //應(yīng)答信號(hào)
        AT24C02_write(address);//寫(xiě)入將要讀取數(shù)據(jù)的地址
        AT24C02_respons();                           //應(yīng)答信號(hào)
        AT24C02_start();                           //開(kāi)始信號(hào)
        AT24C02_write(0xa1);                   //讀時(shí)候。寫(xiě)入AT24C02器件地址,由于器件引腳A2,A1,A0都是接地,所以器件地址為0xa1
        AT24C02_respons();                           //應(yīng)答信號(hào)
        date=AT24C02_read();                    //讀取數(shù)據(jù)
        AT24C02_stop();
        AT24C02_delay(150);
        return date;                                   //返回?cái)?shù)據(jù)
}
#endif




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 人人九九精| 午夜一区| 国产精品无码久久久久 | 91一区二区| 在线91 | 国产精品一区二区在线播放 | 久久激情五月丁香伊人 | 精品无码久久久久久国产 | 先锋资源亚洲 | 国产精品高潮呻吟久久 | 久久免费资源 | 亚洲人精品午夜 | 国产伊人久久久 | 91一区二区三区在线观看 | 国产伦精品一区二区三毛 | 精品久久久久久久久久久久 | 久久r精品 | 欧美激情精品久久久久久免费 | 精品乱人伦一区二区三区 | 久草热8精品视频在线观看 午夜伦4480yy私人影院 | 久久久www成人免费无遮挡大片 | 久久999| 成人精品一区 | 亚洲91视频| 成年人视频在线免费观看 | 久久国产精品视频 | 久久久久亚洲国产| 国产精品电影网 | 久久91精品久久久久久9鸭 | 国产成人精品综合 | 亚洲一区二区av在线 | www.黄色片视频 | 精品中文字幕久久 | 国产精品欧美一区二区 | 精品福利视频一区二区三区 | 国产精品视频999 | 久久久久久亚洲精品 | 男女免费观看在线爽爽爽视频 | 91成人在线视频 | 天天综合久久 | 99tv|