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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1676|回復: 0
打印 上一主題 下一主題
收起左側

基于C52關于AD代碼

[復制鏈接]
跳轉到指定樓層
樓主
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空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 九九亚洲| 日本特黄a级高清免费大片 成年人黄色小视频 | 亚洲精品高清视频在线观看 | av中文在线播放 | 欧美国产一区二区 | 天堂一区二区三区四区 | 亚洲精品欧美 | 亚洲九色| 中文字幕亚洲一区 | av手机在线| 国产精品自拍av | 中文字幕视频在线观看 | 视频在线一区二区 | 国产成人网 | 欧美日韩亚洲二区 | 成人羞羞国产免费视频 | 亚洲视频一区 | 丁香综合 | 91观看 | 国产一区久久精品 | www操操| 羞羞色在线观看 | 日日干干夜夜 | 欧美激情国产精品 | 国产农村一级国产农村 | 久久久国产一区二区三区 | 精品自拍视频 | 欧美日韩成人 | www.788.com色淫免费 | 亚洲日日操 | 国产精品久久久爽爽爽麻豆色哟哟 | 一级毛片在线视频 | 国产乱码精品一区二区三区忘忧草 | 日韩精品一区二区三区在线观看 | 中文字幕亚洲区 | 2021狠狠天天天 | 日韩视频在线一区 | 国产乱码久久久久久 | 九九久久久 | 久久精品国产一区老色匹 | 亚洲一二三区不卡 |