标签:ref 32位 结果 main 项目 运行 提取 就是 cortex-m
嵌入式下的深度学习 Sparkfun Edge with TensorFlow(一)Hello World
微控制器:Sparkfun Edge
TinyML链接:https://pan.baidu.com/s/1G_WB7QhnxcZJxpKpK_NBSA
提取码:mgj1
git clone https://github.com/tensorflow/tensorflow.git cd tensorflow
在拉下的repo中已经有了书中的源码,所以可以直接编译。
# 编译在板子上运行的二进制文件 make -f tensorflow/lite/micro/tools/make/Makefile TARGET=sparkfun_edge hello_world_bin
在这里就有问题了。make的过程中会连续下载几个包,由于服务器在国外,国内的速度特别慢,一旦中途因网络超时下载失败就需重新make,但第二次make时不会重新下载或断点下载上一次下载失败的包,缺包编译就会失败。这时在第二次make前在 tensorflow/lite/micro/tools/make/downloads 里删除刚才下载失败的目录,第二次make就会重新下载。
如果几次后还是不行成功编译,只能重新删除整个tensorflow的repo,再重新刚才的流程。
可以让ubuntu终端走国外代理完成这几个包的下载。
Linux 让终端走代理的几种方法 https://zhuanlan.zhihu.com/p/46973701
Linux终端代理方式 https://www.cnblogs.com/hi-eric/p/11563245.html
# 签名 python3 tensorflow/lite/micro/tools/make/downloads/AmbiqSuite-Rel2.2.0/tools/apollo3_scripts/create_cust_image_blob.py --bin tensorflow/lite/micro/tools/make/gen/sparkfun_edge_cortex-m4/bin/micro_speech.bin --load-address 0xC000 --magic-num 0xCB -o main_nonsecure_ota --version 0x0 # 生成真正在板子上运行的二进制文件 python3 tensorflow/lite/micro/tools/make/downloads/AmbiqSuite-Rel2.2.0/tools/apollo3_scripts/create_cust_wireupdate_blob.py --load-address 0x20000 --bin main_nonsecure_ota.bin -i 6 -o main_nonsecure_wire --options 0x1
最后生成的main_nonsecure_wire.bin才是真正要烧进去的文件。
# 波特率 export BAUD_RATE=921600 # 设备号 export DEVICENAME="/dev/ttyUSB0" # 烧写 python3 tensorflow/lite/micro/tools/make/downloads/AmbiqSuite-Rel2.2.0/tools/apollo3_scripts/uart_wired_update.py -b ${BAUD_RATE} ${DEVICENAME} -r 1 -f main_nonsecure_wire.bin -i 6
烧写前,必须先按住bootloader键(14键),按住14键的同时,按一下reset键,此时仍然按住14键不松,然后才能执行Python的烧写命令,同时,不要忘了sudo chmod 666 /dev/ttyUSB0,以给其足够的权限。
烧写器用的是沁恒的CH34x,Ubuntu的默认CH340驱动是有问题的,有可能烧不进去。解决办法:重新编译CH34x驱动并加载驱动。
$ git clone https://github.com/juliagoda/CH341SER.git $ cd CH341SER/ $ make $ sudo insmod ch34x.ko $ sudo rmmod ch341
但是这是动态加载驱动的方式,所以每一次重启后,再运行最后两句重新加载驱动。
好了,至此,已经可以通过官方的开发方式或Arduino IDE的开发方式写工程了。
嵌入式下的深度学习 Sparkfun Edge with TensorFlow(一)Hello World
标签:ref 32位 结果 main 项目 运行 提取 就是 cortex-m
原文地址:https://www.cnblogs.com/guangnianxd/p/12542184.html