[技术问答] 3个通用IO控制12864显示

[复制链接]
3602|19
 楼主| jmworkspace 发表于 2014-7-16 10:34 | 显示全部楼层 |阅读模式
我想问下就用3个通用IO口设定为输出模式控制12864串口模式下输出显示可行吗?

我是在M051上。我通过3个通用IO口设定为输出模式,然后参照以下网站的例子:
http://wenku.baidu.com/link?url= ... p;qq-pf-to=pcqq.c2c


按照这个网站的例子,我只需要将3个通用输出IO口对应12864LCD显示屏的CS、SCLK、SID3个信号,因为是串口模式 ,D0-D7就不需要接了。后来得到的时序图是跟12864的时序图基本是一样。显示屏的电路是接好的,也是按照范例的方法去接 然后通过电位器是能调整背光度的。但是3个信号给到12864是没有显示的 一直是蓝屏。请问是哪里出问题吗? 代码基本上是跟以上网站代码一样。就是3个引脚CS、SCLK 、SID改成了M051其中我设定的3个通用IO。

求大神帮忙看下究竟是什么问题没有显示?

wangch_sh 发表于 2014-7-16 10:54 | 显示全部楼层
液晶支持不支持串口操作,好像有的支持有的不支持。
 楼主| jmworkspace 发表于 2014-7-16 10:58 | 显示全部楼层
本帖最后由 jmworkspace 于 2014-7-16 10:59 编辑
wangch_sh 发表于 2014-7-16 10:54
液晶支持不支持串口操作,好像有的支持有的不支持。


12864B V2.0支持的吧
haolaishi 发表于 2014-7-16 11:05 | 显示全部楼层
你上你的电路图,15脚拉低了没有,是不是驱动能力不够,加上拉了没
qq4988 发表于 2014-7-16 11:10 | 显示全部楼层
第一就是,你的屏是否支持串口操作,第二,PSB是否拉低,第三你的初始化程序,你的IO模拟串口是否正确,检查一下吧
 楼主| jmworkspace 发表于 2014-7-16 11:17 | 显示全部楼层
haolaishi 发表于 2014-7-16 11:05
你上你的电路图,15脚拉低了没有,是不是驱动能力不够,加上拉了没

我拉低了
 楼主| jmworkspace 发表于 2014-7-16 11:20 | 显示全部楼层
qq4988 发表于 2014-7-16 11:10
第一就是,你的屏是否支持串口操作,第二,PSB是否拉低,第三你的初始化程序,你的IO模拟串口是否正确,检 ...

屏幕12864B V2.0 应该是支持串口的  第二PSB是拉低了 15直接接GND的 第三,我的IO是初始化为输出模式的 用示波器可检测 3个IO是能通过代码拉高拉低IO口的
 楼主| jmworkspace 发表于 2014-7-16 11:20 | 显示全部楼层
haolaishi 发表于 2014-7-16 11:05
你上你的电路图,15脚拉低了没有,是不是驱动能力不够,加上拉了没

貌似上不了图
 楼主| jmworkspace 发表于 2014-7-16 11:26 | 显示全部楼层
以下是代码还有图片,部分代码是没用到的。直接用demo改的。
引脚方面是已经接好的 按照以上所提网址的图所接法。背光可调 。

lcd12864.rar

447.67 KB, 下载次数: 45

代码、图片

 楼主| jmworkspace 发表于 2014-7-16 11:31 | 显示全部楼层
时序有没关系的?SCLK的时钟频率应该是多少,这跟LCD显示屏的显示有关联吗?
qq4988 发表于 2014-7-16 11:48 | 显示全部楼层
/********************************************************************
* 名称 : lcdinit(void)
* 功能 : 初始化函数
* 输入 : 无
* 输出 : 无
***********************************************************************/
void LCD_Inition(void)
{
        _delay_ms(500);
        write_com(0x30);
        _delay_ms(5);       
        write_com(0x30);
        _delay_ms(5);       
        write_com(0x01);
        _delay_ms(12);
        write_com(0x0C);
        _delay_ms(5);               
        write_com(0x06);
        _delay_ms(5);                       
}

送你一个初始化程序
 楼主| jmworkspace 发表于 2014-7-16 11:56 | 显示全部楼层
qq4988 发表于 2014-7-16 11:48
/********************************************************************
* 名称 : lcdinit(void)
* 功能  ...

好,我试下
 楼主| jmworkspace 发表于 2014-7-16 11:59 | 显示全部楼层
jmworkspace 发表于 2014-7-16 11:56
好,我试下

跟我那个差不多,没什么变化
qq4988 发表于 2014-7-16 12:12 | 显示全部楼层
jmworkspace 发表于 2014-7-16 11:59
跟我那个差不多,没什么变化

我这个程序是我调好的,在用的,你最好再仔细看一下你的程序,写命令与写数据的子程序,IO模拟程序,读状态程序,检查一下吧
 楼主| jmworkspace 发表于 2014-7-16 13:38 | 显示全部楼层
qq4988 发表于 2014-7-16 12:12
我这个程序是我调好的,在用的,你最好再仔细看一下你的程序,写命令与写数据的子程序,IO模拟程序,读状 ...

你也是串口吗?把整个代码发我看下吗
Imakey 发表于 2014-7-16 19:08 来自手机 | 显示全部楼层
串口?串行吧……
bobde163 发表于 2014-7-16 20:50 | 显示全部楼层
一般显示的话,使用串行接口都能实现了,祝楼主早日解决
ETjason 发表于 2014-7-17 10:38 来自手机 | 显示全部楼层
本帖最后由 ETjason 于 2014-7-17 10:40 编辑
qq4988 发表于 2014-7-16 11:10
第一就是,你的屏是否支持串口操作,第二,PSB是否拉低,第三你的初始化程序,你的IO模拟串口是否正确,检 ...


说的对,有的液晶控制器不支持串行
qq4988 发表于 2014-7-17 10:56 | 显示全部楼层
ETjason 发表于 2014-7-17 10:38
说的对,有的液晶控制器不支持串行

????你的屏不支持串口????
张文祥 发表于 2014-8-5 17:25 | 显示全部楼层
有字库吗?液晶板上带字库吗?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

12

主题

45

帖子

0

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