• 大小: 24KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-09
  • 语言: 其他
  • 标签: a2  

资源简介

GM65之51单片机(串口+显示屏),其中用到51单片机的串口和显示器资源,这个代码是在慧净电子的51单片机上弄的,可能LCD与其他公司的不同,到时候你们查资料,但是串口一定要看!

资源截图

代码片段和文件信息

#include
typedef unsigned char uint8;//数据类型宏定义
sbit beep = P2^3;
sbit BF = P0^7;
sbit EN = P2^5;
sbit RS = P1^0;
sbit RW = P1^1;
uint8 numa[4];
short int n = 0;
void wait(void)
{
 P0=0xFF;

 do
 {
 RS=0;
 RW=1;
 EN=0;
 EN=1;
 }
 while (BF==1);
 EN=0;
}

//写数据函数
void w_dat(uint8 dat)
{
wait();
EN=0;
P0=dat;
RS=1;
RW=0;
EN=1;
EN=0;
}

void w_cmd(uint8 cmd)
{
wait();
EN=0;
P0=cmd;
RS=0;
RW=0;
EN=1;
EN=0;
}

void Init_LCD1602(void)
{
w_cmd(0x38);
w_cmd(0x0c);
w_cmd(0x06);
w_cmd(0x01);
}
void delay(uint8 z)
{
uint8 xy;
for(x = z; x > 0; x--)
for(y = 114; y > 0 ; y--);
}
void UART_init()
{
TMOD = 0x20;   //T1工作模式2  8位自动重装
TH1 = 0xfd;
TL1 = 0xfd;  //比特率9600
TR1 = 1; //启动T1定时器
SM0 = 0;
SM1 = 1;  //串口工作方式1 10位异步
REN = 1; //串口允许接收
EA  = 1; //开总中断
ES  = 1; //串口中断打开
}
main()
{
Init_LCD1602();//调用LCD函数
w_cmd(0x80);
//w_dat(‘A‘); //显示一个字符 A   ‘A‘
UART_init();
    while(1)
    {   
        w_cmd(0x80+0x00);
        w_dat(a[0]);
        w_cmd(0x80+0x01);
        w_dat(a[1]);
        w_cmd(0x80+0x02);
        w_dat(a[2]);
    }
}
void UART() interrupt 4
{
if(RI) //检测是否接收完成
{
num = SBUF;   //num 取出接收缓存器的值
        if((a[1] == ‘1‘) && (a[2] == ‘2‘) && (a[3] == ‘3‘))
        {
            beep = 0;
            delay(100);
            beep = 1;//蜂鸣器发出滴提示音
        }
        a[n++] = num;
        if(n == 4)
            n=0;
RI = 0;
//SBUF = num;
//while(!TI);
//TI = 0;
}
}

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

     文件       5556  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\LCD1602

     文件        994  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\LCD1602.build_log.htm

     文件       1191  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\LCD1602.hex

     文件         43  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\LCD1602.lnp

     文件       8825  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\LCD1602.M51

     文件        234  2017-07-15 08:19  GM65之51单片机(串口+显示屏)程序\LCD1602.plg

    .......     70712  2019-04-19 14:46  GM65之51单片机(串口+显示屏)程序\LCD1602.uvgui.94489

     文件       4978  2019-03-29 10:43  GM65之51单片机(串口+显示屏)程序\LCD1602.uvopt

     文件      13849  2019-03-29 10:43  GM65之51单片机(串口+显示屏)程序\LCD1602.uvproj

     文件      55208  2017-07-15 08:18  GM65之51单片机(串口+显示屏)程序\LCD1602_uvopt.bak

     文件          0  2014-12-27 12:23  GM65之51单片机(串口+显示屏)程序\LCD1602_uvproj.bak

     文件       1653  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\main.c

     文件       4704  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\main.LST

     文件       6214  2019-04-19 14:07  GM65之51单片机(串口+显示屏)程序\main.OBJ

     目录          0  2019-04-19 14:46  GM65之51单片机(串口+显示屏)程序

----------- ---------  ---------- -----  ----

               174161                    15


评论

共有 条评论