极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 29350|回复: 9

关于如何用arduino采用4位总线控制1602的问题(接线方式)

[复制链接]
发表于 2012-11-3 10:36:41 | 显示全部楼层 |阅读模式
哪位大侠能够帮忙指点一下我下面这个程序的线路连接问题:
  1. #include <LiquidCrystal.h>
  2. LiquidCrystal lcd(18,16,2,3,4,5);
  3. void setup()
  4. {
  5.   lcd.begin(16,2);
  6.   pinMode(6,OUTPUT);
  7. }
  8. void loop()
  9. {
  10.   int i;
  11.   for(i=0;i<10;i++)
  12.   {
  13.     if(i&2==0)
  14.     digitalWrite(6,HIGH);
  15.     else
  16.     digitalWrite(6,LOW);                                                                                                                          
  17.    
  18.     lcd.setCursor(0,0);
  19.     lcd.print(i);
  20.     delay(5000);
  21.   }
  22. }
复制代码

刚开始我是直接把1602的7个引脚直接接到arduino板子上的,结果是错误的,1602没有任何反应,找了一下其它的教程,收获不大(好像要在面包板上接一个电阻),为什么这么大的论坛里没有这种问题呢?arduino菜鸟求帮助?
回复

使用道具 举报

 楼主| 发表于 2012-11-3 10:39:17 | 显示全部楼层
求帮忙!
回复 支持 反对

使用道具 举报

发表于 2012-11-3 10:51:35 | 显示全部楼层
可以看看官网给的例程!http://arduino.cc/en/Tutorial/LiquidCrystal
回复 支持 反对

使用道具 举报

发表于 2012-11-3 10:57:49 | 显示全部楼层
不知道
回复 支持 反对

使用道具 举报

发表于 2012-11-3 19:07:10 | 显示全部楼层
我肯能帮得上你,加QQ:463574832   记得注明:arduino
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-3 23:13:12 | 显示全部楼层
txmg 发表于 2012-11-3 10:51
可以看看官网给的例程!http://arduino.cc/en/Tutorial/LiquidCrystal

亲,能给我弄个中文版的教程么,英语不咋地啊!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-4 00:31:22 | 显示全部楼层
改程序功能如下:在1602显示屏的左上角每隔5秒显示一个数字,从0到9,单数背光灯亮,双数背光灯灭!用了7个管脚,其中18,,16,2,3,4,5分别于1602的RS端,E端,D4,D5,D6,D7端相连,6号引脚与背光灯正极管脚相连!求大侠告诉我只用7个引脚接线的方法解决接线问题,不是将所有1602管脚接线与arduino相连!
  1. //包含头文件
  2. #include <LiquidCrystal.h>
  3. //定义使用的I/O口
  4. LiquidCrystal lcd(18,16,2,3,4,5);
  5. void setup()
  6. {
  7. //设置lcd显示的行数与列数
  8.   lcd.begin(16,2);
  9. //定义6号管脚为数据输出管脚
  10.   pinMode(6,OUTPUT);
  11. }
  12. void loop()
  13. {
  14.   int i;
  15.   for(i=0;i<10;i++)
  16.   {
  17.     if(i&2==0)
  18. //背光灯正极置高,输出+5V电压,开启背光
  19.     digitalWrite(6,HIGH);
  20.     else
  21. //关闭背光
  22.     digitalWrite(6,LOW);                                                                                                                          
  23.    
  24. //使得lcd左上角显示数据
  25.     lcd.setCursor(0,0);
  26. //显示数据
  27.     lcd.print(i);
  28.     delay(5000);
  29.   }
  30. }
复制代码

arduino教材是这么说的,线的接法应该只与这7个引脚有关吧!
回复 支持 反对

使用道具 举报

发表于 2012-11-4 12:31:21 | 显示全部楼层
7引脚是包含VCC和GND吗?如果包含,那你只能用IIC接口的1602,如果不包含,你这种接法貌似就没啥问题吧~~
http://wiki.geek-workshop.com/do ... dcrystalconstructor
这个是语法手册中的介绍。
或者。。是不是你的1602屏幕,不是市场最通用的Hitachi HD44780或与之相兼容芯片,如果不是这种兼容新片,官方库就不可以用。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-4 23:26:00 | 显示全部楼层
弘毅 发表于 2012-11-4 12:31
7引脚是包含VCC和GND吗?如果包含,那你只能用IIC接口的1602,如果不包含,你这种接法貌似就没啥问题吧~~
...

行,我在试一下吧!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-11-17 12:30:21 | 显示全部楼层
这个问题终于于上个星期解决了,连线是这样的,液晶上的VSS,V0,RW,K全部接到0V电压上,其中V0要接一个1至5千欧的电阻用于调节对比度,还有那个VDD和A要接到+5V电压上,其他的顺次连接到arduino板接口上就行。占用的接口有点多,还是IIC接线的好!

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-2 13:59 , Processed in 0.041584 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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