三,天猫精灵SDK驱动开发板LED

1,启动流程:
bootload->main(8710SDK)->aosmaintask->application->application_start
创建项目出现如下错误:
aos create project -b esp8266 -t blink_demo -d tmp blinkapp

[AliOS-Things] ERROR: "python" returned error code 1.
[AliOS-Things] ERROR: Command "python /home/xy/AliOS-Things/build/scripts/gen_newproject.py 

解决方法:
https://blog.csdn.net/weixin_43869959/article/details/108561927

root@tianmao-virtual-machine:/# aos create project -b esp8266 -t blink_demo -d tmp blinkapp
Creating /tmp/blinkapp/.defconfig ...
Creating /tmp/blinkapp/.config ...
#
# configuration written to /tmp/blinkapp/.config
#
Checking config output: /tmp/blinkapp/.config ...

tmp目录下有blinkapp工程。

root@tianmao-virtual-machine:/tmp/blinkapp# ls
aos_config.h  autobuild.json  board      k_app_config.h  out
aos.mk        blink_demo.c    Config.in  maintask.c      README.md

2,开发板点灯程序编写
一款方便阅读代码的工具 —source insight,使用方法如下:
https://www.cnblogs.com/andy-songwei/p/9965714.html

按mk3080开发板LED灯IO口进行配置
编写blink_demo.c如下:

  /*
 * Copyright (C) 2015-2020 Alibaba Group Holding Limited
 */
#include <stdio.h>
#include "aos/kernel.h"
#include "ulog/ulog.h"
#include "board.h"
#include "aos/hal/gpio.h"

/**
 * Brief:
 * This test code shows how to configure LED gpio.
 */
#ifdef LED1
#define GPIO_LED_IO         LED1
#elif LED2
#define GPIO_LED_IO         LED2
#elif LED3
#define GPIO_LED_IO         LED3
#elif LED4
#define GPIO_LED_IO         LED4
#else
#define GPIO_LED_IO         0xffff
#endif

#define GPIO_RED_LED  0
#define GPIO_GREEN_LED 1
#define GPIO_BLUE_LED 6


gpio_dev_t led_red;
gpio_dev_t led_green;
gpio_dev_t led_blue;
//gpio_dev_t led_nucleo;

int application_start(int argc, char *argv[])
{
     /* gpio port config */
  //  led_nucleo.port = GPIO_LED_IO;
        led_red.port = GPIO_RED_LED;
        led_green.port = GPIO_GREEN_LED;
        led_blue.port = GPIO_BLUE_LED;
    /* set as output mode */
  //  led_nucleo.config = OUTPUT_PUSH_PULL;
        led_red.config = OUTPUT_PUSH_PULL;
        led_green.config = OUTPUT_PUSH_PULL;
        led_blue.config = OUTPUT_PUSH_PULL;
    /* configure GPIO with the given settings */
  //  hal_gpio_init(&led_nucleo);
        hal_gpio_init(&led_red);
        hal_gpio_init(&led_green);
        hal_gpio_init(&led_blue);
		sys_itag_off();//关闭掉PA14,PA15的jtag功能
    while (1)
    {
        /* Insert delay 1000 ms */
        aos_msleep(1000);
        printf(" toggle led \n");
       // hal_gpio_output_toggle(&led_nucleo);
        hal_gpio_output_toggle(&led_red);
        hal_gpio_output_toggle(&led_green);
        hal_gpio_output_toggle(&led_blue);
    }

    return 0;
}

aos make 编译完成:

Making blinkappc@esp8266.hex
Making blinkappc@esp8266.bin

                        AOS MEMORY MAP                            
|=================================================================|
| MODULE                                   | ROM       | RAM      |
|=================================================================|
| app_adapter                              | 76        | 12       |
| arch_xtensa_lx106                        | 2662      | 2784     |
| blinkappc                                | 122       | 36       |
| board_esp8266                            | 1330      | 44       |
| kernel_init                              | 112       | 0        |
| kv                                       | 2224      | 24       |
| libcirom                                 | 27509     | 1200     |
| libcrypto                                | 14512     | 0        |
| libgcc                                   | 2167      | 0        |
| libhal                                   | 37        | 0        |
| liblwip                                  | 30717     | 1596     |
| libmain                                  | 30412     | 708      |
| libnet80211                              | 42675     | 3213     |
| libphy                                   | 48158     | 461      |
| libpp                                    | 43992     | 18013    |
| libwpa                                   | 17240     | 626      |
| mcu_esp8266                              | 8555      | 559      |
| netmgr                                   | 94        | 8        |
| newlib_stub                              | 363       | 0        |
| osal_aos                                 | 670       | 0        |
| rhino                                    | 11685     | 3288     |
| ulog                                     | 573       | 7        |
| vfs                                      | 1440      | 1113     |
| yloop                                    | 2002      | 32       |
| *fill*                                   | 2097      | 128      |
|=================================================================|
| TOTAL (bytes)                            | 291424    | 33852    |
|=================================================================|
Generate standard flash images /tmp/blinkappc/out/blinkappc@esp8266/binary/blinkappc@esp8266.elf
bin crc: 926c7439
Generate Raw OTA image: /tmp/blinkappc/out/blinkappc@esp8266/binary/blinkappc@esp8266_ota.bin ...
Generate Compressed OTA image: /tmp/blinkappc/out/blinkappc@esp8266/binary/blinkappc@esp8266_ota.bin.xz ...
293797
4955a31978ffe74d65f21ae2d7dcc004
196164
47b2e3a4c98f572f26fe25443cf8acf8
Build complete: blinkappc@esp8266

root@tianmao-virtual-machine:/tmp/blinkappc/out/blinkappc@esp8266/binary# 路径下生成

blinkappc@esp8266.bin 

使用image tool烧录工具进行烧写:
将 blinkappc@esp8266.bin 拷贝到共享文件夹下
用跳线将PA30(TX2)和GND短接起来。
download–>复位键–>拔掉跳线 ,烧写完后复位一下,看开发板灯的闪烁情况。
在这里插入图片描述

3,开发板点灯程序烧写和注意事项

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值