找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

如何在單片機程序中看12864串并口連接?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:235703 發(fā)表于 2017-12-27 19:31 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
各位大大,我在網(wǎng)上看到的一個程序下載到單片機中,成功了,但是不知道他是串口還是并口傳輸;測試PSB引腳電壓為3.3V穩(wěn)定;測試D0-D7分別在1.3V-2.5V之間,但是數(shù)值跳動;不明白是串口還是并口,附上程序。
#ifndef __yejing_H__
#define __yejing_H__
#define uchar unsigned char
#define uint unsigned int
uchar CMDAddress;
sbit RS=P2^5;
sbit RW=P2^6;
sbit EN=P2^7;

void delay(uchar t)             //延時函數(shù)
{         
        uint x,y;
        for(x=t;x>0;x--)
        for(y=110;y>0;y--);
}
bit busy()                         //判忙標(biāo)志位
{
        bit flag;
        RS=0;
        RW=1;
        EN=1;
        flag=(bit)(P0&0x80);        
        EN=0;
        return flag;
}                                          
void write_cmd(uchar cmd)                  //寫命令字
{
        while(busy());
        RW=0;
        RS=0;
        delay(5);
        P0=cmd;
        EN=1;
        delay(5);
        EN=0;
        delay(5);                 
}
void write_date(uchar dat)            //寫數(shù)據(jù)
{
        while(busy());
        RW=0;
        RS=1;
        delay(5);
        P0=dat;
        EN=1;
        delay(5);
        EN=0;
        delay(5);               
}
void init()                       //初始化
{
        delay(200);
        write_cmd(0x30);      //Extended Function Set(功能設(shè)定控制字)基本指令集 ,8位
        delay(1);
        write_cmd(0x30);       //Function Set 基本指令集
        delay(1);
        write_cmd(0x0c);       //(顯示開關(guān)控制字),全部顯示ON,游標(biāo)OFF,閃爍OFF
        delay(1);
        write_cmd(0x01);      //清屏控制字
        delay(15);
        write_cmd(0x06);          //Entry Mode (進(jìn)入設(shè)定點控制字)光標(biāo)從左向右加一位移動
        delay(1);      
}
void SetAddress(uchar x,uchar y)             //設(shè)置輸入數(shù)據(jù)位置
{
        switch(y)
        {
                case 0:CMDAddress=0x80+x;break;
                case 1:CMDAddress=0x90+x;break;
                case 2:CMDAddress=0x88+x;break;
                case 3:CMDAddress=0x98+x;break;
        }
        write_cmd(CMDAddress);
}
void putstring(uchar x,uchar y,uchar *pdate)             //該行是否完
{
        SetAddress(x,y);
        while(*pdate!='\0')
        {
                 write_date(*pdate++);
        }
}
void show()                               //顯示"溫度"
{        
        putstring(0,0,"溫度:");              //第一排首位子顯示"溫度"兩字
    putstring(0,3,"液晶溫度顯示");        //第三排首位子顯示"液晶溫度顯示"
}        
void display(uint Temp )                 // 顯示溫度值
{
        uint t1,t2,t3        ;                  //,t0,t1,t2                 
        t1=Temp/100%10;
        t2=Temp/10%10;
        t3=Temp%10;           
        write_cmd(0x93);
        write_date(0x30+t1);
        write_date(0x30+t2);
        write_date('.');
        write_date(0x30+t3);
        write_date(0xA1);
        write_date(0xE6);  
}
#endif

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

使用道具 舉報

沙發(fā)
ID:267959 發(fā)表于 2017-12-27 20:03 | 只看該作者
P0口給8位數(shù)據(jù),是并口的
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表