TinkterNode试用第三弹——正品出炉
2020-04-142885
AI 快速预览详细
本文介绍了作者使用TinkterNode进行机器人项目的过程。首先尝试使用74HC595扩展模块,但遇到无法使用的问题。随后使用Blynk软件和ESP32控制电机,简化了电路设计。最终发现电机线断裂。文章提供了详细的故障排查和解决方案,适合初学者和STEM教育场景。
|
自从上次发帖,机器人都没动过。 为啥? 少部件啊! 就比如下面这个: ![]() 这是个啥? 简单介绍一下吧...... 它叫...... 算了,放图 ![]() 知道了吧? 好了,正片开始 ![]() ———————————————————— 上面说到我请来了一位大将——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断了 !!!!!!!!!!!!!! ![]() 好了 告辞 |













虽然最快的是PCIE,但也只有真正的大佬才会驱动,那个速度比arduino总线速度快多了,我们是搞不出来的
可以一秒传输几百MB,spi一秒只有几MB垃圾中的战斗机
或者用TTL接口也不错,再好一点PHY接口速度还勉强够用
除了PCIE,其他的都不如内部GPIO速度快,因为GPIO交换矩阵是固化在板子上的
但是代码要自己写
也可以用其他fpga,多的可以扩展出100个高速gpio,延迟是几乎没有的
但是速度取决于算法设计和spi接口的速度,而且不需要cpu参与发送,但是同样要很长的代码
而且价格不美丽