72 Star 480 Fork 140

hihopeorg / HarmonyOS-IoT-Application-Development

 / 详情

WiFi IoT开发板运行代码无限重启

待办的
缺陷
创建于  
2021-06-11 11:09

刚拿到一块HiSpark WiFi IoT的开发板,想连上一个没有加密过的AP,SDK版本是HiHope_WiFi-IoT_Hi3861SPC025那版的。
app_main函数的代码如下:

// ******************* customized code area **************************************

    // gpio_init();
    // app_led_blink();

    // ret = hi_wifi_init(APP_INIT_VAP_NUM, APP_INIT_USR_NUM);
    // if (ret != HISI_OK) {
    //     printf("wifi init failed!\n");
    // } else {
    //     printf("wifi init success!\n");
    // }
    // app_demo_task_release_mem(); /* Task used to release the system stack memory. */
    wifi_delay();
    printf("start sta!!!\r\n");
    hi_wifi_start_sta();
    wifi_delay();
    wifi_delay();

    hi_u32 task_id = 0;
    hi_task_attr attr = {0};
    attr.stack_size = 0x1000;
    attr.task_prio = 11;
    attr.task_name = (hi_char*)"wifi_ping_task";
    ret = hi_task_create(&task_id, &attr, ping_task, HI_NULL);
    if (ret != HI_ERR_SUCCESS) {
        printf("Falied to create app_demo_ping task:0x%x\n", ret);
    }

上面的代码中hi_wifi_start_sta()这个函数是wifi_sta.c里面的一个函数。这里的线程创建代码用的是本身的demo示例改的,我只是把stack_size加大了点, task_prio降低了些,其它的完全都没有动的。

ping_task这个函数写得比较简单,是这样的:

hi_u32 wifi_ping(hi_void)
{
    hi_char *ip = "192.168.1.1";
    if (os_shell_ping(1, ip) != LOS_OK) {
        return HI_ERR_FAILURE;
    }
    printf("ping ok!!\r\n");
    return HI_ERR_SUCCESS;
}

static hi_void *ping_task(hi_void *param)
{
    /* Releases the app_main stack memory. */
    hi_unref_param(param);
    while (1)
    {
        wifi_ping();
        hi_udelay(1000000);
    }
    return HI_NULL;
}

搞不明白这里到底是哪有问题。

评论 (2)

caichao 创建了缺陷
展开全部操作日志

去掉后面的线程就可以跑,但是不加线程怎么实现多任务了又?

还是不行,加了下面这一行代码依然会重启:

    while(1){
        wifi_ping();
        wifi_delay();
    }

登录 后才可以发表评论

状态
负责人
项目
里程碑
Pull Requests
关联的 Pull Requests 被合并后可能会关闭此 issue
分支
开始日期   -   截止日期
-
置顶选项
优先级
预计工期 (小时)
参与者(1)
C
1
https://gitee.com/hihopeorg/HarmonyOS-IoT-Application-Development.git
git@gitee.com:hihopeorg/HarmonyOS-IoT-Application-Development.git
hihopeorg
HarmonyOS-IoT-Application-Development
HarmonyOS-IoT-Application-Development

搜索帮助