基于AT89C52的火控系统语音设计

描述

引言
在现代大多控制系统中,通常使用发光二极管 LED、数码管、液晶显示器、蜂鸣器等进行状态 / 结果显示和故障报警,如果在显示报警仪表上采用数字语言技术,使适合用听觉传送的信息用语言传送,就可以发挥听觉的优势,弥补完全用视觉信号传递信息的不足。近年来随着语音电路的迅速发展,语音芯片已经以其直观、生动、与单片机接口方便等优势,越来越广泛的应用于单片机控制系统中了,成为现代控制系统中人机联系的一个友好界面。

1 语音电路分析
语言处理合成芯片很多,大多采用:语言信号 - 驻极话筒 - 电压 - 滤波放大 -AD 转换数字信号存储。放音时采用:数字信号 -DA 转换、输出,这在实际使用时存在着以下不足:


(1)要使语音不失真地被采样,要求采样频率 fs≥8 000 Hz。在小系统中,以这样的速度采样语音只能是很短的时间,若要稍长一段时间,势必占用很大的存贮空间。

(2)系统构成成本高,由于需要 ADC,DAC,专用语音芯片及相关电路。

(3)存在不同程度的失真(信号采样和恢复)。

(4)使用不灵活,只能录什么,放什么,难以实现字、词、句的组合。

ISD1420 语音芯片是美国 ISD 公司出品的新型优质单片录放音电路,采用了直接模拟量存储技术 DAST。主要由振荡器、语音存储单元、前置放大器、自动增益控制电路、抗干扰滤波器、输出放大器组成。一个最小的录放系统仅由一个麦克风、一个喇叭、两个按钮、一个电源、少数电阻电容组成。录音内容存人永久存储单元,提供零功率信息存储,这个独一无二的方法是借助于美国 ISD 公司的专利——多电平直接模拟存储技术(DAST TM)实现的。利用它,语音和音频信号被直接存储,以其原本的模拟形式进入 EEPROM 存储器及分段输出,因而失真小,能够非常真实、自然地再现语音效果,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。使用方便,不需专用语音开发工具,成本低廉。直接模拟存储允许使用一种单片固体电路方法完成其原本语音的再现。不仅语音质量优胜,而且断电语音保护。因而在现代技术上得到广泛使用。主要特点如下:

(1)使用方便的单片录放系统,外部元件最少

(2)重现优质原声,没有常见的背景噪音

(3)信息可保存 100 年,可反复录放 10 万次

(4)较强的分段选址能力可处理多达 160 段信息

(5)边沿 / 电平触发放音

(6)无耗电信息存储,省掉备用电池

(7)具有自动节电模式

(8)录或放后立即进入维持状态,仅需 0.5μA 电流

(9)工作电压:5 V

(10)工作电流:典型值 15 mA,最大值 30 mA(16 欧姆)

2 系统构成
本语音电路作为火控计算机的一部分,主要是对目标距离进行实时报读,供指挥人员提供观察和决策,以选择最佳时机发出击发命令。语音电路由火控计算机主机发出 RS232 电平信号,经电平转换后,为单片机 AT89C52 所接收。单片机 AT89C52 一方面控制高亮度数码管显示状态信息,同时控制语音芯片 ISD1420 实时报读目标距离。为指挥人员提供提示。

3 语音信号控制
3.1 语音电路特性
选用语音存储 / 再生芯片 ISD1420。该电路采用 EEP-ROM 存储方法将模拟语音数据直接写入半导体存储单元中,具有音质自然、可反复录放、抗干扰、低功耗等许多优点。ISD1420 放音时间为 20 秒;最多可分为 160 段,每段段长最少 125 ms;输入采样* kHz;100 000 次录音周期;5 V 单电源供电,放音电流 15 mA,维持电流 0.5μA。完全满足设计需要。

ISD1420 芯片地址引脚(A0~A7)输入有双重功能,根据地址中的 A6,A7 的电平状态决定 A0~A7 的功能。如果 A6,A7 有一个是低电平,A0~A7 输入全解释为地址位,作为起始地址用。地址位仅作为输入端,在操作过程中不能输出内部地址信息。根据 PLAYL、PLAYE 或 REC 的下降沿信号,地址输入被锁定。如果 A6,A7 同为高电平时,它们即为模式位(见表 1)。

使用操作模式有两点要注意:

(1)所有初始操作都是从 0 地址开始,0 地址是 1420 存储空间的起始端,以后的操作可根据模式的不同。而从不同的地址开始工作。当电路中录放音转换或进入省电状态时,地址计数器复位为 0。

(2)当 PLAYL、PLAYE 或 REC 变为低电平,同时 A6,A7 为高电平时,执行对应操作模式。这种操作模式一直执行到下一个低电平控制输入信号出现为止,这一刻现行的地址 / 模式信号被取样并执行。操作模式可以与微控制器一起使用,也可用硬件连线得到所需系统操作。

通过以上介绍可知,160 段对应着 160 个地址,由 A0~A7 组合产生。要实现分段播放先要进行录音,录音可以采用高级的声音处理软件一次把声音灌进语音模块里头也可以采用分段录音的方法进行分段录制。在使用 ISD1400 系列的语音芯片时,应注意在 REC 和 VCC 之间接一个 0.1 mF 的电容,以防止在上电时出现录音操作而破坏原来录制的信息。

根据火控计算机系统报读的需要,放音内容为军用数字发音:“幺、两、三、四、五、六、拐、八、勾,洞”。我们利用 A0~A7 引脚的地址功能,通过声音处理软件结合 ISD1420 开发录放板,一次把声音灌进语音模块 ISD1420 中。这样每一个数字发音都对应一个内部存储空间。可以通过调整语音芯片的地址(P2 口控制)来选择合适的数据播放。

由于在户外使用,要求发出的声音具有一定的响度,即要求语音电路有较大功率输出。语音芯片 ISD1420 内部输出级带有放大器,其直接的扬声器驱动功率为 12.2 mW(16Ω负载),这距离我们的实际需要相差很大,通常 1 W 以下的扬声器可用 LM386、D2283 D2822、MC34119、TA7368 等芯片驱动,1 W~lO w 的扬声器用 TDA2003、LA4440 芯片驱动,因此后级功放必须保证能在低电压下输出大功率信号,以推动扬声器发声,在这里我们选用了 LA4440 芯片驱动。

3.2 语音电路构成
语音部分电路设计中设计了以单片机 89C52 为核心的语音报读电路,89C52 的 P2 口用来实现地址选择,放音时先由软件给出一个地址,就是一个语音段首址,在这一放音过程中地址是不能变化的;LA4440 为音频功放电路,将 ISD1420 的音频输出放大推动喇叭,通过调整电阻 R1 的阻值可控制音量大小;语音芯片 ISD1420 周围的 RC 电路主要为了减小噪声的影响;MAX813L 则作为看门狗电路为单片机 AT89C52 提供上电复位和运行监控。

MAX232 将火控计算机主机送过来的 RS232 电平信号转换成 TTL 电平并送到单片机 AT89C52,单片机 AT89C52 对火控计算机主机的状态信息实时显示并进行报读,通过引脚 P3.6 控制 ISD1420 的放音,P2 口用来调整放音地址。通过按地址分时播放就可以实现分段播放了,而分段播放的最大优点是可以只要一些基本的声音就可以合成一段话。这样可以节省语音模块的空间,提高产品的灵活性,降低生产成本。分段播放可以用在一些发音的基本元素不多,但组合发音变化比较多的地方。

4 软件设计
AT89C52 的软件设计相对简单。主要包括与火控计算机主机的串行通讯程序(11.0592 MHz 晶振、4800 波特率、八位异步方式),放音控制程序,显示控制程序及看门狗程序。放音控制程序根据火控计算机系统的要求及实际情况,只对火控计算主机传送来信息的目标距离量进行实时报读。目标距离是实施射击和掌握开火时机的重要依据。它的报读原则是:“远距离报读间隔大一些,近距离报读间隔小一些,开火报到点上”。报读时,根据目标快速运动的特点,可以省略报读字节,提高反应速度和报读的清晰度。电平控制放音中开始地址和播放时间也是必不可少的,只要控制了这两个参数就可以确定播出内容。

5 结束语
按上述方法设计出的语音电路报读电路在某火控系统中得到实际应用,实践证明运行可靠、准确,具有一定的使用价值。

审核编辑 黄昊宇

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分