制作一个由arduino控制的定时器,并学习arduino和lcd1602液晶显示器以及键盘模块的连接。
在这篇文章中,我们将学习如何创建一个由用户控制的定时器。这个项目将帮助你管理时间,实现及时提醒。你可以方便地设定一个时间限制,然后离开,直到你听到定时器发出“哔哔”声后及时安排下一项工作。在这个项目中我们将使用一个arduino液晶键盘模块,你将从连接小蜂鸣器开始,直到让设备启动起来,并通过按钮接口和lcd接口实现输入和输出功能。
定时器主要功能概述
在启动电源之后,定时器将显示一个“arduino-timer”的信息,并持续3秒。
计时器将提示设置时间。你可以通过按下左右键来将光标移动到要修改的位置,如分钟和小时。
通过上下箭头键调整分钟和小时的设置。
一旦设置了所需的时间,按下“select”按钮,计时器就会启动。
如果想重新设置时间,请再次按下“select”按钮。
到达设定的时间后,蜂鸣器就会发出哔哔声。
需要关闭蜂鸣器声音,在听到哔哔声后按下键盘上的“rst”键。
定时器所需的组件
arduino
lcd1602键盘模块
蜂鸣器
定时器的线路图
首先,将液晶键盘模块直接插到在arduino上。然后将蜂鸣器的正极连接到arduino上的12号引脚上,并将蜂鸣的负极连接到gnd上。
制作arduino定时器的代码
adc_key_in = analogread(0); // 从液晶键盘上读取按钮的值// 检查按下的是哪个按钮if (adc_key_in > 1000) return btnnone; // 把它作为速度的第一个选项因为它是最有可能的结果if (adc_key_in < 50) return btnright;if (adc_key_in < 250) return btnup;if (adc_key_in < 450) return btndown;if (adc_key_in < 650) return btnleft;if (adc_key_in < 850) return btnselect;return btnnone; // 当所有读取都失败时,返回btnnone}void setup(){serial.begin(115200);pinmode(buzzer_pin, output);lcd.begin(16, 2); // 启动与lcd键盘的通信lcd.setcursor(0,0);lcd.print(arduino-);lcd.setcursor(0, 1);lcd.print( timer);delay(3000);}void loop(){// 根据按下的按钮检查哪个条件是正确的if(starttimer == true){start_timer();}else if (settimer == true){set_timer();}}// 这个函数将计算时间void start_timer(){// 检查时间是否正常if(hrs == 0 && mins == 0 && secs == 0){lcd.setcursor(0, 0);lcd.print( time is up);lcd.setcursor(0, 1);lcd.print( beep beep);digitalwrite(buzzer_pin, high);delay(500);digitalwrite(buzzer_pin, low);delay(500);}else if(secs 24){hrs = 0;}}break;}// 如果down被按下, 分钟或小时减1case btndown:{delay(300);if(cursor_pos == set_mins){mins--;if(mins < 0){mins = 60;}}else if(cursor_pos == set_hrs){hrs--;if(hrs = interval) {lcd.clear();if(get_time == true){secs--;get_time = false;}previousmillis = millis();}}
至此一款基于arduino的定时器就制作完成了,余下的工作你可以根据喜好对它进行美化或者开发更有趣的应用。
反相与同相输入端之间的区别?怎么判断集成运算放大器的同向输入端
lm1117引脚图及功能使用
海信陈维强:智能网联汽车仅靠企业个体无法实现
关于反无人机市场对于未来发展趋势的预测
钢制四柱型散热器的详细介绍
制作一个基于Arduino控制的定时器
氧化物技术现状,氧化物技术哪家强?
证监会:同意成都华微科创板IPO注册申请
普源精电遥控模块产线测试解决方案
被丧尸支配的恐惧!国产《除夕》VR游戏
薄膜表面瑕疵在线检测仪的原理以及优点是什么
中国联通已在全球共设置了31个分支机构和超过100个POP点
电热元件功率的计算
是德科技M8050A高性能误码仪荣获“产品创新奖”
语音模块助力晾衣架智能化升级
如何把数字格式化成字符串
恩智浦EdgeLock A5000让安全器件开发更轻松
电力行业浪涌保护器防雷应用方案
运营商是否真的出现无法平衡发展4G与5G?
基于DINO知识蒸馏架构的分层级联Transformer网络