
杰理AC690X学习记录
杰理690N系列的芯片开发记录。
Jim天河
蓝牙BLE数传,蓝牙手表,蓝牙MESH,蓝牙音响耳机,单片机软件.
展开
-
杰理AC690X系列---入门(1)
本人毕业后开始接触杰理蓝牙音频方案的软件开发。从最开始拿到SDK到入门总共花了1个月,由于那个时候刚毕业,各方面知识都欠缺,所以入门时间比较久。到今天总共做了不少于100个案子了,也有一点经验了,所以在这分享一下,方便后面做杰理方案软件开发的同行参考。安装开发环境和下载芯片这些都比较基础,杰理也有给代理商相关教程,这个就不细说了。首先拿到SDK和开发板的时候,我想到的第一件事就是让...原创 2018-03-10 10:56:17 · 18125 阅读 · 9 评论 -
杰理AC690X系列---通话效果调试(13)
杰理目前的690X系列的SDK通话效果只能通过软件里面的aec_api.c来调。这个文件里面有有一个const int eq_tab[65]这个EQ列表是远端的声音。还有一个agc_init()函数这个函数里面包含了杰理690X系列的所有通话效果调试,包括消除回音。先看aec_interface.agc_params(64 , 512, 64, 20);第一个参数是近端MIC的声音大小,一般不调。...原创 2018-04-23 20:08:27 · 2724 阅读 · 2 评论 -
杰理AC690X系列---小总结(14)
由于公司业务调整,多出了一条低功耗蓝牙的业务线,正好本人也被调去做低功耗蓝牙了,所以接下来就不会频繁更新690X系列的教程的,但是说实话,690X系列的软件开发并不难,找家好点的代理,学习一段时间基本也就没什么问题了。技术交流或者其他交流请加微信: life5270 ...原创 2018-05-14 08:52:34 · 3943 阅读 · 10 评论 -
杰理AC690X系列---开机默认进入上一次关机前的模式(15)
一般情况下,我们要记忆关机前的数据,得借助储存芯片来保存数据,如IIC存储器件,Spi Flash器件。但是杰理有VM区可以直接用,数据是掉电保存的。首先是申请VM区以上是申请VM区的过程。然后定义一个变量power_on_work_mode每次进入某个模式的时候都写一次VM然后在main函数开机进入模式选择那里做判断即可:...原创 2018-08-28 15:25:20 · 2005 阅读 · 6 评论 -
杰理AC690X系列---U盘和无线升级程序Reset的问题(16)
杰理芯片使用内部软开关机的方案是主控常供电的,也就是说关机以后芯片还是供电的,只不过进入了超低功耗状态。690X系列进入内部软关机状态功耗大概是4uA,692X系列接近0.我们在使用无线升级的时候,升级之前主控会软复位一次,这个时候会清除所有寄存器状态。如果此时芯片是常供电的,一般不会有问题,几秒后显示升级完成。但是如果你用的是IO口输出高电平来维持芯片供电,那就会有问题了。软...原创 2018-09-17 15:42:34 · 2669 阅读 · 0 评论 -
杰理AC690X---定时器中断时间配置(17)
废话不多说,直奔主题。请看代码:定时器中断函数:void timer1_interrupt() ///125uS中断一次{ ///os_time_dly(1000);//延时函数 //timer_ctrl(timer1_hl,TIMER_CMD_SET_CNT,0,NULL); time1_test_flag++; if(time1_test_flag=...原创 2018-10-09 21:57:34 · 2588 阅读 · 5 评论 -
杰理AC690X---修改配对名和提示音(18)
修改配对名使用前先关闭杀毒软件和安全卫士,免得误删关键文件。 双击这个软件打开:红框右边是配对名(支持中文)右边修改完配对名后点击“SaveFile”弹出来的页面点击保存和替换: 然后配对名就修改成功了。这个时候双击 “download.bat”会编译生成新的 jl_690x.bfu 升级文件:把这个bfu文件放到U盘里面,插进设备就...原创 2018-12-23 14:43:24 · 16808 阅读 · 7 评论 -
杰理AC690X---双绑引脚高阻态处理
对于AC69系列的IC,如果有些是双绑的复用引脚,用了其中一脚,另一脚要设置为高阻态。例如AC6905A,需要把双绑的其他没用到的引脚设置为高阻态。不然会影响其他绑一块的 IO 功能。类似 PB13 和 PA3 绑定一块,PB13 位 MIC,PA3 默认开下拉,会导致通话没声音。void AC6905A_NOUSER_IO(void){JL_PORTA->DIR |= (...原创 2019-02-27 13:54:45 · 1510 阅读 · 0 评论 -
杰理AC690X---使用bfu文件升级样机无法更新配对名的问题
使用bfu文件通过测试盒或者U盘升级样机的时候,发现配对名没有升级成功,怎么办?那是因为配对名放在了Flash的蓝牙配置区,isd_tools.cfg 的配置中默认设置是升级时不更新蓝牙配置区的。所以只要做以下修改:把BTIF_OPT改为0,即可升级配对名和MAC地址。如果把VMIF_OPT也设置成0的话,那么用户VM区中保存的信息也会擦除,如:FM频道频点信息,音量记忆等。...原创 2019-02-27 14:02:40 · 2178 阅读 · 8 评论 -
杰理AC690X系列---用双向二极管接AD按键的问题(12)
突然想起一件大事儿去年做过几个案子,开机的方法是在AD按键上接一个双向二极管,按键按下时芯片直接供电,同时把芯片的AD按键引脚拉低当按键按下超过3秒(或其他时间),就让一个IO口输出高电平给三极管的基极,维持电压。这样就成功开机了。关机的时候直接AD按键采集到0V关机。一切看起来似乎都没什么毛病,然而要命的是二极管都会有一个压降,这个压降一般是在0.3V以内,运气好可能买到的二极管...原创 2018-04-23 19:57:46 · 1715 阅读 · 1 评论 -
杰理AC690X系列---TF卡的DATE和CLK引脚复用AD采集(6)
杰理690X系列的一些封装可用的引脚极少,例如6905系列前段时间见过一个K歌宝,用6905B做主控,支持U盘,TF卡,AUX,还需要一个MUTE引脚,一个耳机检测引脚一个按键AD引脚,两个调节MIC和混响音量的AD引脚,这样算下来6905B的引脚根本不够用那么这个样机是怎么实现的?一拆便知。原来,MIC和混响的两路AD采集直接复用到TF卡的DATE和CLK引脚了。那么这种做法不会导致T卡用不了或...原创 2018-03-28 14:58:58 · 1946 阅读 · 0 评论 -
杰理AC690X系列---蓝牙指示灯呼吸效果(11)
昨天接到一个客户的更改功能需求,要求蓝牙未连接时红蓝灯互闪,连接成功后红灯灭,蓝灯呼吸(渐亮到渐灭,再由渐灭到渐亮),低电压时红灯呼吸,蓝灯保持原状态。这个比较有意思,由于之前没做过,就花了一个小时整理了一下代码,最终效果也可以。在led.c中加入以下子函数:#if BT_LED_BREATHvoid led_pwm_init(u16 led_pwm_nct){ JL_I...原创 2018-04-10 09:50:53 · 3556 阅读 · 6 评论 -
杰理AC690X系列---通话功能和电量显示(2)
杰理690X系列的蓝牙芯片是专门拿来做蓝牙音响和蓝牙耳机的。当手机连接样板以后,会在手机的蓝牙连接符号处显示电量,电量显示走的是HFP通话协议。但是有些客户要求不需要带通话(免提功能),怎么办呢?在bt_configs_user.c文件里面有如下定义第三个HFP的宏定义置0即可关闭通话功能。这就可以了。真的可以了吗?下载进板子,手机连接上以后你会发现原来的电量显示图标消失了...原创 2018-03-10 11:18:41 · 4751 阅读 · 5 评论 -
杰理AC690X系列---关于电机PWM和定时器映射PWM(5)
杰理690X系列的芯片目前只有4路定时器,分别是 Timer0,Timer1,Timer2,Timer3其中Timer0被系统时钟占用,无法用于PWM输出。本人前些日子做了一个项目,要求加入手机APP功能,并且还需要支持红外遥控,RGB总共需要三路PWM,遥控器占用Timer1那么问题来了,遥控器和系统时钟已经占用了两个定时器,目前只剩下Timer2和Timer3.更要命的是Timer2和Time...原创 2018-03-23 17:09:24 · 2848 阅读 · 16 评论 -
杰理AC690X系列---取消设备检测功能(3)
我们都知道杰理690X系列的公版SDK在进入音乐模式或者AUX模式时,默认没设备时自动跳到下一个任务。本人去年做了一个国外客户的项目,对方的各种奇葩需求把我折腾了整整三个月----8PIN显示屏,要做滚动效果。FM模式要按字节存台(杰理默认按位存台)。U盘和TF卡要独立成两种模式,歌曲不能互串。要做两个AUX模式等等。这其中光是U盘和TF卡互相独立就把我折腾得仅剩半条命。今天简单地说说如何...原创 2018-03-14 08:46:54 · 2559 阅读 · 5 评论 -
杰理AC690X系列---FM芯片信号进主控切换模式没声音问题(4)
前几天做一个案子,用QN8035这个FM芯片由于之前做的都是FM芯片的信号直接进功放的,所以没遇到什么问题但是前几天的案子是FM芯片的信号进杰理的主控芯片的遇到了在FM模式下切换到其他模式会没声音的问题用了很多方法都不管用,最后想想觉得LINEIN信号也是进主控的,原理跟FM芯片信号进主控差不多于是去看看LINEIN任务退出时是怎么处理的果然发现了LINEIN模式退出线程时...原创 2018-03-20 10:29:17 · 2042 阅读 · 0 评论 -
杰理AC690X系列---DACR做外音输入通道声音小的问题(7)
我们在做项目时经常会用到DAC有声道做外音输入,DAC左声道做输出的情况。有些客户测试的比较细,会发现外音输入时声音比蓝牙或其他模式的声音小。这种情况本人遇到很多遍,目前解决方法如下:在dac.c文件下写一个子函数void dac_differnt_output(s16 *buf){u8 i;s16 *s16_ptr;s32 temp_dac_buf;s16_ptr = buf;for...原创 2018-03-30 11:11:48 · 1881 阅读 · 0 评论 -
杰理AC690X系列---在线调EQ(9)
对于一些产品定位中高端的客户,往往对音质要求比较高,有些客户直接选用外挂2313类的芯片芯片,但是这个会增加成本。所以很多时候我们要配合客户调试EQ,在线调EQ在这个时候就能派上用场了。首先我们打开SDK,打开SDK_CFG.H文件,找到EQ_UART_BDG这个宏定义:这个宏定义置1然后我们全局搜索这个宏定义,发现在UART.C中有这个宏的实体这个我们可以选择用哪个引脚来做在线调试的接口,一般我...原创 2018-04-08 10:58:08 · 4219 阅读 · 7 评论 -
杰理AC690X系列---EQ工具的使用(8)
杰理SDK默认情况下的EQ曲线是直线,即所有频点都没有增益,都是0db.有些客户对音质要求比较高,这时候我们就要用到杰理提供的EQ工具了。需要说明的是,杰理不同版本的SDK和EQ工具不能互相兼容。本人用的是2012_P4的SDK,对应的EQ工具是EQ-3.0.5.exe打开EQ工具如下:硬件EQ和软件EQ也是有差别的,硬件EQ有10个频点,软件EQ只有8个而且软件EQ是占用系统资源的,个人理解是:...原创 2018-04-02 10:40:04 · 7941 阅读 · 1 评论 -
杰理AC690X系列---RGB彩灯随音乐跳动(10)
最近做了不少跟RGB彩灯有关的项目,印象比较深刻的是火焰灯效果,还有一个是彩灯随音乐跳动。关于彩灯随音乐跳动其实分两种,一种是随频率跳动,一种是随输出幅值跳动。随频率跳动就是说音频输出的范围是50HZ---16KHZ每个灯对应一个频率,当前频率输出越大,对应的那组灯跳得的越高。可以把竖排的方格想象成LED灯。这种跳法目前杰理这套SDK貌似做不了?因为涉及到获取DAC输出的具体频点幅值,本人未找到相...原创 2018-04-09 17:11:57 · 5856 阅读 · 15 评论 -
杰理AC690X---引脚使用冲突处理
IO口冲突处理高阻态处理有些芯片一个引脚中绑定了两个IO口,需要做以下处理:假设要使用三号管脚的PC3来做输出输入,则需要把USBDM引脚置高阻态;假设要把USBDM拿来做输出输入,则需要把PC3置高阻态。其他双绑引脚也是一样的,如第五号管脚,假设要用5号管脚来做MIC输入,则需要把PB13和PA3都置高阻态。置高阻态的语句如下:普通GPIOJL_PORTB-&g...原创 2019-04-09 10:32:36 · 3081 阅读 · 8 评论