1828| 2
|
[用户分享] TinkterNode试用第三弹——正品出炉 |
自从上次发帖,机器人都没动过。 为啥? 少部件啊! 就比如下面这个: 这是个啥? 简单介绍一下吧...... 它叫...... 算了,放图 知道了吧? 好了,正片开始 ———————————————————— 上面说到我请来了一位大将——74HC595,然后收到货几天后,我做出了这个玩意儿 ↓ 这是我自制的74HC595拓展模块,做起来不是 一般的麻烦。 然后焊上新买的L9110测试一下 背面来一张 然而,理想很丰满,现实很骨感。 现实就是:这块74HC595根本用不了...... 这个问题至今无解。 上网搜了一下,我默默打出一串?????? 我就奇怪了,你们对UART有什么意见吗? 为什么没有UART转IO接口的方案呢? 非得用那么多接口的芯片,整块ATTINY它不香吗? 等等我好像说了什么。 我正好闲置着两块Attiny85,可以用它来拓展IO,但因为懒的问题,就算了。 值得一提的是,这款终于能够只用一个IO控制电机了。 (事实是红板的电源焊盘脱落了) 然后我默默地把L9110拆了下来,然后焊了两根线接到两个IO。 这样下来还多出了一个IO,不知道拿来干啥,就先放着吧。 程序部分我上回讲过了,使用的软件是Blynk。 比起上次,我删除了很多的东西,只剩下两个按钮,两个滑杆,一个Terminal。 然后终于是完整版程序: [mw_shl_code=c,false]#include <BlynkSimpleEsp32_BLE.h> #include <BLEDevice.h> #include <BLEServer.h> #include <Servo.h> #define BLYNK_PRINT Serial #define BLYNK_USE_DIRECT_CONNECT String str; WidgetTerminal terminal(V5); int l, r; Servo left, right; char auth[] = "5BBvwEhC6qLfVfNBVwgGoZLZbHAKx1jZ"; BLYNK_WRITE(V0) { left.write(param.asInt()); } BLYNK_WRITE(V1) { right.write(param.asInt()); } BLYNK_WRITE(V3) { if (l == param.asInt()) { digitalWrite(D2, HIGH); } else { digitalWrite(D2, LOW); } } BLYNK_WRITE(V4) { if (param.asInt() == 1) { digitalWrite(D3, HIGH); } else { digitalWrite(D3, LOW); } } BLYNK_WRITE(V5) { str = param.asStr(); if (str == "AT") { terminal.println("OK"); } else if (str == "AT+RESET") { terminal.println("System will restart in 10 seconds"); delay(10000); ESP.restart(); } else if (str == "AT+VERSION?") { terminal.print("+VERSION:"); terminal.println(BLYNK_VERSION); terminal.println("OK"); } else if (str == "") { terminal.println("Unkhown Command"); } terminal.flush(); } void setup() { left.attach(D0); right.attach(D1); Serial.begin(9600); Serial.println("Waiting for connections..."); pinMode(D2, OUTPUT); pinMode(D3, OUTPUT); Blynk.setDeviceName("Robot"); Blynk.begin(auth); } void loop() { Blynk.run(); }[/mw_shl_code] 最后我发现, 电机线 TM断了 !!!!!!!!!!!!!! 好了 告辞 |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed