求at89s52的lcd12864的串口程序,如图

[复制链接]
1857|5
 楼主| 韩利刚815 发表于 2013-6-20 20:52 | 显示全部楼层 |阅读模式

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
dirtwillfly 发表于 2013-6-20 21:49 | 显示全部楼层
网上好多的,搜索一下吧
 楼主| 韩利刚815 发表于 2013-6-21 09:08 | 显示全部楼层
找了好多的  都不符合  lcd12864都不显示
coody 发表于 2013-6-21 13:20 | 显示全部楼层
先确定控制器是什么型号的
又见叉烧包 发表于 2013-6-21 14:19 | 显示全部楼层
#include "12864lcd.h"
#include "delay.h"
uchar code string_1[12]={"呼呼呼呼呼呼"};
uchar code a[12]={"电压=      V"};

void wr_cmd(uchar cmd)
{
        RS=0;
        RW=0;
    delay_50us(1);
        lcd_data=cmd;
        E=1;
        delay_50us(10);
        E=0;
        delay_50us(2);
}

void wr_data(uchar wdata)
{
        RS=1;
        RW=0;
        delay_50us(1);
        lcd_data=wdata;
        E=1;
        delay_50us(10);
        E=0;
        delay_50us(2);
}

void init(void)
{
        delay_50us(2000);
        RST=1;
        PSB=1;
        wr_cmd(0x30);               //基本指令操作
        delay_50us(4);
        wr_cmd(0x30);
        delay_50us(4);
        wr_cmd(0x0f);
        delay_50us(4);
        wr_cmd(0x01);          // 清屏
        delay_50us(240);
        wr_cmd(0x06);                   //进入点设定        ,游标右移
        delay_50us(4);
}

void display1(void)
{
        uchar i;
        wr_cmd(0x98);
        delay_50us(1);
        for(i=0;i<12;i++)
        {
                wr_data(a[i]);
                delay_50us(1);                       
        }
        delay_50ms(4);                }
流水随春去远 发表于 2013-6-21 23:48 | 显示全部楼层
lcd_data=cmd;这句话是什么东西?把8位二进制数赋给IO口可能行吗?既然是串口就必须用for循环一位位发完,后面还有好多错,我觉得楼主还是找个现成的程序一句句研究而不是这样乱写一气
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

2

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部