下載一個帶AT指令的固件,發AT+QMAC=?查一下返回的MAC地址是不是全F,如果也是,那就是MAC地址沒了,wifi mac可以使用AT+&MAC=xxxxxxxxxxxx,自己設置一個,注意mac地址的第一個字節的最低位不能是1。ble mac可以使用AT+&BTMAC=xxxxxxxxxxxx設置。這樣設置完,看是否功能正常。至於mac地址丟了的原因,還需要看具體做了什麼操作。
下載一個帶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頻率沒關系。
tls_spi_init();這行代碼去掉
內存不夠了。
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並不會導致程序奔潰,檢查傳的參數是否有效,以及其他可能有問題的地方。
TCP本身沒有重連機制吧,需要在應用層實現,當檢測到連接斷開了,需要close socket,然後重新創建socket,去connect。
PSRAM的內存管理沒有統一到系統的內存管理中,在調用了psram的初始化後,使用中需要自己管理psram的內存,psram內存的起始地址是0x30000000。使用方法是一樣的,都可以用memcpy,memset這些接口。
w800做主還是做從?
你的實現邏輯沒有按照I2C的時序來實現。熟悉下I2C的時序,參照demo裡的AT24CXX_ReadOneByte、AT24CXX_WriteOneByte來實現。
W802共有6路硬件串口。沒有模擬方式的參考示例,可以從網上找一些參考代碼來修改。
問 W80X MAC變成 FFFFFFFFFFFF