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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1662|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

基于C52關(guān)于AD代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:225501 發(fā)表于 2017-8-7 15:52 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
/*
* AD PCF8591
*
* Dy×aμçλÆ÷£¬′®¿úÖúêÖ½«êÕμ½2»í¬μÄêy¾Y
*/

#include <reg51.h>
#include <intrins.h>

typedef unsigned char uint8;
typedef unsigned int uint16;

#define SLAVEADDR  0x90                 //¶¨òåÆ÷¼tμØÖ·
#define nops()  do{_nop_();_nop_();_nop_();_nop_();_nop_();} while(0) //¶¨òå¿ÕÖ¸áî


sbit SCL = P2^1;       //I2C  ê±Öó
sbit SDA = P2^0;       //I2C  êy¾Y
sbit DS1302 = P2^4;

void delay(uint16 n)
{
        while (n--);
}
/**
* oˉêy: i2c_start()
* 1|Äü: Æô¶ˉi2c                  Æeê¼DÅoÅ
*/
void i2c_start()
{
        SCL = 1;
        nops();
        SDA = 1;
        nops();
        SDA = 0;
        nops();
        SCL = 0;
}

/**
* oˉêy: i2c_stop()
* 1|Äü: í£Ö1i2c
*/
void i2c_stop()
{
        SCL = 0;
        nops();
        SDA = 0;
        nops();
        SCL = 1;
        nops();
        SDA = 1;
        nops();
}

/**
* oˉêy: i2c_ACK(bit ck)
* 1|Äü: ckÎa1ê±·¢Ëíó|′eDÅoÅACK,
*       ckÎa0ê±2»·¢ËíACK
*/
void i2c_ACK(bit ck)
{
    if (ck)
                SDA = 0;
    else
                SDA = 1;
    nops();
    SCL = 1;
    nops();
    SCL = 0;
        nops();
    SDA = 1;
    nops();
}

/**
* oˉêy: i2c_waitACK()
* 1|Äü: ·μ»ØÎa0ê±êÕμ½ACK
*       ·μ»ØÎa1ê±Ã»êÕμ½ACK
*/
bit i2c_waitACK()
{
        SDA = 1;
        nops();
        SCL = 1;
        nops();
        if (SDA)
        {   
                SCL = 0;
                i2c_stop();
                return 1;
        }
        else
        {  
                SCL = 0;
                return 0;
        }
}

/**
* oˉêy: i2c_sendbyte(uint8 bt)
* 1|Äü: ½«êäèëμÄò»×Ö½úêy¾Ybt·¢Ëí
*/
void i2c_sendbyte(uint8 bt)
{
    uint8 i;

    for(i=0; i<8; i++)
    {  
        if (bt & 0x80)
                        SDA = 1;
        else
                        SDA = 0;
        nops();
        SCL = 1;
        bt <<= 1;
        nops();      
        SCL = 0;
    }
}

/**
* oˉêy: i2c_recbyte( )
* 1|Äü: ′ó×üÏßéϽóêÕ1×Ö½úêy¾Y
*/
uint8 i2c_recbyte()
{
        uint8 dee, i;
       
        for (i=0; i<8; i++)
        {
                SCL = 1;   
                nops();
                dee <<= 1;
                if (SDA)
                        dee = dee | 0x01;
                SCL = 0;
                nops();
        }
       
        return dee;
}

/**
* oˉêy: i2c_readbyte
* êäèë: addr
* 1|Äü: ¶á3öò»×Ö½úêy¾Y
* ·μ»ØÖμ: 0->3é1|  1->ê§°ü
*/
bit i2c_readbyte(uint8 com, uint8 *dat)
{       
        i2c_start();
        i2c_sendbyte(SLAVEADDR);    //μØÖ·
    if (i2c_waitACK())
                return 1;
        i2c_sendbyte(com);        //¿ØÖÆ×Ö½ú
    if (i2c_waitACK())
                return 1;
        i2c_start();
        i2c_sendbyte(SLAVEADDR+1); //μØÖ·
    if (i2c_waitACK())
                return 1;
        *dat = i2c_recbyte();      //¶áêy¾Y
        i2c_ACK(0);                //òòÎaÖ»¶áò»×Ö½úêy¾Y£¬2»·¢ËíACKDÅoÅ
        i2c_stop();   
       
        return 0;
}

/**
* UART3õê¼»ˉ
* 2¨ìØÂê£o9600
*/
void uart_init(void)
{
    ET1=0;
    TMOD = 0x21;        // ¶¨ê±Æ÷11¤×÷Ôú·½ê½2£¨×Ô¶ˉ֨װ£©
    SCON = 0x50;        // 10λuart£¬ÔêDí′®DD½óêü

    TH1 = 0xFD;
    TL1 = 0xFD;

    TR1 = 1;
}

/**
* UART ·¢Ëíò»×Ö½ú
*/
void UART_Send_Byte(uint8 dat)
{
        SBUF = dat;
        while (TI == 0);
        TI = 0;
}


main()
{
        uint8 ans;

        uart_init();
        DS1302 = 0;
        while(1)
        {

                i2c_readbyte(0x42, &ans);
            
                UART_Send_Byte(ans);
                delay(50000);
        }
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品福利在线 | 精品国产乱码久久久久久1区2区 | 中文字幕一区二区三区四区五区 | 欧美日韩中文国产一区发布 | 欧美激情久久久 | 国产一区二区三区 | 国产精品一区二区久久久久 | 91在线 | 97国产爽爽爽久久久 | 天天澡天天操 | 亚洲欧美激情国产综合久久久 | 欧美一级电影免费观看 | 99久久国产综合精品麻豆 | 精品自拍视频 | 麻豆a级片 | 亚洲一区二区视频 | 亚洲一区二区三区在线 | 日韩毛片 | 亚洲欧美日韩网站 | 国产日韩亚洲欧美 | av中文字幕网 | 国产99视频精品免费视频7 | 成人免费视频在线观看 | 国产成人精品视频 | 一区二区三区国产 | 少妇性l交大片免费一 | 亚洲国产一区二区三区在线观看 | 欧美日韩视频在线第一区 | 成人精品一区 | 中文字幕一区二区三区在线观看 | 日韩精品一区二区三区视频播放 | 久久精品亚洲精品国产欧美 | 免费一区二区三区在线视频 | 九九热视频这里只有精品 | 欧美不卡在线 | 国产在线二区 | 欧美视频在线播放 | 久国久产久精永久网页 | 久久国产一区 | 国产在线一区二 | 国产精品99久久久久久宅男 |