Arduino Nano LCD 秒表无电位器
组件和用品
| × | 1 | ||||
| × | 1 | ||||
| × | 1 | ||||
| × | 3 | ||||
| × | 5 | ||||
| × | 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示意图
这是我的电路原理图。制造工艺