abcd
abcd - 認證專家
我只是個路過的老年人~

注冊於 2年前

回答
73
文章
6
關注者
1

初始化IO後直接調用tls_spifls_write和tls_spifls_read來讀寫。

發送完成回調是調用tls_uart_tx_sent_callback_register來注冊,只有在發送完tls_uart_write設置的長度才會調用發送完成回調,不會四字節就觸發,除非是只發送了四個字節。
timer的定時單位只能是ms和us,沒有ns。

有賣那種USB測電流的工具的,或者最簡單的用萬用表串到供電線路上。

跟芯片沒關系。需要自己實現mqtt連接阿裡雲的功能。

下載一個帶AT指令的固件,發AT+QMAC=?查一下返回的MAC地址是不是全F,如果也是,那就是MAC地址沒了,wifi mac可以使用AT+&MAC=xxxxxxxxxxxx,自己設置一個,注意mac地址的第一個字節的最低位不能是1。ble mac可以使用AT+&BTMAC=xxxxxxxxxxxx設置。這樣設置完,看是否功能正常。至於mac地址丟了的原因,還需要看具體做了什麼操作。

ble初始化是在這裡,在src/app/bleapp下的wm_bt_app.c裡,參照這個接口寫。

int demo_bt_enable()
{
    int rc;
    uint8_t uart_no = 0xFF;
    tls_appl_trace_level = TLS_BT_LOG_NONE;

    if(bt_adapter_state == WM_BT_STATE_ON) {
        TLS_BT_APPL_TRACE_VERBOSE("bt system enable already");
        return TLS_BT_STATUS_SUCCESS;
    }

    TLS_BT_APPL_TRACE_DEBUG("bt system running, uart_no=%d, log_level=%d\r\n", uart_no,
                            tls_appl_trace_level);
    rc = tls_bt_init(uart_no);

    if((rc != 0) && (rc != BLE_HS_EALREADY)) {
        TLS_BT_APPL_TRACE_ERROR("demo_bt_enable, ret:%s,%d\r\n", tls_bt_rc_2_str(rc), rc);
    }

    return rc;
}

具體是什麼項過不了,詳細描述下,我理解的過認證跟CPU頻率沒關系。

void tls_wifi_get_current_bss(struct tls_curr_bss_t* bss);參數bss的返回結果中有rssi的值。

如果地址不改動的情況下,只有crc位會有可能變動,其他的不會改變的。

參考wm_connect_net_demo.c、wm_http_demo.c、wm_fatfs_demo.c

沒明白問題要表達什麼意思。這只是一個打印格式的不同,%x和%c。

在其他函數中調用mqtt_publish並不會導致程序奔潰,檢查傳的參數是否有效,以及其他可能有問題的地方。

發布
問題