zoukankan      html  css  js  c++  java
  • 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,将下面这段程序参数修改下。

    BOOT?=none
    APP?=0
    SPI_SPEED?=40
    SPI_MODE?=QIO
    SPI_SIZE_MAP?=0
    改成
    BOOT?=new
    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  反正都能编译成功。

  • 相关阅读:
    Meten Special Activities II
    Meten Special Activities II
    Meten Special Activities II
    Meten Special Activities II
    Meten Special Activities
    Meten Special Activities
    Meten Special Activities
    Meten Special Activities
    Meten Special Activities
    冒泡排序和选择排序
  • 原文地址:https://www.cnblogs.com/pengwenzheng/p/9325495.html
Copyright © 2011-2022 走看看