加载中…
正文 字体大小:

arduino 串口1602LCD显示模块使用及倒计时器程序

(2011-10-12 21:13:43)
标签:

arduino

串口1602

倒计时器

杂谈

分类: arduino
弄到一个串口1602LCD模块,为熟悉一下它的使用,顺便做了一个倒计时程序。

结果如下:
arduino <wbr>串口1602LCD显示模块使用及倒计时器程序


该模块背面接口如下图:

arduino <wbr>串口1602LCD显示模块使用及倒计时器程序
从下到上,分别为 RX,TX,VCC,GND,  rx,tx为 3.3V。


主要说明:

串口波特率9600 kbps。屏幕对比度可通过背面的电位器调整。

1. sc; - 清屏指令
2. sdx,y; - 设置显示位置的坐标,x,y 为行和列坐标,x可是选择0,1;y可以从0-15;
3. ssxxxxxxx; - 在设置的坐标显示字符串,xxxxx为要显示字符串内容;
4. sbx;- 背光设置,sb0;为关额背光,sb1;为开背光;
5. sux;- 光标设置,su1;为显示光标,su1;为显示光标;
6. sfx; - 光标闪设置,sf0;为普通模式,sf1为光标闪烁模式;
7. smx;- 光标移动设置。sm0;光标左移一位;sm1;光标右移一位;

最终程序如下:


unsigned long time;
unsigned long starttime;
int timeHour;  //显示小时数
int timeMinute; //显示分钟数
int timeSecond; //显示秒数
int ledPin=7;
int startHour=1; //初始小时数
int startMinute=58;  //初始分钟数
int startSecond=25;  //初始秒数
void setup()
{
  Serial.begin(9600);
  Serial.print("sc;");
  delay(10);
  pinMode(ledPin,OUTPUT);
  starttime=startHour*60*60+startMinute*60+startSecond;
  Serial.print(String(starttime*1000));
}

void loop()
  if (millis()<=starttime*1000)
  {
    time =starttime-(millis()/1000);
    timeHour=time/(60*60);
    timeMinute=(time-timeHour*60*60)/60;
    timeSecond=time-timeHour*60*60-timeMinute*60;
    Serial.print("sd0,0;");
    delay(10);
    Serial.print("ss Time "+Pressing_string(timeHour)+":"+Pressing_string(timeMinute)+":"+Pressing_string(timeSecond)+";");      
    delay(90);  
   }
   else
   {
     Serial.print("sd0,0;");
     delay(10);
     Serial.print("ss Time 00:00:00;"); 
     delay(10);
     Serial.print("sd1,0;");
     delay(10);
     Serial.print("ssIt's game over.;"); 
     delay(10);
     digitalWrite(ledPin,HIGH);
   }
}

//n->"0n",nn->"nn"
String Pressing_string(int myint){
  String mystring; 
  if (myint<10 )
      {
        mystring="0"+String(myint);
      }
      else
      {
         mystring=String(myint);
      }
  return mystring;
}




0

阅读 评论 收藏 转载 喜欢 打印举报
后一篇:倒计时点火
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

    后一篇 >倒计时点火
      

    新浪BLOG意见反馈留言板 电话:4006900000 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有