Modul Bluetooth Audio od Feasycom obsahuje řadu profilů pro funkce přenosu dat a zvuku. Když vývojáři píší a ladí programy, často potřebují nakonfigurovat funkčnost firmwaru modulu. Feasycom proto poskytuje sadu AT příkazů se specifickým formátem, které vývojářům usnadní konfiguraci profilů kdykoli a kdekoli. Tento článek představí, jak používat tyto AT příkazy vývojářům používajícím Feasycom Bluetooth Audio moduly.
Za prvé, formát AT příkazů Feasycom je následující:
AT+Command{=Param1{,Param2{,Param3...}}}
Poznámka:
- Všechny příkazy začínají "AT" a končí " "
-" " představuje návrat vozíku, odpovídající "HEX" jako "0x0D"
-" " představuje posun řádku, odpovídající "HEX" jako "0x0A"
- Pokud příkaz obsahuje parametry, měly by být parametry odděleny "="
- Pokud příkaz obsahuje více parametrů, měly by být parametry odděleny ","
- Pokud má příkaz odpověď, odpověď začíná " "a končí" "
- Modul by měl vždy vrátit výsledek provedení příkazu a vrátit "OK" pro úspěch a ERR for failure (the figure below lists the meanings of all ERR )
Kód chyby | Význam
------------|--------
001 | Nepodařilo se
002 | Neplatný parametr
003 | Neplatný stav
004 | Nesoulad příkazů
005 | Zaneprázdněný
006 | Příkaz není podporován
007 | Profil není zapnutý
008 | Žádná paměť
Ostatní | Rezervováno pro budoucí použití
Následují dva příklady výsledků provádění příkazů AT:
- Přečtěte si název Bluetooth modulu
<< AT+VER
>> +VER=FSC-BT1036-XXXX
>> OK
- Přijměte hovor, když není žádný příchozí hovor
<< AT+HFPANSW
>> ERR003
Dále si uveďme některé běžně používané profily, jak je uvedeno níže:
- SPP (profil sériového portu)
- GATTS (profil obecného atributu LE-periferní role)
- GATTC (generický profil atributu LE-centrální role)
- HFP-HF (profil hands-free)
- HFP-AG (profil Hands-Free-AG)
- A2DP-Sink (pokročilý profil distribuce zvuku)
- A2DP-Source (pokročilý profil distribuce zvuku)
- AVRCP-Controller (profil audio/video dálkového ovladače)
- AVRCP-Target (profil audio/video dálkového ovladače)
- HID-DEVICE (profil lidského rozhraní)
- PBAP (profil přístupu k telefonnímu seznamu)
- iAP2 (pro zařízení iOS)
Nakonec uvádíme odpovídající AT příkazy pro výše uvedené profily v tabulce níže:
Příkaz | AT+PROFIL{=Param}
Parametr | Vyjádřeno jako dekadické bitové pole, každý bit představuje
BIT[0] | SPP (profil sériového portu)
BIT[1] | Server GATT (profil obecných atributů)
BIT[2] | Klient GATT (profil obecného atributu)
BIT[3] | HFP-HF (Hands-Free Profile Handsfree)
BIT[4] | HFP-AG (Hands-Free Profile Audio Gateway)
BIT[5] | A2DP Sink (pokročilý profil distribuce zvuku)
BIT[6] | Zdroj A2DP (profil pokročilé distribuce zvuku)
BIT[7] | AVRCP Controller (profil audio/video dálkového ovladače)
BIT[8] | AVRCP Target (profil audio/video dálkového ovladače)
BIT[9] | HID klávesnice (Human Interface Profile)
BIT[10] | PBAP Server (profil přístupu k telefonnímu seznamu)
BIT[15] | iAP2 (pro zařízení iOS)
Odpověď | +PROFIL=Param
Poznámka | Následující profily nelze aktivovat současně pomocí AT příkazů:
- Server GATT a klient GATT
- HFP Sink a HFP Source
- A2DP Sink a A2DP Source
- AVRCP Controller a AVRCP Target
Použití AT příkazů pro konfiguraci profilu Feasycom Bluetooth Audio Module je implementováno v binární podobě v programu firmwaru. Parametry je třeba nakonfigurovat převodem odpovídajících pozic BIT na desetinná čísla. Zde jsou tři příklady:
1. Přečtěte si aktuální profil
<< AT+PROFIL
>> +PROFIL=1195
2. Povolte pouze zdroj HFP a zdroj A2DP, zakažte ostatní (tj. BIT[4] i BIT[6] jsou binárně 1 a ostatní pozice BIT jsou 0, převedený dekadický součet je 80)
<< AT+PROFIL=80
>> OK
3. Povolte pouze HFP Sink a A2DP Sink, zakažte ostatní (tj. BIT[3] i BIT[5] jsou binárně 1 a ostatní BIT pozice jsou 0, převedený dekadický součet je 40)
<< AT+PROFIL=40
>> OK
Úplné AT příkazy lze získat z obecné programovací příručky příslušného produktu, kterou poskytuje Feasycom. Níže je uvedeno pouze několik odkazů ke stažení obecných programovacích příruček pro modul Bluetooth Audio:
- FSC-BT1036C (Integrovaný Master-Slave, lze přepínat mezi funkcemi audio master a audio slave pomocí příkazů)
- FSC-BT1026C (Podporuje funkci audio slave a funkci TWS)
- FSC-BT1035 (Podporuje funkci audio master)