选择联盛德微电子的HED10W07SN模块入手进行学习是带点偶然的。
拿WIFI模块和CC2530结合做网关是很早就想做的事,但WIFI模块一直比较贵,去年发现价格突然降下来了,于是开始着手。心底有个态度是希望支持国产,看到HED10W07SN的推介新闻就在其网站上发了条询问的消息。发消息之前另外一个国产芯片也发了邮件,不过没有回应。期间在淘宝买了某个模块搭了环境,不知是否硬件有问题例程没跑起来。然后收到了联盛德微电子的工作人员的回复,还安排了热心的联系人给我技术支持,所以就用起来了。
发现它的文档和源代码都比较全面和规范,上手花费能控制在60元内,所以觉得是可以推荐给学生自己买来学的。
想做HED10W07SN模块的开发的话需要跟联盛德微电子的员工联系、注册、签保密协议,然后就能获得开发资料和工具了。
开发工具主要有3个:Keil作为编译环境、EM-WIFI是烧写工具(联盛德微电子自己的)、超级终端(windows自带的)作为特殊情况下的代码下载工具。
程序的架构是跑在ucOS上的,厂家已经提供了底层函数的大部分源代码和详细的例程源代码。
芯片通过串口烧写程序,不能调试。
我对缺省的开发环境做了些调整:
1. 将底层函数封装为库;
2. 调整应用的project目录结构,修改链接后批处理文件命令;
下面的附件是调整后的开发环境。
目录结构如下:
-
应用的工程目录在MyApps子目录下,工程文件为\Keil\WM_SDK.uvproj。增加新应用时,在MyApps子目录下复制任一例子工程目录,改名即可。
-
库文件:Lib\KEIL子目录下。wifi.lib是厂家提供的库文件(没有源代码),WM_SDK.lib是我以厂家提供的源代码文件生成的库文件。(注:厂家仅提供了面向ucOS的wifi.lib库文件,所以WM_SDK.lib也是面向ucOS的,不支持RTOS)
-
App、Include、Src为厂家提供的底层源代码的头文件;Src\Boot是没法放在库文件中的厂家提供的源文件;
-
MOD是我封装的函数的头文件和源代码;
应用main.c框架:
//以下是最小框架代码
#include "modSys.h"
int main( void ) {
modSysInit();
modSysRun();
}
void CreateUserTask(void) {
//用户代码在这里进行初始化
}
//以上是最小框架代码 |
-
modSysInit()进行底层初始化,然后调用CreateUserTask()执行应用的初始化代码;
-
modSysRun()启动ucOS任务调度过程;
|
文章评论(0条评论)
登录后参与讨论