找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 3551|回复: 0
打印 上一主题 下一主题
收起左侧

sed1335_lcd普通IO驱动

[复制链接]
跳转到指定楼层
楼主
ID:51090 发表于 2014-9-17 22:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
老早的东西了,已经淘汰了,网上只搜到汇编的了,好不容易把屏搞亮,却发现跟金鹏ocm240320的驱动一模一样,那个不爽啊
//uchar code sys_tab[8]={0x30,0x87,0x07,0x27,0x32,0xef,0x28,0x00};
//uchar code scr_tab[10]={0x00,0x00,0xf0,0xb0,0x04,0xf0,0x80,0x50,0x00,0x60};
uchar code sys_tab[8]={0x30,0x87,0x0f,0x27,0x3a,0xef,0x28,0x00}; //king
uchar code scr_tab[10]={0x00,0x00,0xf0,0x80,0x25,0xf0,0x00,0x4b,0xb0,0x4f};
#define addr_o     0x0000   //文本显示区首地址
#define addr_t     0x2580   //图形显示区首地址
#define addr_s     0x4b00   //第三区显示首地址
void write_com(uchar com)
{
    LCD_RS=1;
    LCD_WR=0;
LCD_RD=1;
    LCD_DAT=com;
LCD_CS=0;
    LCD_CS=1;
}
void write_dat(uchar dat)
{
    LCD_RS=0;
    LCD_WR=0;
LCD_RD=1;
    LCD_DAT=dat;
LCD_CS=0;
    LCD_CS=1;
}
uchar read_dat()        //读数据
{
    uchar dat;
   LCD_CS=0;
     LCD_RS=1;
     LCD_WR=1;
     LCD_RD=0;
   DBUS=0xff;
     dat=DBUS;
     LCD_RD=1;
   LCD_CS=1;
     return dat;
}
void lcd_init()
{
uchar i;
write_com(0x58);//关显示
write_com(0x40);//系统设置参数8个
for(i=0;i<8;i++)
{
write_dat(sys_tab[ i]);
}
write_com(0x44);//设置显示区域参数10个
for(i=0;i<10;i++)
{
write_dat(scr_tab[ i]);
}
write_com(0x5d);//设置光标形状参数2个
write_dat(0x00);
write_dat(0x00);
write_com(0x5b);//设置显示方式参数1个
write_dat(0x0f);
write_com(0x59);//开显示
}
void write_uint(uint dat)
{
  uchar datl,dath;
    datl=dat;
    dath=dat>>8;
    write_dat(datl);        //送低八位
    write_dat(dath);        //送高八位
}
void set_addr(uint add)
{
  write_com(0x46);//设置光标地址
  write_uint(add);
}
void show(uchar qu)
{
write_com(0x59);    //DISP ON
if(qu==0)write_dat(0x00);//神马都不显示
    if(qu==1)write_dat(0x04);//仅显示一区
if(qu==2)write_dat(0x10);//仅显示二区
if(qu==3)write_dat(0x14);//一二区同时显示
if(qu==4)write_dat(0x40);
if(qu==5)write_dat(0xff);
}
void lcd_clear(uint addr)
{
    uint i;
    write_com(0x4c);//向下移动
    set_addr(addr);
    write_com(0x42);//连续输入
    for(i=0;i<9600;i++)
    {
    write_dat(0x00);
    }
}
void write_init(uint addr)
{
  write_com(0x4f);
  write_com(0x46);
write_uint(addr);
write_com(0x42);
}
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表