Цитата:
Копнул код чуть глубже и похоже, что одной этой таблицей дело не решить.
Часть запросов к BT проц формирует в коде прямой загрузкой в буфер отдельных байтов в hex-виде.
Как пример, это выглядит так:
....
movb rl7, #2 ; STX
movb byte_A282, rl7
movb rl1, #52h ; ; REQ
movb byte_A283, rl1
movb rl2, #28h ; STORE_CLASS_OF_DEVICE
movb byte_A284, rl2
movb rl3, #3
movb byte_A285, rl3
...
И все указывает на то, что без переписания кода (или добавления дополнительного кода) обойтись не получится.
|
Это нормально, не проблема. Здесь 02 статичен для всех команд - начало пакета, 03 тоже - конец пакета. 52 - тип=запрос, 0х28 опкод STORE_CLASS_OF_DEVICE, там еще длина (два байта) и контрольная сумма формироваться должна (алгоритм простой - последний байт суммы байтов (тип+опкода+длина)).
Мне важно знать другое, когда он начинает поcылать эти:
02 52 4e 01 20 a1 20 03 SET_EVENT_FILTER 00
02 52 4e 01 20 a1 02 03 SET_EVENT_FILTER 00
02 52 11 01 20 64 01 03 SPP_TRANSPARENT_MODE 01
02 52 1a 20 20 6c 03 RESTORE_FACTORY_SETTINGS
02 52 33 20 20 85 03 SDAP_DISCONNECT
02 52 23 01 20 76 0a 03 CHANGE_NVS_UART_SPEED
02 52 1c 20 20 6e 03 GAP_LIST_PAIRED_DEVICES
02 52 18 20 20 6a 03 GAP_GET_SECURITY_MODE
02 52 16 20 20 68 03 GAP_GET_FIXED_PIN
02 52 03 20 20 55 03 GAP_READ_LOCAL_NAME
команды. И что он посылает или ждет при включении адаптера.
С этими командами, мне как бы все понятно:
02 52 4e 01 20 a1 02 03 SET_EVENT_FILTER
00 02 52 11 01 20 64 01 03 SPP_TRANSPARENT_MODE 01