发新帖我要提问
12
返回列表
打印

OpenWSN无线协议栈移植与CPS系统搭建

[复制链接]
楼主: t60yz
手机看帖
扫描二维码
随时随地手机跟帖
21
t60yz|  楼主 | 2022-12-31 13:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
移植结果验证

这里我们借助openwsn源码中提供的单元测试代码验证移植结果:
//main.c

使用特权

评论回复
22
t60yz|  楼主 | 2022-12-31 13:42 | 只看该作者
#include <stdint.h>
#include <stdio.h>

#include "board_init.h"
#include "leds.h"
/*
* Definitions.
*/

/*
* Variables.
*/

/*
* Declerations.
*/
void some_delay(void);
/*
* Functions.
*/
int main(void)
{
        uint8_t i;
    BOARD_Init();
        leds_init();
        
    printf("\r\ngpio_basic example.\r\n");

    while (1)
    {
//        if ( GPIO_ReadInDataBit(BOARD_KEY0_GPIO_PORT, BOARD_KEY0_GPIO_PIN) ) /* key is no pressed. */
//        {
//            GPIO_WriteBit(BOARD_LED0_GPIO_PORT, BOARD_LED0_GPIO_PIN, 1u); /* led off. */
//            GPIO_WriteBit(BOARD_LED1_GPIO_PORT, BOARD_LED1_GPIO_PIN, 0u); /* led on. */
//        }
//        else /* key is pressed. */
//        {
//            GPIO_WriteBit(BOARD_LED0_GPIO_PORT, BOARD_LED0_GPIO_PIN, 0u); /* led on. */
//            GPIO_WriteBit(BOARD_LED1_GPIO_PORT, BOARD_LED1_GPIO_PIN, 1u); /* led off. */
//        }
     leds_error_on();          some_delay();
   leds_error_off();         some_delay();
   leds_error_toggle();      some_delay();
   leds_error_blink();       some_delay();
   
   // radio LED functions
   leds_radio_on();          some_delay();
   leds_radio_off();         some_delay();
   leds_radio_toggle();      some_delay();
   
   // sync LED functions
   leds_sync_on();           some_delay();
   leds_sync_off();          some_delay();
   leds_sync_toggle();       some_delay();
   
   // debug LED functions
   leds_debug_on();          some_delay();
   leds_debug_off();         some_delay();
   leds_debug_toggle();      some_delay();
   
   // all LED functions
   leds_all_off();           some_delay();
   leds_all_on();            some_delay();
   leds_all_off();           some_delay();
   leds_all_toggle();        some_delay();
   
   // LED increment function
   leds_all_off();           some_delay();
   for (i=0;i<9;i++) {
      leds_increment();      some_delay();
   }
   
   // LED circular shift function
   leds_all_off();           some_delay();
   leds_error_on();          some_delay();
   for (i=0;i<9;i++) {
      leds_circular_shift(); some_delay();
   }
   
    }
}

void some_delay(void) {
   volatile uint16_t delay;
   for (delay=0xffff;delay>0;delay--);
}

使用特权

评论回复
23
t60yz|  楼主 | 2022-12-31 13:43 | 只看该作者

使用特权

评论回复
24
t60yz|  楼主 | 2022-12-31 13:44 | 只看该作者

使用特权

评论回复
25
t60yz|  楼主 | 2022-12-31 13:45 | 只看该作者
在之前的文章中介绍了将ucos-ii移植到GD32F310开发板上的操作指导,为了构建将传感、驱动和计算组件紧密集成到分布式反馈回路的网络物理系统(CPS),我们将尝试分别将运行OS的GD32F310和OpenWSN的GD427V借助于BLOT协议实现互联,组件完整的CPS系统。

使用特权

评论回复
26
t60yz|  楼主 | 2022-12-31 13:45 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则