esp8266 SOC方案经过半年沉淀之后再度重启二
2018-08-2014:16:10
以下是输出控制
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO0_U, FUNC_GPIO0);
GPIO_OUTPUT_SET(GPIO_ID_PIN(0), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U, FUNC_GPIO1); //TXD
GPIO_OUTPUT_SET(GPIO_ID_PIN(1), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U, FUNC_GPIO2);
GPIO_OUTPUT_SET(GPIO_ID_PIN(2), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0RXD_U, FUNC_GPIO3); //RXD
GPIO_OUTPUT_SET(GPIO_ID_PIN(3), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4);
GPIO_OUTPUT_SET(GPIO_ID_PIN(4), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5);
GPIO_OUTPUT_SET(GPIO_ID_PIN(5), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_DATA2_U, FUNC_GPIO9);
GPIO_OUTPUT_SET(GPIO_ID_PIN(9), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_DATA3_U, FUNC_GPIO10);
GPIO_OUTPUT_SET(GPIO_ID_PIN(10), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12);
GPIO_OUTPUT_SET(GPIO_ID_PIN(12), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTCK_U, FUNC_GPIO13);
GPIO_OUTPUT_SET(GPIO_ID_PIN(13), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTMS_U, FUNC_GPIO14);
GPIO_OUTPUT_SET(GPIO_ID_PIN(14), level);PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDO_U, FUNC_GPIO15);
GPIO_OUTPUT_SET(GPIO_ID_PIN(15), level);gpio16_output_conf();
gpio16_output_set(level);以下是输入采集
PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO0_U, FUNC_GPIO0);
result = GPIO_INPUT_GET(GPIO_ID_PIN(0));PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0TXD_U, FUNC_GPIO1); //TXD
result = GPIO_INPUT_GET(GPIO_ID_PIN(1));PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO2_U, FUNC_GPIO2);
result = GPIO_INPUT_GET(GPIO_ID_PIN(2));PIN_FUNC_SELECT(PERIPHS_IO_MUX_U0RXD_U, FUNC_GPIO3); //RXD
result = GPIO_INPUT_GET(GPIO_ID_PIN(3));PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO4_U, FUNC_GPIO4);
result = GPIO_INPUT_GET(GPIO_ID_PIN(4));PIN_FUNC_SELECT(PERIPHS_IO_MUX_GPIO5_U, FUNC_GPIO5);
result = GPIO_INPUT_GET(GPIO_ID_PIN(5));PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_DATA2_U, FUNC_GPIO9);
result = GPIO_INPUT_GET(GPIO_ID_PIN(9));PIN_FUNC_SELECT(PERIPHS_IO_MUX_SD_DATA3_U, FUNC_GPIO10);
result = GPIO_INPUT_GET(GPIO_ID_PIN(10));PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDI_U, FUNC_GPIO12);
result = GPIO_INPUT_GET(GPIO_ID_PIN(12));PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTCK_U, FUNC_GPIO13);
result = GPIO_INPUT_GET(GPIO_ID_PIN(13));PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTMS_U, FUNC_GPIO14);
result = GPIO_INPUT_GET(GPIO_ID_PIN(14));PIN_FUNC_SELECT(PERIPHS_IO_MUX_MTDO_U, FUNC_GPIO15);
result = GPIO_INPUT_GET(GPIO_ID_PIN(15));gpio16_input_conf();
result = gpio16_input_get();
2018-07-1719:36:23
继上一次发博之后,今天5分钟搞定SOC开发。



重点在于导入方式
第二种导入方式,针对第三方云平台项目用第一种方法无法导入问题。例如“机智云”生成的项目文件夹。
步骤1:解压从机智云下载的项目并复制到project文件夹内。双击"OpenWorkSpace"批处理文件,自动打开。简化步骤
<ignore_js_op>
步骤2:将项目手动复制进去。下图选中的就是我刚才复制的项目文件夹。
<ignore_js_op>
步骤3:双击打开该文件夹,直到定位到有“MakeFile”的文件夹处。并复制文件路径,到安信可IDE内用。注意路径上有文件名,不能出现中文。
<ignore_js_op>
步骤4:双击打开AiThinker_IDE。“File”->"Import"。图略了。
步骤5:双击下图的“Existing Code as Makefile Project”
<ignore_js_op>
步骤6:将刚才复制的路径直接粘贴到“Existing Code Location”处,省地点“Browse”按钮一层层找了。下面选"Cygwin GCC"。 点“Finish”。
<ignore_js_op>
导入成功,但还有些地方需要修改,否则编译不成功。我是从机智云论坛上看来的,目前我还没整明白。就是双击打开MakeFile,将下面这段程序参数修改下。
APP?=0
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=0
改成
APP?=1
SPI_SPEED?=40
SPI_MODE?=QIO
SPI_SIZE_MAP?=6
boot赋值为new,意思就是可以升级
APP 赋值为1,就可以生成user1的bin 文件 如果需要OTA云端升级,就要用到user2文件,只要在这里将APP值赋为2就行了。
SPI_SPEED是下载的速度
SPI_MODE是下载模式
SPI_SIZE_MAP是flash的大小这个可以看上面那个文档详细介绍 赋值为0表示使用的flash是512k
有一处没搞清楚,安信可官方的SPI_SIZE_MAP?=2 机智云论坛上的那位大神是SPI_SIZE_MAP?=4,而下面有位版主说要改成SPI_SIZE_MAP?=6 反正都能编译成功。
esp8266 SOC方案经过半年沉淀之后再度重启二的更多相关文章
- esp8266 SOC方案经过半年沉淀之后再度重启
我发誓这是最后一次玩esp8266,该脱坑了...... 以前看不懂的教程 http://club.gizwits.com/thread-6447-1-1.html 2018教程 http://clu ...
- 基于SOC方案的嵌入式开发-远程定时设备
Soc方案实现简单的定时开关灯 http://club.gizwits.com/forum.php?mod=viewthread&tid=7787&highlight=%E5%AE%9 ...
- TI的H264 SOC方案
TI的H264 SOC方案是目前常用的视讯解决方案,TI针对视频会议,视频监控,视频存储等场景细化需求并优化了H264技术. 1. TI H.264背景 如今视频压缩技术在视频领域有非常多的应用需求. ...
- Realm数据持久化方案的简单介绍和使用(二)
接上篇... 4. 可空属性&默认值&忽略属性 默认情况下, 属性值可空, 如果强制要求某个属性非空, 可以使用如下方法: 遵循协议方法 + (NSArray *)requiredPr ...
- 无线冲方案 MCU vs SoC
参考: MCU还是SoC:2018无线充电技术走向何方? 方案 分立/集成 特点 框图 MCU方案 分立方案 MCU芯片负责Qi协议的运算和外围电路控制,ST MCU居多:单线圈,双线圈,三线圈都有: ...
- 双十一HostGator独立服务器方案
一年一度的“双十一”购物狂欢节到来,各大电商平台线上消费的各种“吸金”开启了“双十一”模式,一年一度的“双十一”网购狂欢又开始以“巨大的价格优势”来勾起消费者的购买欲望. 此次双十一期间,HostGa ...
- 分布式唯一ID生成方案是什么样的?(转)
一.前言 分布式系统中我们会对一些数据量大的业务进行分拆,如:用户表,订单表.因为数据量巨大一张表无法承接,就会对其进行分库分表. 但一旦涉及到分库分表,就会引申出分布式系统中唯一主键ID的生成问题, ...
- 前端模块化方案全解(CommonJS/AMD/CMD/ES6)
模块化的开发方式可以提高代码复用率,方便进行代码的管理.通常一个文件就是一个模块,有自己的作用域,只向外暴露特定的变量和函数.目前流行的js模块化规范有CommonJS.AMD.CMD以及ES6的模块 ...
- 打造开源GIS方案
现在GIS用途较多,最近要有所接触,所以决定自己打造一个已经又的方案.均以Java作为开发 二位地图:客户端:geotools,swing,geoserver; web:openlayer,geose ...
随机推荐
- SGU 439 A Secret Book
解法: 对于第二个串,循环移动能得到的字典序最小的串,可以直接用最小表示法搞定. 然后用最小表示的第二个串和第一个串做两次扩展KMP,一次正常求,另外一次将两个串都反转一下,然后扫一遍ex[]数组 # ...
- 卸载MySQL 5.0
昨天在Navicat for mysql中导入一个脚本,执行.出现乱码. 考虑到可能是版本号问题,就想卸载了又一次安装MYSQL,这一卸载倒是出了问题.导致安装的时候安装不上. 后来无意发现是卸载的时 ...
- STM32F104VG (一)中断与外部中断
一.基础知识 1.ARM的中断优先级分硬件优先级和软件优先级两种 当中软件优先级又由抢占优先级和响应优先级组成 2.中断的优先级採用编号小优先的原则. 3.普通情况: 1).假设设定了软件优先级.先看 ...
- C#高级编程五十二天----有序列表
有序列表 假设须要基于对全部集合排序,就能够使用SortedList<TKey,TValue>类.这个类依照键给元素排序.这个集合中的值和键都能够使用随意类型. 以下的样例创建了一个有序列 ...
- UML——用例图
用例图是在需求分析阶段开发人员和用户对需求规格达成的某种共识.它描写叙述了待开发系统的功能需求. UML视频使我们对用例图的基本组成元素.属性.粒度等有了理论上的理解,我们还须要自己亲自己主动手画一画 ...
- EEPlat的控制器概念
控制器是EEPlat平台界面层部分的核心概念.平台中界面展示都是通过平台的各种控制器综合控制输出的. EEPlat平台的界面层模型採用了HMVC模式.HMVC模式的採用使得EEPlat平台界面层可以实 ...
- 运行shell脚本报错 '\357\273\277': command not found 解决的方法
1,删除BOM,在vi以下运行以下的命令就可以 :set nobomb 2,原因: 所谓BOM,全称是Byte Order Mark.它是一个Unicode字符,通常出如今文本的开头,用来标识字节序( ...
- Cocos2d-x 脚本语言Lua基本数据结构-表(table)
Cocos2d-x 脚本语言Lua基本数据结构-表(table) table是Lua中唯一的数据结构.其它语言所提供的数据结构,如:arrays.records.lists.queues.sets等. ...
- 开发人员调试工具Chrome Workspace
Workspace是个什么样的东西呢?他可以在开发人员工具中调试改动js或者css同一时候自己主动保存文件.可以避免开发人员在工具中调试好,再到编辑器中改动一次代码的反复操作,可以提高一定的效率 配置 ...
- JPG文件格式
开始:0xFF 0xD8 结束:0xFF 0xD9 文件的宽高:0xFF 0xC0 之后隔二个字节(0x11 0x08 这二个字节一般是固定的.描述这个块的长度.) 然后用四个字节来存储图片的高和宽0 ...