看了下,貌似是写完程序后重新构建一个全新的完整固件刷进去把原先的固件给替换掉? 并不是仅把所写的程序编译了放进去?
1
loading 2018-10-08 21:51:17 +08:00 via Android
这个随便 youtube 搜索个视频看看,半个小时就知道了。
|
2
loading 2018-10-08 21:54:06 +08:00 via Android
arduino 有内置的底层库,你这样理解就可以了。
c 语言 include,了解一下。 就是编译整个项目,直接写进去。当然 bootloader 就不一定了。 c 的普通 hello world,不也是有 include 一个 print 吗。 |
4
loading 2018-10-08 22:13:25 +08:00 via Android
去买本书看吧,你没系统学的,懒得教你。
|
5
billlee 2018-10-09 00:53:48 +08:00 1
单片机没有内核、进程、动态连接库这些东西。你写的程序就是独占运行的,所以依赖库都要静态连接进去。
|
6
azev OP |
8
deben 2018-10-09 09:41:11 +08:00
esp8266 模块里面的主驱动芯片是 单片机 /ARM,无需操作系统,直接由 C/C++ 编译成机器码来驱动。
Arduino 提供了一堆底层的硬件驱动,比如 IO/UART/I2C 等等,只需按照指定的 C/C++ 语法就可以直接驱动硬件。 Arduino 里面的 setup\loop 等函数,只是包装了常规 C/C++ 里面的 init 或者 main 函数而已。 抛开 BootLoader 不谈,编译器编译出来的直接是 Hex 文件,也就是机器码,MCU 读取烧写到 Flash 里面的机器码来逐步驱动硬件来工作。 如果只是应用,不建议系统学习电子方面的知识,只需编程就行了,遇到什么问题再去 Google 了解一下。 |
9
728528678 2018-10-09 09:55:10 +08:00
没有 BootLoader 的情况下,每次烧写就是改写内部 flash,应该可以理解为原来的都不复存在,全盘替换
|