本帖最后由 Lana636 于 2025-10-28 17:31 编辑
极海GW3323芯片,不仅有蓝牙,USB通信,还可通过uart外接wifi模块,实现wifi 通信;
GW3323的DAC支持播放mp3,wav等音频文件;
GW3323的内置8MBflash,不仅能存放打印字库,还能放音频文件。
GW3323在蓝牙功能上使用:
1、初始化
bt_init(); bsp_bt_init();
2、接收函数
ble:gatt_callback_app();
spp:spp_rx_callback();
3、发送函数
ble:ble_send_packet();
spp:bt_spp_tx();
4、流控函数
spp_set_rx_new_credit(1);
GW3323在USB功能上使用:
1、初始化
打开CLKCON1、CLKGAT0、CLKGAT1相关寄存器;然后在usr_tmr5ms_thread()
里会调用usb_detect();然后检测到不同状态会进入不同的回调函数。
例如监测到有USB插入动作,就会进入 usb_insert_callback 回调函数。
2、接收函数
bulk_rx_handler();
3、发送函数
usb_bulk_send();
4、流控函数
ude_rx_ack();
GW3323在wav音频播放/字库功能上使用:
字库文件和音频文件要放在同一目录中,同一加载到芯片中,现在暂不支持分区加载。
res_user.xm执行res_user文件是按照字母大小顺序加载的,所以建议音频用相同的头命名,例如A_1hello,A_2bye;
字库用相同的头命名,例如C_1char,C_2Chinese.
为了让新音频包或者新字库包 不覆盖后面的内容,一般会在音频和字库中插入全0的数据,如B_allzero;文件大小有客户自己根据应用设定。
1、初始化
把音频等文件放在对应地址,初始化调用
dac_init();
dacr_output(0);//让DAC_L引脚输出低电平,方便接音频功放芯片;
编译时会自动在res_userbin.h文件中生成每条音频的起始地址和长度。
注意此地址是虚拟地址,非物理地址,从app.xm的USERBIN_START_ADDR开始。
2、调用函数
wav_res_play(RES_BUF_WAV_A_WAV, RES_LEN_WAV_A_WAV);//播放音频数据
os_spiflash_read(ziku_buff,RES_BUF_WAV_ZIKU_BIN,ziku_len);//调用字库数据
3、升级函数
os_spiflash_program1(ziku_newbuff,WAV_START_ADDR,WAV_SUM_LEN);//升级音频文件
os_spiflash_program1(ziku_newbuff,RES_BUF_WAV_ZIKU_BIN,ZIKU_SUM_LEN);//升级字库文件
以下是蓝牙打印机在手机上的图标和蓝牙协议方面的数据
|
|