楼主: chenhanzhong
|
[项目] 基于3D打印+Arduino的LED时钟 |
为什么一直提示 吧 Arduino:1.8.12 (Windows 10), 开发板:"Arduino Nano, ATmega328P" In file included from C:\Users\32003\Documents\arduino代码\LED_clock\LED_clock.ino:3:0: C:\Users\32003\Documents\Arduino\libraries\DS18B20\src/DS18B20.h:5:10: fatal error: OneWire.h: No such file or directory #include <OneWire.h> ^~~~~~~~~~~ compilation terminated. exit status 1 为开发板 Arduino Nano 编译时出错。 在文件 -> 首选项开启 “编译过程中显示详细输出”选项 这份报告会包含更多信息。 ? 有哪位大佬告知一下 |
桃花开了i 发表于 2020-4-17 02:43 可能跟DS18B20这个库有关系。 |
改亮度直接可以让时间的显示长一些,不然看时间还要等 一会time_show()中 标红的两个12改大,我试了一下,30比较好.(Adafruit_NeoPixel库亮度范围是0-255),但在这里不要设太大,因为这个程序亮度是渐变的,如果太大的话显示时间会较长,如果要亮度大点的话,可以把循环的步长设大点. for(int j=0; j < 12; j++) { strip.clear();//灭掉所有灯 delay(5); brightness = brightness + fadeAmount; if (brightness == 0 || brightness == 12) { fadeAmount = -fadeAmount ; } 以下是楼主大神的源码 void time_show() { brightness = 0; //LED灯亮度 int fadeAmount = 1;// 亮度渐变值 int R_1; for(int i=0; i<2; i++) { for(int j=0; j < 12; j++) { strip.clear();//灭掉所有灯 delay(5); brightness = brightness + fadeAmount; if (brightness == 0 || brightness == 12) { fadeAmount = -fadeAmount ; } if(brightness > 5 ) { R_1 = 1 ;} else { R_1 = 0 ;} strip.setPixelColor(25, R_1, brightness, 0); strip.setPixelColor(59, R_1, brightness, 0);//显示中间两个点 /*--------------------------*///获取时数十位,发送数据给灯珠 int H_ten = hour_now / 10 % 10; for(int i=1;i<=Hour_ten[H_ten][0];i++) { strip.setPixelColor(Hour_ten[H_ten], R_1, brightness, 0); } /*--------------------------*///获取时数个位,发送数据给灯珠 int H_unit = hour_now / 1 % 10; for(int i=1;i<=Hour_unit[H_unit][0];i++) { strip.setPixelColor(Hour_unit[H_unit], R_1, brightness, 0); } /*--------------------------*///获取分数十位,发送数据给灯珠 int M_ten = minute_now / 10 % 10; for(int i=1;i<=Min_ten[M_ten][0];i++) { strip.setPixelColor(Min_ten[M_ten], R_1, brightness, 0); } /*--------------------------*///获取分数个位,发送数据给灯珠 int M_unit = minute_now / 1 % 10; for(int i=1;i<=Min_unit[M_unit][0];i++) { strip.setPixelColor(Min_unit[M_unit], R_1, brightness, 0); } strip.show();//LED显示数据 delay(100);//延迟 } /*----------------------------------*///整点提示 if(minute_now == 0) { if(second_now < 10) { for(int t = 0; t<3; t++) { digitalWrite(Buzz,HIGH); delay(200); digitalWrite(Buzz,LOW); delay(200); } } } /*-------------------------------------*///整点提示 } } /*-----------------------------------------------------------------*/ |
LED_clock
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed