• 大小: 5.63MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-09-26
  • 语言: 其他
  • 标签: 记录器  

资源简介

电子类毕业设计来电显示记录器

资源截图

代码片段和文件信息

/*     51系列单片机在使用时,有时需要模拟I2C总线,                      */
/*   这里举出一个实例(读写串行EEPROM芯片at2402)                       */
/************************************************************************/
/* Name:AT24C02存储器的读写程序用到I2C总线含相对独立的I2C总线读写函数 */
/* Language: C51单片机编程语言                                          */
/* Platform: Win98Intel Celeron 433 Processor伟福仿真器,仿真8751     */
/* Author:  StephenZhu    javasdk@163.com                               */
/* Date: 2003年5月21日5月22日5月29日                                  */
/* Version: 1.1.1                            */
/* Others: None 
//写与读之间要有足够的时间                                                        */
/************************************************************************/

    #include
    #include 
    #include
    #define uchar unsigned char
    #define DELAY_TIME 8 /*经实验,不要小于50!否则可能造成时序混乱*/
    #define TRUE 1
    #define FALSE 0
    sbit Wp=P3^6;
    sbit SCL=P3^5;/*假设由P1.7和P1.6控制*/
    sbit SDA=P3^4;
uchar dispbuf[8]={11000000};
uchar dispbitcnt=0;
int dispbit;
    uchar  i;
void display (unsigned char * dispbuf)
  {  uchar dispbit;
    P2=dispbuf[dispbitcnt];
    dispbit=dispbitcnt;
    dispbit<<=4;
P2|=dispbit;
dispbitcnt++;
   if(dispbitcnt==8)
     dispbitcnt=0;
   
  }


/********** Function Definition 函数定义 ************/

    void DELAY(unsigned int t) /*延时函数*/
    {
        while(t!=0)
            t--; 
    }

    void I2C_Start(void)
    {
        /*启动I2C总线的函数,当SCL为高电平时使SDA产生一个负跳变*/
        SDA=1;
        SCL=1;
        DELAY(DELAY_TIME);
        SDA=0;
        DELAY(DELAY_TIME);
        SCL=0;
        DELAY(DELAY_TIME);
    }

    void I2C_Stop(void)
    {
        /*终止I2C总线,当SCL为高电平时使SDA产生一个正跳变*/
        SDA=0;
        SCL=1;
        DELAY(DELAY_TIME);
        SDA=1;
        DELAY(DELAY_TIME);
        SCL=0;
        DELAY(DELAY_TIME);
    }

    void SEND_0(void)   /* SEND ACK */
    {
        /*发送0,在SCL为高电平时使SDA信号为低*/
        SDA=0;
        SCL=1;
        DELAY(DELAY_TIME);
        SCL=0;
        DELAY(DELAY_TIME);
    }

    void SEND_1(void)
    {
        /*发送1,在SCL为高电平时使SDA信号为高*/
        SDA=1;
        SCL=1;
        DELAY(DELAY_TIME);
        SCL=0;
        DELAY(DELAY_TIME);
    }

    bit Check_Acknowledge(void)
    {
        /*发送完一个字节后检验设备的应答信号*/
        SDA=1;
        SCL=1;
        DELAY(DELAY_TIME/2);
        F0=SDA;
        DELAY(DELAY_TIME/2);
        SCL=0;
       
        if(F0==1)
           { DELAY(DELAY_TIME); 
            return FALSE;
            }
     return TRUE;
    }

    void WriteI2CByte(uchar b)//reentrant
    {
        /*向I2C总线写一个字节*/
        uchar i;
        for(i=0;i<8;i++)
            if((b<                {SEND_1();
                 }
            else
                SEND_0();
    }

 

    uchar ReadI2CByte(void)//reentrant
    {
        /*从I2C总线读一个字节*/
        uchar b=0i;
   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件     681476  2006-09-26 22:03  来电显示记录器\来电显示.exe

     文件   18184192  2009-04-24 20:37  来电显示记录器\mt8870.ddb

     文件     167424  2006-06-05 12:42  来电显示记录器\王龙波\王龙波毕业设计(论文)任务书.doc

     文件      75776  2006-05-26 18:31  来电显示记录器\王龙波\王龙波开题报告.doc

     文件    1539639  2005-07-12 17:25  来电显示记录器\王龙波\翻译\ARM7TDMI_en.pdf

     文件     184320  2006-06-05 12:26  来电显示记录器\王龙波\翻译\翻译.doc

     文件     463360  2006-06-05 17:22  来电显示记录器\王龙波\翻译\英文原文封面和目录.doc

     文件     463360  2006-06-05 17:24  来电显示记录器\王龙波\翻译\中文译文封面和目录.doc

     文件     487936  2006-06-05 17:19  来电显示记录器\王龙波\论文\毕业设计.封面.doc

     文件     780288  2006-06-05 17:16  来电显示记录器\王龙波\论文\论文.doc

     文件       6582  2005-05-05 20:45  来电显示记录器\dmf\24c02-4.c

     文件       3002  2006-05-26 00:06  来电显示记录器\dmf\24c02.h

     文件       4334  2006-05-25 10:15  来电显示记录器\dmf\at24c02.h

     文件       5993  2006-06-14 13:00  来电显示记录器\dmf\bishe.hex

     文件         26  2006-06-14 13:00  来电显示记录器\dmf\bishe.lnp

     文件      40636  2006-06-14 13:00  来电显示记录器\dmf\bishe.M51

     文件       1174  2006-05-30 16:53  来电显示记录器\dmf\bishe_Opt.Bak

     文件        856  2006-06-14 13:01  来电显示记录器\dmf\bishe.plg

     文件       1991  2006-05-25 16:35  来电显示记录器\dmf\bishe.Uv2

     文件       1987  2006-05-25 10:03  来电显示记录器\dmf\bishe_Uv2.Bak

     文件      12223  2006-05-26 15:26  来电显示记录器\dmf\i2c.c

     文件      10082  2006-05-26 16:21  来电显示记录器\dmf\i2c.h

     文件       3270  2006-05-25 02:28  来电显示记录器\dmf\LCM1602.h

     文件       5650  2006-06-14 13:00  来电显示记录器\dmf\main.c

     文件       5751  2006-05-26 15:28  来电显示记录器\dmf\main2

     文件       5107  2006-03-08 13:20  来电显示记录器\dmf\timer.hex

     文件        719  2006-05-25 02:27  来电显示记录器\dmf\Uart.h

     文件       1076  2006-05-25 10:03  来电显示记录器\dmf\user.h

     文件      30364  2006-06-14 13:00  来电显示记录器\dmf\bishe

     文件         34  2006-06-14 13:00  来电显示记录器\dmf\main.__i

............此处省略12个文件信息

评论

共有 条评论