【杰理AC692X】来电在报号之前播自定义提示音

遇到个需求,需要在来电报号之前先播自定义的提示音,话不多说,直接打印追踪代码:

首先,当对方来电时,会接受到 BT_STATUS_PHONE_INCOME 来电消息,

case BT_STATUS_PHONE_INCOME:
        if (get_curr_channel_state()&HID_CH) {
            //puts("USER_CTRL_HID_DISCONNECT\n");
            user_send_cmd_prepare(USER_CTRL_HID_DISCONNECT, 0, NULL);
        }
        //tone_play(TONE_BT_PARING, 0);
        //phone_ring_play_start();
        user_val->phone_ring_flag = 1;
#if BT_PHONE_NUMBER
        phone_num_play_start();
#else
        phone_ring_play_start();
#endif
	... ...
	break;

然后进入 phone_num_play_start() 函数,开启定时发送报号消息 MSG_BT_TONE_PHONE_NUM ,同时初始化相关参数:

void phone_num_play_start()
{
    user_val->phone_num_flag = 0;
    user_val->phone_num_idx = 0;
    sys_timer_register(&user_val->bt_prompt_timeout, 500, phone_num_play_timer, 1);
}

打印发现播号是通过 user_val->phone_num_idx 定时计数实现,那就当 user_val->phone_num_idx 为 ‘0’ 的时候先播自定义的提示音,然后再用标志位和计数位使之继续播报号码,这里的标志位和计数要在来电消息或者挂断消息清零,简单操作就实现了。

下面是我的做法:
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
AC692X开发用户手册是一本面向开发者的指南,旨在帮助他们更好地了解和使用AC692X芯片进行应用开发。 该手册首先会介绍AC692X芯片的基本特点和硬件结构,包括处器核心、内存、外设等,并详细说明了芯片的引脚分布和功能。开发者可以通过了解芯片的硬件构成,更有效地进行硬件设计和布局。 接下来,手册会详细介绍AC692X芯片的软件开发环境和工具链,包括支持的开发语言、编译器、调试工具等。这些工具能够帮助开发者进行固件开发、编译和调试,提高开发效率。 在软件开发方面,手册会介绍AC692X芯片的软件开发框架和API接口,开发者可以通过这些接口进行功能开发和集成。手册还会提供一些示例代码和项目实践,以帮助开发者更好地解和应用这些接口。 此外,手册还包含了AC692X芯片的性能优化和电源管相关的内容,开发者可以通过优化代码和合电源,提高设备的性能和续航能力。 最后,手册还会介绍AC692X芯片的测试和调试方法,包括如何利用debug接口进行硬件和软件的调试,帮助开发者定位和解决问题。 总之,AC692X开发用户手册通过详细的介绍和实例,为开发者提供了一个全面的指南,帮助他们更好地学习和使用AC692X芯片进行应用开发。无论是初学者还是有一定经验的开发者,都能从中获得有益的知识和指导。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值