soc 方案自动生成代码,烧录以后程序不运行。
本人用的是小黑板。在机智云自动生成代码中选择了 SOC方案,就简单弄了一个数据点,然后在void ICACHE_FLASH_ATTR user_init(void) 函数中只加了PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12); PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTCK_U, FUNC_GPIO13);
PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDO_U, FUNC_GPIO15);
GPIO_OUTPUT_SET(GPIO_ID_PIN(12), 0);//GPIO12 低电平输出
GPIO_OUTPUT_SET(GPIO_ID_PIN(13), 0);//GPIO13 低电平输出
GPIO_OUTPUT_SET(GPIO_ID_PIN(13), 1);//GPIO15 高电平输出
这几句控制ESP8622 IO 口的语句。
烧录没问题,但是就是不运行。小黑板的RGB 灯没有变化。没有达到我想输出的电平状态,配置的按键也是全部不能用。
请问各位有没有碰到类似的问题?或有解决的方法?
然后我试着修改 官方的《SOC快速开发LED灯例程》 很奇怪,可以控制eps8266的IO口了。在官网上生成的SOC 如何改行不通 烧录的地址都是按照编译生成的文件来填的No boot needed. Generate eagle.flash.bin and eagle.irom0text.bin successully in folder bin. eagle.flash.bin-------->0x00000 eagle.irom0text.bin---->0x40000。然而试了多次,基本的io口都控制不了。 论坛搜下小黑板关键字,有系列教程的 bigfanofloT 发表于 2017-10-11 11:31
论坛搜下小黑板关键字,有系列教程的
我是按照那个教程去弄的,然而就是不行。然后我就弄了个最简单的程序,没想到io口都控制不了。那个宠物屋的例程改装了一下就可以控制io口,不知哪里出了问题。:L 冷暖自知 发表于 2017-10-11 13:20
我是按照那个教程去弄的,然而就是不行。然后我就弄了个最简单的程序,没想到io口都控制不了。那个宠物屋 ...
你仔细对照看看 本帖最后由 冷暖自知 于 2017-10-15 16:06 编辑
这个问题困扰了我很多天,刚开始移植以为是程序的问题,然后就一直在修改移植程序,都带来失望的结果,后来修改了Makefile 这个文件程序程序才正常运行,原来是固件生成方式错误了:L
我用的是安信可提供的集成编译环境默认的 Makefile 文件是这样的
E:\小黑板图片\2.png
生成的固件是这样的
E:\小黑板图片\1.png
这样烧录的时候程序不运行。
需要修改Makefile 文件改如下:
生成的固件如下
烧录的时候选择的文件
烧录文件 烧录地址
blank.bin 0x3fe000
esp_init_data_default.bin 0x3fc000
boot.bin 0x00000
user1.4096.new.6.bin 0x01000
烧录界面最后一点,安信可建议刷固件的是时候使用的FLASH SIZE 是8Mbit 的,用32Mbit可能会擦去原本芯片的激活信息,我试了一下,刷了8M的,在手机连接设备时,一直提示,等待设备就绪,改成32m 就正常了。
对于新手来说,烧录完全就是一个坑啊。
这是我所遇到问题的解决方法,希望能帮到同样遇到这个问题的人!
冷暖自知 发表于 2017-10-15 15:44
这个问题困扰了我很多天,刚开始移植以为是程序的问题,然后就一直在修改移植程序,都带来失望的结果,后来 ...
回去试试 我两个星期了,一个程序 都没有调试成功, 就是因为看了安信可的文档所以每次都是FLASH_SIZE 选8Mbit
学习了,有用。多谢!
页:
[1]