(原创)AP6212蓝牙模块在am335x控制板上的应用

主控板wifi模块调通后接着调试蓝牙,经过两周的摸索,终于把蓝牙应用基本建立起来,下面记录下大概流程。

1、硬件管脚设置

static void uart4_init(int evm_id, int profile)
{
/* Configure Uart4*/
printk(KERN_ERR"====== BT(AP6212) init ========\n");
setup_pin_mux(uart4_pin_mux);

/* Init Broadcom bluetooth, added by MXH */
gpio_request_one(GPIO_TO_PIN(1, 26), GPIOF_OUT_INIT_LOW, "BT_RST");
gpio_export(GPIO_TO_PIN(1, 26), 0);
/* reset bt chip here */
gpio_set_value(GPIO_TO_PIN(1, 26), 0);
mdelay(100);
gpio_set_value(GPIO_TO_PIN(1, 26), 1);
/* wake BT Module assign */
gpio_request_one(GPIO_TO_PIN(1, 24), GPIOF_OUT_INIT_HIGH, "BT_WAKE");
gpio_export(GPIO_TO_PIN(1, 24), 0);
gpio_set_value(GPIO_TO_PIN(1, 24), 1);
mdelay(50);
/* assign wake respone signal */
gpio_request_one(GPIO_TO_PIN(1, 25), GPIOF_IN, "BT_HOST_WAKE");

/* temp for rts cts */
gpio_request_one(GPIO_TO_PIN(3, 0), GPIOF_OUT_INIT_LOW, "CTS");
gpio_export(GPIO_TO_PIN(3, 0), 0);
gpio_set_value(GPIO_TO_PIN(3, 0), 0);

gpio_request_one(GPIO_TO_PIN(0, 29), GPIOF_OUT_INIT_LOW, "RTS");
gpio_export(GPIO_TO_PIN(0, 29), 0);
gpio_set_value(GPIO_TO_PIN(0, 29), 0);

return;
}

2、移植蓝牙协议栈4.95

其中openobex1.5 在config.h定义 HAVE_BLUETOOTH后,无法成功编译,所有仍然采用openobex1.3版本。

协议栈移植参考《交叉编译 bluez-4.95 步骤及使用方法》http://blog.csdn.net/u011408697/article/details/44459239,

但glib库改用2.24.2,并增加了openobex1.3的移植。

3、调试过程见本人的《蓝牙调式记录-20170623.txt》

时间: 2024-10-27 04:46:53

(原创)AP6212蓝牙模块在am335x控制板上的应用的相关文章

硬件传输模块系列之蓝牙模块无线上传(一)

蓝牙模块HC-06 知识点一:蓝牙状态 led指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表蓝牙已连接并打开串口(端口) 知识点二:相关参数 输入电压3.6v-6V,未配对时电流30mA,配对成功后为10mA. 未建立蓝牙连接时,支持通过(波特率)设置AT指令来修改波特率名称以及配对密码,掉电保护,蓝牙连接成功后自动为透传模式. 主从模式: 主机:用来搜索从设备,不被其它设备搜索. 从机:用来被搜的设备,不主动搜其他设备. HC-06蓝牙模块设AT指令 HC-06                

Android4.42-Settings源代码分析之蓝牙模块Bluetooth总体实现(总)

本文为博主原创,转载请注明出处:http://blog.csdn.net/zrf1335348191/article/details/50995466 蓝牙相关代码已在另两篇文章中介绍,有须要的能够查看 Android4.42-Settings源代码分析之蓝牙模块Bluetooth(上) Android4.42-Setting源代码分析之蓝牙模块Bluetooth(下) ONE,SWITCH蓝牙开关 switch从创建到动作状态监听步骤例如以下 创建switch实例 Switch actionB

51单片机蓝牙模块

51单片机的蓝牙模块,是在蓝牙通讯的基础上,进行蓝牙51模块与外部蓝牙发射接收设备之间,相互收发数据.并且其引脚为VCC,GND,TXD,RXD,可以通过串口通信与外部上位机或单片机通信. 代码如下(注意蓝牙模块是5V供电) #include<reg52.h> void init();void delay(unsigned int ms); unsigned char input;void display(unsigned char num_decimal);unsigned char cod

android蓝牙模块

新建一个工程"blt". -----------------------MainActivity.java package com.example.blt; import java.io.IOException; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Iterator

Arduino蓝牙模块实现通信

蓝牙参数特点 1.蓝牙核心模块使用HC-06从模块,引出接口包括VCC,GND,TXD,RXD,预留LED状态输出脚,单片机可通过该脚状态判断蓝牙是否已经连接 2.led指示蓝牙连接状态,闪烁表示没有蓝牙连接,常亮表示蓝牙已连接并打开了端口 3.输入电压3.6~6V,未配对时电流约30mA,配对后约10mA,输入电压禁止超过7V! 4.可以直接连接各种单片机(51,AVR,PIC,ARM,MSP430等),5V单片机也可直接连接 5.在未建立蓝牙连接时支持通过AT指令设置波特率.名称.配对密码,

【Espruino】NO.13 蓝牙模块

http://blog.csdn.net/qwert1213131/article/details/31830809 本文属于个人理解,能力有限,纰漏在所难免,还望指正! [小鱼有点电] [Espruino中文社区] 这节主要是对蓝牙模块进行操作演示,开发板已经预留了市面上常见的蓝牙模块的位置,可以支持ble4.0和bt2.0的模块,HM-10.HC-05.HC-06等,本次使用的是FBT-06,主从一体,蓝牙协议栈为BT2.0,使用串口进行通讯.AT专用波特率为9600bps,开机PIO11为

Android4.42-Setting源码分析之蓝牙模块Bluetooth(下)

接着上一篇Android4.42-Settings源码分析之蓝牙模块Bluetooth(上) 继续蓝牙模块源码的研究 THREE,蓝牙模块功能实现 switch的分析以及本机蓝牙重命名和可见性的分析见上一篇,接下来进行第三章第三部分的介绍:关于蓝牙远程设备列表的加载.如果没有看过,建议看看上一篇关第一章蓝牙的布局,有助于理解 3>,设备列表的加载 因为这部分代码很多,所以在介绍时先说一下思路,程序首先通过底层的BluetoothAdapter的getBondedDevices()方法获取到已配对

物联网蓝牙模块:DA14586蓝牙5模块很快到来

Dialog半导体的SmartBond系列的下一代产品---DA14586已经发布.该全新的系统级芯片(SoC)是公司首款支持最新蓝牙5.0规范的独立器件,为先进应用提供最低的功耗和无可比拟的功能. DA14586由SmartBond DA14580演化而来,后者已被证明是过去三年中尺寸最小.集成度最高和功耗最低的量产蓝牙SoC.DA14586在继续保持了上述基准指标的领先旗舰地位的同时,还提供了更大的灵活性,能够以最小占位面积和最低功率创建更先进的应用.除此之外,DA14586还包括带有降压和

基于hc-05蓝牙模块控制的步进电机指定旋转角度

一.蓝牙模块 蓝牙选用[HC-05主从机一体蓝牙模块 无线蓝牙串口透传 无线模块 电子模块],淘宝链接地址为:https://detail.tmall.com/item.htm?id=41281471872&spm=a1z09.2.0.0.u7iKss&_u=m10qactucc9f 二.手机端APP 手机端蓝牙串口调试助手,如图一所示: 图一 用手机数据线连接手机,下载上图所示[蓝牙串口调试助手].下载完毕后,打开手机APP,如图二所示: 图二