天书 发表于 2023-5-16 12:48:27

一个外行财务学Beetle ESP32-C3免费试用活动的学习日记

本帖最后由 天书 于 2023-5-17 19:20 编辑

一个外行财务学Beetle ESP32-C3免费试用活动的学习日记

2023年5月16日
昨天收到了样品
今天拆封,为了方便后期学习,做项目,所以没有焊接死,全部做成活的,把底板焊接成母座, 主控焊接成公针
同时给底板的电池口那里焊接一个ph2.0的电池插头母头,尺寸有点大所以对ph2.0的针脚 老虎钳帮助弯折一下
然后给10号引脚拉高让他板载灯常亮,测试下一节400ma的锂电池能待机多久,看看功耗如何。
5月16日下午看了下c3模拟的输入引脚只能选 0 1 2 3 4 5 所以如果我打算做一个遥控器 使用espnow通信 给另外一个c3 摇杆就只能用那几个引脚打算就用 4 和5 来分别给2个摇杆用 另外2个方向 有 2 3 备用 他的输出是从0到21个脚可以用 ,sda是8 scl是9 需要注意的也就这些点,模拟输出也是只有 2 6 8 10 4个引脚可以选择
下午开始设计遥控器pCB


5月17日
今天起来想测试一下联网点亮0.96的屏幕 显示一个网络时钟
代码如下:
#include <WiFi.h>
#include <TimeLib.h>
#include <NtpClientLib.h>
#include <U8g2lib.h>
#include <Wire.h>
#include <SimpleTimer.h>

int8_t timeZone = 8;
const PROGMEM char *ntpServer = "ntp1.aliyun.com";
U8G2_SSD1306_128X64_NONAME_F_SW_I2C u8g2(U8G2_R0,20, 21, U8X8_PIN_NONE);
SimpleTimer timer;

void Simple_timer_1() {
u8g2.firstPage();
do
{
    page1();
}while(u8g2.nextPage());
}

void page1() {
u8g2.setFont(u8g2_font_timR18_tf);
u8g2.setFontPosTop();
u8g2.setCursor(0,2);
u8g2.print(String(NTP.getDateYear()) + String("-") + String(((NTP.getDateMonth() < 10)?"0":"")) + String(NTP.getDateMonth()) + String("-") + String(((NTP.getDateDay() < 10)?"0":"")) + String(NTP.getDateDay()));
u8g2.setFont(u8g2_font_timR24_tf);
u8g2.setFontPosTop();
u8g2.setCursor(0,30);
u8g2.print(String(((NTP.getTimeHour24() < 10)?"0":"")) + String(NTP.getTimeHour24()) + String(":") + String(((NTP.getTimeMinute() < 10)?"0":"")) + String(NTP.getTimeMinute()) + String(":") + String(((NTP.getTimeSecond() < 10)?"0":"")) + String(NTP.getTimeSecond()));
}

void setup(){
WiFi.begin("******", "********");
while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
}
Serial.println("Local IP:");
Serial.print(WiFi.localIP());

NTP.setInterval (600);
NTP.setNTPTimeout (1500);
NTP.begin (ntpServer, timeZone, false);
u8g2.setI2CAddress(0x3C*2);
u8g2.begin();
timer.setInterval(1000L, Simple_timer_1);

u8g2.enableUTF8Print();

}

void loop(){
timer.run();

}


效果如图:


再点亮一下 ws2812的流水灯 代码如下:


#include <Adafruit_NeoPixel.h>

Adafruit_NeoPixel rgb_display_0 = Adafruit_NeoPixel(64,0,NEO_RGB + NEO_KHZ800);

void setup(){
rgb_display_0.begin();
rgb_display_0.setBrightness(250);
}

void loop(){
for (int i = 1; i <= 64; i = i + (1)) {
    for (int i = 1; i <= 64; i = i + (1)) {
      rgb_display_0.setPixelColor((i)-1, (((0 & 0xffffff) << 16) | ((0 & 0xffffff) << 8) | 0));
    }
    rgb_display_0.setPixelColor((i)-1, (0xff0000));
    rgb_display_0.show();
    delay(100);
}

}


效果如图:
5月17日晚
发现充电指示灯1.0版本是绿色灯珠而且特别亮,我家有小朋友 怕伤害到小朋友眼睛 所以果断给吹下来换成红色灯珠,降低亮度
不过他是0402规格 我手里只有0603规格的灯珠,没办法就只能排列方法换一下竖过来找个1k电阻并排放 一个点焊接一个,然后电阻和灯珠串联搞定
主要充电过程红色更加符合逻辑,绿色我感觉应该是充满了才是绿色容易给人逻辑错觉,实际说明书上说充满是灭灯的

效果看照片:

物联网学习 发表于 2023-5-25 12:44:48

66666666666666
页: [1]
查看完整版本: 一个外行财务学Beetle ESP32-C3免费试用活动的学习日记