https://blog.csdn.net/ReCclay/article/details/79314152
对于像我一样的新手而言,SDK的入门。简直就是云里雾里,啥也不能去理解,只能跟着照做,但是照做又很容易被简单的问题绊倒,然后也太打击人了,尤其编译SDK就是一个。
下面我以原生SDK V1.2为例,做一个模板。
原生SDK,连接:https://pan.baidu.com/s/1o8R46SU 密码:i4z0
改良后SDK,链接:https://pan.baidu.com/s/1jJBgfcU 密码:o4x7
步步为营,看图。
1、
2、
3、
4、在自己的工程里,分别再建三个文件
5、user里面放任意examples里面的user的makefile和user_main.c
6、dirver里面放对应的.c文件,这里我想打印串口。所以对应放了uart.c文件
和makefile….(刚刚那个IOT_DEMO似乎没有这个文件,我在examples\driver_lib\driver 里面找到的!)
7、include 根目录下放置user_config.h 然后再建一个 driver文件夹放置 uart.h和uart_register.h
然后利用eclipse 编译,具体烧录方法,戳这里。
注意最后生成的bin对应位置也许不太一样。。注意一下。。
上面这个user_main.c 里面我是这样写的。。
#include "driver/uart.h"
void user_init()
{
uart_init(115200, 115200);
uart0_sendStr("\r\nHello World\r\n");
}
void user_rf_pre_init(){}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
然后对应的串口
如果对应115200波特率,内容是这样的。。。
如果对于76800,内容是这样的。
乱码的位置刚好相反,,原因呢。。。其实以前也有说过。就是人家出厂时候的一些东西,在这个波特率上显示。。 传送门
哦对了,上面115200的时候。
我没让打印wifi相关,怎么打印出来了呢?如何关闭呢?
对应332行的注释取消掉就行了。
原因:
通过注释,我们可以了解到,串口打印有三种选项。
1、默认 – 利用串口0进行打印,有一个缺陷就是当FIFO缓冲区满的时候,需要等待。此时os_printf
利用串口0。
2、取消注释332行,就是利用UART1打印。UART1在GPIO2,GPIO2相当于TXD1!不够UART1通常用于debug信息的打印。此时os_printf
利用串口1。
3、取消337行注释,就是利用OPTION3。是一种无需等待的串口0打印。当然无需等待也就意味着会丢字节!此时os_printf
利用串口0。
关于串口1,串口0更多相关信息,可以戳这里!
版权声明:转载记得声明~~~ :) https://blog.csdn.net/ReCclay/article/details/79314152