分类
设计开发

无线嵌入平台编程模式

无线嵌入平台(wbed)是TinyWSN无线模块的一种使用方式,用户程序(usr)和系统程序(sys)运行在同一处理器上,用户程序可以独立开发,动态下载,类似unix系统中多进程(multi-process)的模式,下面是wbed sdk的源码链接:
https://gitee.com/tinywsn/fw-stm32l1-wbed-usr
支持GCC和IAR两种开发环境,使用这种模式可以带来很多好处

  • 共有同一硬件平台,系统更加精简,成本可以更低
  • 用户程序和系统程序之间消息通信模式,更加简单和可靠
  • 可以同步高效地工作,包括接收,发送,睡眠,唤醒等等节拍,系统功耗可以更低
  • wbed sdk可以提供底层驱动以及各类常见传感器驱动

编程需注意的事项:

  • 可使用的内存空间通过参数ctx传入,避免使用全局变量
  • 使用可重入的库函数,对于STM32而言,使用LL_DRV,对于glibc,使用其中可重入版本 xxxx_r
  • 使用异步消息模式,避免毫秒以上的轮询等待操作

具体实现可以参考下面的例程

接口消息定义和说明
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-intf/

例1-简单的上下行数据的收发
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex1/

例2-单总线DHT1X温湿度传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex2/

例3-模拟输出的光敏电阻传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex3/

例4-I2C总线AM2320温湿度传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex4/

例5-单总线DS18B20温度传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex5/

例6-I2C总线BH1750光照传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex6/

例7-I2C总线SHT2X温湿度传感器
http://www.tinywsn.net/wordpress/index.php/docs/manual/node/node-wbed/node-wbed-ex7/

更多传感器支持增加中…