NodeMCU 2.2.1 编译NodeMcu lua固件

报错:无法下载 https://github.com/jmattsson/esp-toolchains/releases网页下的toolchain-esp8266-linux-x86_64-20181106.0.tar.xz

修改makefile文件中对应的wget为wget --no-cookie --no-check-certificate

若是还是无法下载,可自行下载相应的文件到cache文件夹下,我的是从阿里云服务器下载

wget --no-cookie --no-check-certificate https://github.com/jmattsson/esp-toolchains/releases/download/linux-x86_64-20181106.0/toolchain-esp8266-linux-x86_64-20181106.0.tar.xz

编译NodeMcu lua固件

NodeMcu lua可在网上编译下载,我选择自行编译是因为要在烧录bin文件的同时把图片等资源文件给烧录进去

1.下载需要用到的软件

下载需要用到的程序

yum install make git tar unzip srecord python python-pip gcc g++

安装python包

pip install esptool

2.克隆nodemcu-firmware

git -clone https://github.com/nodemcu/nodemcu-firmware.git

3.自定义配置

1)根据自己的需要修改nodemcu-firmware/app/include目录下的user_model.h和user_config.h
user_model.h涵盖需要编译的模块
user_config涵盖模块配置项

2)在local/fs文件夹添加自己需要的用到文件(make后再bin/下生成bin文件)

更多配置自行阅读源码nodemcu in git

4.Make
cd到nodemcu-firmware根目录

export BUILD_DATE=$(date +%Y%m%d)
make EXTRA_CCFLAGS="-DBUILD_DATE='\"'$BUILD_DATE'\"'" all

完成后会在/bin生成.bin文件
5.整合.bin文件
合并:
把0x00000.bin与0x10000.bin合并成temp.bin

srec_cat -output "temp.bin" -binary 0x00000.bin -binary -fill 0xff 0x00000 0x10000 0x10000.bin -binary -offset 0x10000

-output "temp.bin"                                                      输出文件名temp.bin
-fill 0xff 0x00000 0x10000                                          在[0x00000,0x10000]内填充0xff(得先填充)
-binary ...... 0x10000.bin -binary -offset 0x10000       偏移0x10000开始写0x10000.bin
整合用户bin文件(local/fs中生成的bin):

srec_cat -output "nodemcu_32mb.bin" -binary temp.bin -binary -fill 0xff 0x00000 0x70000 0x70000-32mb.img -binary -offset 0x70000 

nodemcu_32mb.bin即为最终生成的文件

PS: .lua文件最好编译成.lc文件执行(关于out of memory)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值