亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

Arduino Nano LCD 秒表无电位器

组件和用品

面包板(通用)
× 1
Arduino Nano R3
× 1
Adafruit 标准 LCD - 16x2 蓝底白字
× 1
SparkFun 按钮开关 12mm
× 3
电阻 10k ohm
× 5
电阻 221 ohm
× 1
跳线(通用)
× 26

关于这个项目

大家好!

本项目是一个简单的LCD入门学习项目。在这个项目中,我使用 Arduino NANO 和 LCD QUAPASS 1602A 16x2。这款秒表可以计算小时、分钟和秒。您还可以更改 LCD 的亮度。

只需稍微更改代码,您也可以计算百分之一,但我的 LCD 无法正常工作,因为屏幕无法快速刷新。

我为我的秒表设置了几乎完美的计时(我的秒表有大约 15% 的偏差,所以如果你真正运行 10 分钟,我的秒表将是 10 分 2 秒)。因此,如果您要更改启动子程序(在名为秒表的程序子程序中),您还需要更改时间,因为每个代码的 Arduino 执行时间。

第 1 步

像这样将电线连接到 Arduino 和 LCD(看看 SCHEMATIC 显示的是什么)。

第 2 步

将我的代码复制并粘贴到您的 Arduino IDE 下方。现在将您的 Arduino 插入 USB 驱动器。点击上传按钮,你的程序应该可以运行了。

第 3 步

享受我制作简单易行的 LCD 秒表的乐趣。

如果您有任何问题,请在评论中留言。

代码

  • 代码
代码Arduino
这是我的秒表的代码。只需将其复制到 Arduino IDE 并将其上传到您的 Arduino。
/*简单的 LCD 秒表程序,带有停止、开始、重置和圈数按钮。*///包括 LCD#include  的库up LCD INPUT pinsLiquidCrystal lcd(12,11,5,4,3,2);//设置小时、分钟、秒和毫秒为0int h=0;国际米=0;整数 s=0;整数毫秒=0; //定义所有按钮的引脚const int start_pin =8; const int stop1_pin =9; const int reset_pin =10; //定义起点(在我的例子中为0)int start=0; int stop1=0;int reset=0;intbrightness_pin =6; //定义用于设置brightnessint亮度=100的引脚; //你可以改变这个数字来改变亮度 void setup() { analogWrite(brightness_pin ,brightness); //这会设置引脚 6 lcd.begin(16 ,2) 上的亮度; //启动LCD //定义引脚是输入还是输出引脚 pinMode(start_pin, INPUT); pinMode(stop1_pin,输入); pinMode(reset_pin, INPUT); pinMode(brightness_pin, OUTPUT);} void loop() { lcd.setCursor(0,1); lcd.print("秒表"); lcd.setCursor(0,0); lcd.print("时间:");液晶显示(h); lcd.print(":");液晶打印(米); lcd.print(":");液晶印刷品; start =digitalRead(start_pin); //读取按钮状态 if(start ==HIGH) { stopwatch(); //转到子程序秒表 } } //--------------------子程序-- --------void 秒表(){ lcd.setCursor(0,0); //在液晶显示器上设置起点 lcd.print("TIME:"); //写时间lcd.print(h); //写小时lcd.print(":");液晶打印(米); //写分钟lcd.print(":");液晶印刷品; //写秒ms=ms+10;延迟(10); if(ms==590) { lcd.clear(); //清除LCD } if(ms==590) //如果状态为计数秒{ ms=0; s=s+1; } if(s==60) //如果状态用于计算分钟{ s=0; m=m+1; } if(m==60) //如果状态用于计算小时数{ m=00; h=h+01; } lcd.setCursor(0,1); lcd.print("秒表"); stop1 =digitalRead(stop1_pin); //读取按钮状态 if(stop1 ==HIGH) //检查按钮是否被按下 { stopwatch_stop(); //转到子程序 } else { 秒表(); //转到子程序 }}void stopwatch_stop(){ lcd.setCursor(0,0); lcd.print("时间:");液晶显示(h); lcd.print(":");液晶打印(米); lcd.print(":");液晶印刷品; lcd.setCursor(0,1); lcd.print("秒表"); start =digitalRead(start_pin); //读取按钮状态 if(start ==HIGH) { stopwatch(); //转到子程序 } reset =digitalRead(reset_pin); //读取按钮状态 if(reset ==HIGH) { stopwatch_reset(); //转到子程序loop(); } if(reset ==LOW) { stopwatch_stop(); //转到子程序 }}void stopwatch_reset(){ lcd.clear(); lcd.setCursor(0,1); lcd.print("秒表"); h=00; //设置小时为0 m=00; //设置分钟为0 s=00; //设置秒为0返回; //退出程序并返回进入程序的点}
图书馆
这是 LCD 所需的库。 https://github.com/arduino-libraries/LiquidCrystal

示意图

这是我的电路原理图。

制造工艺

  1. 诺基亚 5110 LCD 上的 DIY 简单 20 kHz Arduino 示波器
  2. 智能百叶窗
  3. 钢铁侠
  4. 带有 Arduino 的简单障碍物传感器
  5. 找到我
  6. Arduino 加湿器控制
  7. DIY 10Hz-50kHz 示波器在 128x64 LCD 显示器上
  8. Arduino Joystick
  9. 计步器(Arduino 101)
  10. Arduino 混色器
  11. AI LCD 朋友!
  12. 用 Arduino Nano 制作吃饭机器人 |金螺丝