求血求败求侮辱!1602!我要疯了!

[复制链接]
4407|22
 楼主| meng219902 发表于 2012-9-11 22:17 | 显示全部楼层 |阅读模式
哎。。。一言难尽啊!
我前面发了一个帖子是关于1602的(用单片机的程序移植到DSP上),有的前辈说由于我的时间没有控制好导致的,用Delay不够准确,这段时间我正好用到“液显”(我不是做项目嘛),我为了尽快完成项目的内容特有挑了1602,根据上个帖子的指示我用的全是定时器0,严格按照1602时序来编写的,但是。。。如果你全速运行的话就什么都显示不出来,如果有断点在传数据的时候,那么他会把第一数字显示出来(我就让他显示78345)第二个数字出现的时候(还没出现呢)屏幕就全黑了,一格一格的黑,1602不是有两行吗?第二行是半行黑,

1、我现在写的程序是用IO口直接与1602D0-D7相连的,我这个有两种表达的形式(就是IO口一位一位的传数据,还有一种就是GpioCtrlRegs.GPCDIR.all|Data一下子全传)

2.对于LCD液晶我还看到另一种编法,就是通过XINTF中的总线连接来让LCD显示。但是,XINTF程序需要LCD的地址(“这个怎么找到请指点”);还有XINTF的时序与LCD的时序问题,LCD能与XINTF连吗?怎么做?希望前辈们指点。

3.还有一种LCD显示的,就是串行传输的编法,但是对于1602来说,这是不可能的(我说的是他单独没有这个功能,我在淘宝上看到一个小东西,他的一端有8个IO那是连1602D0-D7的,另一端就可以跟12864那样做串行传输了)

以上是我最LCD的认识,但是认识不够啊,我需要的是解决1602的办法,不知道哪位前辈有这方面的程序和IO口连接的图片,能不能发给我,帮我度过去一关,谢谢了
elec921 发表于 2012-9-12 08:25 | 显示全部楼层
一下为个人意见 供参考,希望没有误导你:
1、不要一位一位传,要8位一起
2、XINTF的某根地址线和WR线经过“与”的运算后接1602的WR线,这个地址线所在的地址就是1602的地址
3、串行传输只是把并行口转为了串行口,你的问题解决不了

估计你的硬件设计错误,或者软件的操作时序错误。
先检查硬件。
时序错误的意思是,看看1602的时序图,搞清楚先送数 还是先选通?还是先WR? 各个之间有没有对延时的要求?有没有对上升下降沿的要求?
我不直接告诉你,你自己去解决这个问题才能长本事。对吧?
 楼主| meng219902 发表于 2012-9-12 08:50 | 显示全部楼层
xiexie  我先看看
gaochy1126 发表于 2012-9-12 09:44 | 显示全部楼层
用的什么处理器?你供电应该使用5v,再检查接口是否正确,rs和wr是否连接正确,数据口是否正确
gygp 发表于 2012-9-12 15:18 | 显示全部楼层
延时加长一点 试一试
 楼主| meng219902 发表于 2012-9-12 17:35 | 显示全部楼层
5# gygp

我用的是1us的定时器,延时都有改变 但是还是有时候黑屏  有时候乱码 就是数字不安我之前要求的排列顺序出现 还是黑屏占多数
谢谢您的意见
hawksabre 发表于 2012-9-12 18:20 | 显示全部楼层
延时时间加长   传输数据时尽量多位一起传   如果还不行   降低波特率试试  希望能帮到你
 楼主| meng219902 发表于 2012-9-16 09:15 | 显示全部楼层
通过io口传输数据的 我这个1602C第一行能显示数据(只能显示,如果想显示英文,只能是第一个字能显示,其余的不管第一行后面有什么都不会显示,即“meng219902”他只能显示‘m’),而第二行只能显示最后一个字。
对了如果想改变第一行的某一位上的字(像单片机做的时钟,秒所在的位置不都是变化的吗?而在这里,如果想变化,那只能是乱码,就是不显示数字那种根本不能用乱码形容出现的“现象”,前后的字也被殃及了,也不会显示了)
wjzx111056 发表于 2012-9-16 20:44 | 显示全部楼层
LZ,1602液晶控制起来还是很简单的!我以前的毕业设计也用的是1602.如果出问题的话可能是:1.你程序中对延时处理的不好。2.硬件电路上的问题,比如虚焊而引起的问题。
wjzx111056 发表于 2012-9-16 20:48 | 显示全部楼层
给你传点有价值的资料吧!看完之后应该没有什么大问题了。

本帖子中包含更多资源

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

×
 楼主| meng219902 发表于 2012-9-17 10:29 | 显示全部楼层
10# wjzx111056


非常感谢你,我再试试,
shenmulzb1985 发表于 2012-9-17 13:47 | 显示全部楼层
楼主,我就不来凑热闹了,只需要你给些分的就OK啦,1602的液晶也没那么难的,网上可以搜一堆资料的出来的
 楼主| meng219902 发表于 2012-9-17 18:31 | 显示全部楼层
12# shenmulzb1985

呵呵。。。 我都三周了,什么资料都查尽了,我正在查找是不是硬件问题,
 楼主| meng219902 发表于 2012-9-17 18:33 | 显示全部楼层
十楼给的东西还是比较经典的,如果需要的可以看看,我在那里也有所提高对1602,但是 对解决我这个问题 还是有点。。。只能说看看吧
 楼主| meng219902 发表于 2012-10-22 17:15 | 显示全部楼层
2# elec921

前辈 这个“与”得用芯片才能实现 不能用简单的线连接就完事了对吗?
还有如果我想使用zone0 那么我得把“片选信号”怎么样拉低?是把片选信号的引脚连到一个IO口上,通过控制这个IO口来实现“片选”的吗?不是自动拉低的吧?

还有xintf的读写(XRD\XWE0),书上说选通信号被拉低,那是都是dsp自动拉低的,还是需要我自己像配置gpio的时候给他(对应的引脚)0、1;还是我的通过导线连接?
益友电子 发表于 2012-10-22 23:42 | 显示全部楼层
就是看接口是否连接正确 ,是否有断路的地方
 楼主| meng219902 发表于 2012-10-23 08:30 | 显示全部楼层
16# 益友电子

???什么意思?我就想说的是 怎么就选中zone0 是那个BANK控制的吗?如果是 那zone0的片选一脚就是低电平对吧?  同理只要给xintf的数据(地址)总线发 或者是读
那么xintf中的XRD、XWE0也会分别输出低电平对吗?
sqcumt123 发表于 2012-10-23 16:07 | 显示全部楼层
10楼提议非常到位,很好!
vivilzb1985 发表于 2012-10-25 12:04 | 显示全部楼层
楼主,1602液晶也不是很复杂的,其控制时序也很重要的,硬件上看下是不是有啥虚焊之类的啊,耐心点的就OK啦,越是感觉到困难的时候,里成功就不远了啊
 楼主| meng219902 发表于 2012-10-25 21:44 | 显示全部楼层
19# vivilzb1985

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

本版积分规则

38

主题

908

帖子

14

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