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

標題: 求助,PCF8591模塊程序那里寫的不對 [打印本頁]

作者: tonysony8    時間: 2017-8-14 20:36
標題: 求助,PCF8591模塊程序那里寫的不對
用PCF8591模塊,連接單片機,1602液晶顯示,大師們幫忙看看那里寫的不對,液晶只顯示0000,初學者,謝謝!
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit scl=P2^6;
sbit sda=P2^7;
sbit rs=P2^0;
sbit rw=P2^1;
sbit lcden=P2^2;
uchar date;
uchar code table[]="0123456789";
void i2cinit();
void i2cstart();
void i2crespons();
void i2cstop();
void i2cwritebyte(uchar date);
uchar i2creadbyte();
void readi2c();
void write_com(uchar com);
void write_date(uchar date);
void lcdinit();
void lcdplay();
void delay(uchar z)
{
        uchar x,y;
        for(x=z;x>0;x--)
        {
                for(y=110;y>0;y--);
        }
}
void i2cinit()
{
        scl=1;
        delay(5);
        sda=1;
        delay(5);
}
void i2cstart()
{
        sda=1;
        delay(5);
        scl=1;
        delay(5);
        sda=0;
        delay(5);
}
void i2crespons()
{
        uchar i=0;
        scl=1;
        delay(5);
        while(sda==1&&i<255)
        {
                i++;
        }
        scl=0;
        delay(5);
}
void i2cstop()
{
        sda=0;
        delay(5);
        scl=1;
        delay(5);
        sda=1;
        delay(5);
}
void i2cwritebyte(uchar date)
{
        uchar i,temp;
        temp=date;
        for(i=0;i<8;i++)
        {
                temp=temp<<1;
                scl=0;
                delay(5);
                sda=CY;
                delay(5);
                scl=1;
                delay(5);
        }
        scl=0;
        delay(5);
        sda=1;
        delay(5);
}
uchar i2creadbyte()
{
        uchar i,k;
        scl=0;
        delay(5);
        sda=1;
        for(i=0;i<8;i++)
        {
                scl=1;
                delay(5);
                k=(k<<1|sda);
                scl=0;
                delay(5);
        }
        return k;
}
void readi2c()
{
        uchar date;
        i2cinit();
        i2cstart();
        i2cwritebyte(0x90);
        i2crespons();
        i2cwritebyte(0x01);
        i2crespons();
        i2cwritebyte(0x91);
        i2crespons();
        date=i2creadbyte();
        i2cstop();
       
       
}
void write_com(uchar com)
{
        rs=0;       
        P0=com;
        delay(5);
        lcden=1;
        delay(5);
        lcden=0;
       
}
void write_date(uchar date)
{
        rs=1;       
        P0=date;
        delay(5);
        lcden=1;
        delay(5);
        lcden=0;
}
void lcdinit()
{
        rw=0;
        write_com(0x38);
        write_com(0x0c);
               
}
void lcdplay()
{
        uchar qian,bai,shi,ge;
        lcdinit();
        qian=date/1000;
        bai=date%1000/100;
        shi=date%100/10;
        ge=date%10;
        write_com(0x80+0x00);
        write_date(table[qian]);
        write_com(0x80+0x01);
        write_date(table[bai]);
        write_com(0x80+0x02);
        write_date(table[shi]);
        write_com(0x80+0x03);
        write_date(table[ge]);

}
void main()
{
        readi2c();
        while(1)
        {
               
                lcdplay();       
        }       
}
作者: xu0801hua    時間: 2017-8-14 21:30
你參考這個例程

PCF8563芯片時序程序.doc

227.5 KB, 下載次數: 10


作者: zl2168    時間: 2017-8-25 17:17
本帖最后由 zl2168 于 2017-8-25 17:18 編輯

實例85  PCF8591 I2C串行A-D(1602顯示)
實例85 PCF8591 I2C串行A-D.rar (57.96 KB, 下載次數: 10)

Proteus仿真一下,確認有效。
以上摘自張志良編著《80C51單片機仿真設計實例教程——基于Keil CProteus》清華大學出版社ISBN 978-7-302-41682-1書中電路和程序設計有詳細說明,程序語句條條有注解。仿真電路和Hex文件能在清華出版社網站免費下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網上書店打折購買。







歡迎光臨 (http://m.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 黄色一级大片在线免费看国产一 | 日韩一区二区免费视频 | 欧美精品二区 | 日韩av在线一区 | 一区二区精品 | 一级黄色录相 | 日韩在线小视频 | 特一级黄色片 | 成人免费黄色大片 | 亚洲天堂一区 | 色婷婷导航| av在线免费观看网址 | 亚洲精品xxx| av高清在线 | 五月天激情综合网 | 欧美做受| 91在线看片| 久久久免费看 | 天海翼一区二区 | 久久精品视频一区 | 久久久久久毛片 | 日韩精品三级 | 九九在线精品 | 亚洲天码中字 | 免费看黄色av | 97国产在线视频 | 亚洲精品在线观看视频 | 少妇一级淫片免费放 | 亚洲综合激情网 | 国产精品网站在线观看 | 久久黄色大片 | 婷婷久久综合 | 欧美成人一区二区三区 | 国产精品一区二区av | 视频在线一区二区 | 亚洲视频一区在线观看 | 国产精品国产成人国产三级 | 国产激情网 | 国产在线a | 一级特黄毛片 | 一级黄色免费 |