EDN China > 设计实例 > 嵌入式系统 > 开发工具 > 正文
? 2016博客大赛-不限主题,寻找电子导师,大奖升级??

(多图) 嵌入式蓝牙PSTN语音接入点的设计与实现

来源:CE china?? 2006年10月12日 ?? 收藏0

??
?????? 1.3 蓝牙收发模块???

?????? 蓝牙收发模块包括蓝牙射频电路、基带处理电路和PCM编解码电路,通过MCF5272的UART1和网关控制模块相连。语音信号通过PCM编解码器MC145483和电话接口芯片TEA1062A连接。语音信号通过PCM编解码器MC145483和电话接口芯片TEA1062A连接。MCF5272把蓝牙模块接收到的数据通过协议栈解释为摘机、挂机、拨号、来电显示等命令,并通过数据线控制电话语音接收与拨叫电路的各种操作。PSTN市话网用户线与电话线路接口模块连接,电话线路接口模块把外部PSTN电话网的振铃信号和来电显示信息通过数据线传递给MCF5272。MCF5272再把这些信号通过蓝牙软件栈打成数据包并送给蓝牙模块,由蓝牙模块通过无线信道发送给终端。电话线上的模拟语音信息通过PCM编解码器编码后经蓝牙模块发送给终端,同时蓝牙模块接收终端发送过来的语音

数据,经过PCM编解码器解码,形成模拟语音信号,通过电话接口芯发送到电话线上。本设计中的蓝牙基带和射频电路由CSR的BlueCore01b芯片加上功放、低噪放、收发切换开关、滤波器和一些外围电路组成。???

?????? 2 驱动程序的设计与实现???

?????? 2.1 μClinux设备驱动程序概述

?????? 在μClinux下,所有的硬件设备都被视为文件,从设备接收输入数据和将输出送到设备就像从普通文件接收输入和将输出送到文件一样,可以使用read()、write()等系统调用。应用程序通过系统调用和内核交互,而内核则通过设备驱动程序和具体硬件交互,如图3所示。一般来说,操作系统内核需要访问三类主要设备:字符型设备、块型设备以及网络设备。本接入点的驱动程序属于字符设备驱动程序。???

用户程序通过设备驱动程序访问硬件


?????? 每个驱动都有一个称为file_operations的数据结构,包含指向驱动程序内部大多数函数的指针。当系统引导时,驱动程序初始化函数将file_operations结构的指针送给内核,内核就可以通过该指针访问驱动程序内的函数。因而,这些函数就是进入驱动程序的基本入口点。当用户程序执行系统调用时,将导致驱动程序内相应的函数被调用。???

?????? 2.2 需求分析???

?????? 嵌入式蓝牙PSTN语音接入点的硬件设计中,电话线路接口模块、蓝牙收发模块是外扩的模块,需要在μClinux内核为基提供支持。???

?????? 蓝牙收发模块通过MCF5272的串口2和网关控制模块相连,因而直接使用μClinux自带的串口驱动程序就可以完成对此模块的控制;而电话线路接口模块通过GPIO口以及外部中断线与网关控制模块相连,必须由我们自由提供驱动程序。???

?????? 2.3 FSK来电显示芯片驱动的设计与实现???

?????? FSK来电显示驱动的主要任务就是完成FSK来电显示信息的接收,总工作流程如图4所示。其主要功能由设备驱动程序基本入口点中的open、release、read、ioctl、select函数,以及设备初始化函数、中断处理函数、下半部分处理函数、定时器超时处理函数完成。下面对其中一些关键的函数进行简要介绍。???

FSK驱动总流量


?? ?? ??


打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

1.扫描左侧二维码
2.点击右上角的分享按钮
3.选择分享给朋友
?? ??

嵌入式? 蓝牙? μClinux?

相关文章

我来评论
美国的游客
美国的游客 ??? (您将以游客身份发表,请登录 | 注册)
?
有问题请反馈