A9101 一鍵呼叫 語音通話 功能
本篇介紹使用A9101 1鍵呼叫對方進入語音模式,當雙方都不說話時自動斷開語音模式,恢復到數據模式等待下次再度進入語音模式的命令,或是其中1方傳送結束語音命令時恢復到數據模式
此應用多半是運用在室內/屋內 門鈴對講機或是辦公室通話
類似產品:
代碼:
<
A9101_A40_ Full Duplex DR=512Kbps_SR8K8bit_2CH & DR102K RF - 13 - 20231220.zip
>
代碼說明:
1. 已完成Slave 端FIFO mode WOR 低功耗 功能
2. 已完成Master 端P3_7 拉LOW 话筒挂上 主动通知Slave 退出Audio
3. 已完成Master & Slave DAC 都要不出声 才会双方都退出Audio
4 已完成Slave 端P3_7 拉LOW 话筒挂上 主动通知Master 退出Audio
P3_2=0==>Master
P3_2=1==>Slave
FIFOModeFlag=1 ==> Data Link mode
FIFOModeFlag=0 ==> Audio Link mode
p.s.当Master端拿起话筒时(P3_7=1),会在每包TX的音频封包后面加入0x01的自定义data通知Slave端,当话筒挂上时(P3_7=0),会在TX的音频封包后面加入0x00的自定义data通知Slave端
p.s.Slave会在每包TX的音频封包后面加入0x03或0x00的自定义data通知Master端DAC是否过小,发0x02则是slave的P3_7为Low,通知Master要关闭音频,Master会在发送0x00回复Slave也需要退出Audio回到DR102 Link
1. 先将P3_2接GND选择使用Master, 开机后Master会先进DR102K_Link( ) ,但会先使用P3_7卡住不进Tx mode
2. 将P3_2接High选择使用Slave,开机后Slave会先进DR102K_Link( ),会执行WOR功能
WOR的Sleep时间 & Action时间可以参考一下Reg微调
========================================================================
WOR_SL[7:0]为RCOSC1_REG寄存器的[7:0]
WOR_SL[9:8]为RCOSC2_REG寄存器的[7:6]
WOR_AC[5:0]为RCOSC2_REG寄存器的[5:0]
WOR_AC[8:6]为TCODE_REG寄存器的[7:5]
========================================================================
3.将Master的P3_7 拉LOW再拉High后,执行打Tx动作,唤醒Slave端的WOR TX打完200次封包后,就会自动离开FIFO mode,进入Audio mode
退出FIFO mode
4. Slave收到Master端传来的封包且解读无误后,退出Data Link,进入Audio mode
5.Audio mode ,Master会再ADC采样后,判断DAC音量是否过小,若DAC 长时间音量过小(可以调Volsec数值来延长判断的时间),会先将MasterLowVolFlag=1
6.Slave端会在释放完DAC Buffer后去判断DAC音量是否过小,若DAC 长时间音量过小(可以调Volsec数值来延长判断的时间),会将SlaveLowVolFlag=1
7.Master 或Slave会同时去判断自己的DAC &对方的DAC都没有声音时,也就是MasterLowVolFlag & SlaveLowVolFlag都要为”1”时,才会离开Audio回到Data Link
另外当P3_7拉LOW时(挂话筒时),也会通知对方退出Audio回到Data Link
line304:0x00可以自行定义成其他数值ex:0x55(表示通知Slave退出Audio)
line309:0x01可以自行定义成其他数值ex:0xAA(表示通知Slave继续保持在Audio)
Master会在进入RX后判断Slave端传来的第97 Byte自定义数据,也就是Slave的DAC是否有过小的Flag
8. Slave端可以在line610 & line614自行定义SlaveLowVolFlag=”1 “or “0”要传送到Master端的CMD
9.Slave端收到Master端发来的0x00 CMD(表示Master端话筒已挂上),需离开Audio回到Data Link
10. Slave按下p3_7=LOW时(表示挂上话筒), 会在音频的第97 Byte自定义数据传送0x02通知Master退出Audio Mode回到DR102 Link,并且当Master收到0x02 CMD后会在发送0x00给Slave告知需跳出Audio mode回到DR102 Link WOR等待下次TX触发
Master端收到Slave端发来的0x02后会将AudioFlag=0
11.Master端回传0x00 CMD通知Slave也退出Audio 模式回到DR102 Link (WOR)功能,等待下次Master TX FIFO的触发