论坛风格切换切换到宽版
  • 5482阅读
  • 8回复

关于STC驱动LCD1602的问题 [复制链接]

上一主题 下一主题
离线BG4ABH
 
发帖
489
只看楼主 倒序阅读 0楼 发表于: 2014-04-26
早就知道STC速度快,驱动LCD1602程序中要加NOP。现在是加了也没用。
哪位能提供这方面的成功经验?
bg4abh
李华夫 上海 浦东 博兴路465弄28号602室
邮编:200129
离线BG6JJI
发帖
4939
只看该作者 1楼 发表于: 2014-04-26
加nop不是关键,是时隙

内容来自Android手机客户端

离线bg3nde
发帖
1100
只看该作者 2楼 发表于: 2014-04-26
看时序图,还要根据晶振算

内容来自Android手机客户端

离线okstar
发帖
4734
只看该作者 3楼 发表于: 2014-04-26
看1602的厂家手册,我用过好几种,时序都不同,很坑爹

内容来自Android手机客户端

离线BD8BT
发帖
276
只看该作者 4楼 发表于: 2014-04-28
LCD1602也好,12864也巴,要让它正常显示有两个问题要注意,一是有一段初始化的程序不能少,二是一个所谓的读忙信号程序不能少, 否则可能不显示或显示不正常。
离线BG4ABH
发帖
489
只看该作者 5楼 发表于: 2014-04-30
回 BD8BT 的帖子
BD8BT:LCD1602也好,12864也巴,要让它正常显示有两个问题要注意,一是有一段初始化的程序不能少,二是一个所谓的读忙信号程序不能少, 否则可能不显示或显示不正常。  (2014-04-28 20:43) 

其实,LCD1602不是第一次使用。初始化按照标准做了,当然判忙程序也有,把执行程序的速度大幅度降低(新款的STC是可以对振荡频率进行最多128次分频),驱动液晶的口子采用推挽模式,既满足时隙,又满足脉宽,该做的全做了,还是不行。唉!
bg4abh
李华夫 上海 浦东 博兴路465弄28号602室
邮编:200129
离线BD8BT
发帖
276
只看该作者 6楼 发表于: 2014-05-01
回 BG4ABH 的帖子
BG4ABH:其实,LCD1602不是第一次使用。初始化按照标准做了,当然判忙程序也有,把执行程序的速度大幅度降低(新款的STC是可以对振荡频率进行最多128次分频),驱动液晶的口子采用推挽模式,既满足 .. (2014-04-30 16:02) 

不知你用的是哪款STC单片机,我用的是STC89C52,驱动LCD1602正常,和AT89C52一样。其它型号的STC单片机我还没用过。
离线BG4ABH
发帖
489
只看该作者 7楼 发表于: 2014-05-05
回 BD8BT 的帖子
BD8BT:不知你用的是哪款STC单片机,我用的是STC89C52,驱动LCD1602正常,和AT89C52一样。其它型号的STC单片机我还没用过。 (2014-05-01 20:39) 

使用STC15F。
程序在仿真器上能驱动LCD1602正常显示,说明程序本身无逻辑问题。

bg4abh
李华夫 上海 浦东 博兴路465弄28号602室
邮编:200129
离线BG4ABH
发帖
489
只看该作者 8楼 发表于: 2014-05-06
谢谢帮助过我的各位。
问题已解决。
不是单片机与LCD的速度匹配问题,也不是单片机驱动能力的问题(走了弯路啊)。
问题出在目标系统和仿真器的环境不太一样。
bg4abh
李华夫 上海 浦东 博兴路465弄28号602室
邮编:200129