最后火花板板边板今天到货;-)
遵循这个写得很好的指南:https://codelabs.developers.google.com/codelabs/sparkfun-tensorflow/#3当我尝试使用uart_wired_update.py
script来缓存Ambiq上的代码时,我遇到了以下NoResponseError,它附带了tensorflow示例
opprud$ python3 tensorflow/lite/experimental/micro/tools/make/downloads/AmbiqSuite-Rel2.0.0/tools/apollo3_scripts/uart_wired_update.py -b 115200 /dev/cu.usbserial-1430 -r 1 -f main_nonsecure_wire.bin -i 6
MOJ/Connecting with Corvette over serial port /dev/cu.usbserial-1430...
Sending Hello.
No response for command 0x00000000
Traceback (most recent call last):
File "tensorflow/lite/experimental/micro/tools/make/downloads/AmbiqSuite-Rel2.0.0/tools/apollo3_scripts/uart_wired_update.py", line 336, in <module>
main()
File "tensorflow/lite/experimental/micro/tools/make/downloads/AmbiqSuite-Rel2.0.0/tools/apollo3_scripts/uart_wired_update.py", line 38, in main
connect_device(ser)
File "tensorflow/lite/experimental/micro/tools/make/downloads/AmbiqSuite-Rel2.0.0/tools/apollo3_scripts/uart_wired_update.py", line 58, in connect_device
response = send_command(hello, 88, ser)
File "tensorflow/lite/experimental/micro/tools/make/downloads/AmbiqSuite-Rel2.0.0/tools/apollo3_scripts/uart_wired_update.py", line 235, in send_command
raise NoResponseError
__main__.NoResponseError
我的设置:
我试过了
uart_boot_host.py
脚本,也没有响应我可以使用示波器测量握手字节'0x14','0x55','0x9d','0xe9''0x0','0x0','0x8','0x0'最初在115200上发送到TXO引脚在编程标题 - 但ambiq没有回复任何东西。
顺便说一句。板载演示正在运行,蓝色LED闪烁,一些“是的”正在被识别。
欢迎任何投入。
有谁知道corvette bootloader的协议?
是否有来自第一批电路板的CPU版本更改,或者可能是sparkfun意外编程的任何锁定位?
来自热切的TF lite用户的rgds ;-)
我尝试使用rx / tx引脚上的示波器测量实际波特率,并且看到使用默认OSX串行驱动器的位时序相当不精确,应用10%off,导致读数错误,并且当波特率很高时最终丢失字节。
更新到ch340串行驱动程序后,时序得到改善,位时序正确。在921600bps时,单个字节8N1应该是10.9uS
驱动程序安装https://github.com/adrianmihalko/ch340g-ch34g-ch34x-mac-os-x-driver
很高兴听到你对董事会如此兴奋。我有一种预感,这将是一个简单的解决方案。
在会议上发布的Edge板有一个115200波特的引导加载程序,但是第二批出来的Edge板升级为921600波特的闪存,大大减少了闪存时间。尝试更改串行上载脚本中的波特率。
您还可以设置Ambiq软件开发套件,为Apollo3微控制器编写自己的应用程序。看看这里的教程:Using the Edge Board with Ambiq SDK
由于我无法评论你的帖子(声誉不够......感谢SE)我会在这里回复。
如果波特率精度是一个问题,我稍微不确定那是由操作系统引起的,而是我认为它是USB串行转换器芯片的问题。我一直在使用CH340G,而在USB-C版本则有CH340C IC。两者之间的区别在于“C”版本包括一个内部振荡器,用于提供频率参考。这个可能不太准确......?我会在这里试试(但在Windows上)让你知道。
如果这是一个持续存在的问题你会介意在SparkFun论坛上发帖吗?这样我们的技术支持就可以联系起来了(他们是那些能够在有缺陷的情况下为您提供替换硬件的人)。这是Edge的论坛:SparkFun Edge Forums
如果问题来自操作系统,那么我们可以对Edge执行的唯一修复就是降低引导加载程序的速度。我们正在编写一个关于如何做到这一点的简短教程,但它需要一个用于Cortex-M处理器的编程器/调试器。 Ambiq Apollo3 Evaluation Board有一个内置的SEGGER J-Link,这是我们用来编写电路板的方法。