关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 有害动物智能声防系统中音频控制子系统的研制

有害动物智能声防系统中音频控制子系统的研制

作者:时间:2010-05-13来源:网络收藏
由图2可见,AT89C51SND1通过RS-232串口与无线通信模块相连,采用自定义协议与其进行通信,以实现执行器节点与探测节点、总器之间的无线通信。因AT89C51SND1没有集成USB HOST接口,故选择USB接口芯片CH375读写U盘。而实际测试中发现,CH375不能识别有些厂家生产的U盘。故为确保存储的可靠性,选用SD卡作存储介质。SD卡的读写分为SD和SPI方式,而AT89C51SND1只提供MMC接口,无法兼容SD方式,故采用SPI方式读写SD卡。AT89C51SND1上集成了输出接口,可将解码后的数据以PCM格式或I2S格式输出到后级的低功耗数模转换芯片PCM1770。AT89C51SND1通过USB DEVICE接口作为USB从设备与计算机相连,用于烧写应用程序。AT89C51SND1还可通过I/O口与点阵式LCD相连,以输出相关信息。
2.2 方案1的软件设计
图3是音频构建方案1的软件流程。上电后,音频先完成各种外围设备(包括SD卡、DAC芯片以及LCD等)的检测和初始化,随后进入工作循环。首先对工作模式变量进行判断,若是触发模式,则返回重做判断;若为随机模式,则调用随机数生成子程序,随机生成一个等待时间并延时等待,然后从存储器中读取声防目标变量指定的音频文件并解码播放。在整个工作循环过程中,音频控制开放串口中断。当串口接收到来自无线通信模块的信息时,即产生串口中断。中断处理程序对接收到的信息进行判断,若是来自探测节点的声防命令,且当前处于触发工作模式,则根据最近更新的声防目标播放对应的音频文件,然后通过无线通信模块向总控制器返回一个执行记录,用于统计该地区的出没规律;如果不是声防命令,而是来自总控制器的信息,则更新对应的控制变量,例如工作模式、间隔时间范围、声防目标文件、音量大小等。

本文引用地址:http://www.eepw.com.cn/article/163084.htm

音频控制子系统构建方案1的软件,从功能上主要分为随机数生成、SD卡驱动、FAT文件管理、串口通信以及解码控制等5部分。
随机数生成子程序通过调用库函数rand(),在间隔时间变量确定的范围内生成一个随机数并执行延时。
SD卡驱动实现在SPI方式下以扇区(512 B)为单位对SD卡上数据的读写。
由于存储器上一般使用FAT文件格式存放和管理文件,FAT文件管理子程序可实现对存储器上文件目录、数据存放位置的管理,以及在SD卡驱动下读取指定文件的数据。
串口通信子程序实现串口初始化和以字节为单位的数据收发,并在此基础上实现以帧为单位且带有数据校验的串口通信。在本方案的串口协议中,1帧数据包括8个字节。其中,第1字节是约定起始标志;第2字节为发送者地址;第3字节是消息种类(如“更新声防目标”、“改变音量大小”等);第4~7字节是消息参数;第8字节为前7个字节的和,用于校验数据传输的正确性,以保证通信的可靠性。
解码控制子程序是音频控制子系统软件的重要部分,由于单片机上集成了MP3硬件解码器,用户无需关心解码的具体过程,只要设置好解码器参数并及时将数据送入解码缓冲区即可。MP3音频文件内容分3部分,首、尾2部分用于记录音频文件名称、制作者等信息;中间部分以帧为单位存放压缩音频数据,帧头中包含有音频文件的文件类型、采样率、比特率、声道数等信息。在播放指定的MP3音频文件时,单片机先通过FAT文件管理子程序读取指定文件一个扇区的数据,并以此设置好硬件解码器相关参数;然后,将音频数据依次写入解码器缓冲区,解码器自动对MP3数据解码,并将解码后的数据送入DAC。为实现连续播放,解码控制子程序需要保证在解码数据缓冲区空闲时及时写入待解码的数据。
3 方案2的构建及实现
3.1 方案二的硬件结构及实现

方案2为音频控制子系统的“ARM微处理器+软件解码”构建,该方案的硬件结构如图4所示。ARM微处理器选用了三星公司生产的S3C2440芯片,并扩展了64 MB FLASH,用于存储引导程序和操作系统内核等,同时,还扩展了64 MB SDRAM作为程序的运行空间。S3C2440基于ARM920T内核,工作频率达400 MHz,集成有SD、USB Host、LCD、音频、视频等丰富的外设接口,并提供有130个I/O口,是一款高性能、低功耗微处理器芯片[3]。无线通信模块通过RS-232串口与微处理器相连。由于S3C2440上的USB HOST接口只支持USB1.1协议,考虑到兼容性,该方案中仍选择SD卡作为存储器,并以SD方式对其进行读写。S3C2440集成有LCD和触摸屏控制器,可根据需要选择相应的人机交互设备,例如点阵式LCD。S3C2440通过I2S音频接口与具有A/D和D/A功能的低功耗音频处理芯片UDA1341相连,实现音频信号的采集和输出。该系统经以太网控制芯片DM9000A接入以太网,用于与微机相连进行开发调试。为提高系统硬件的电磁兼容性能及可扩展性,硬件设计上采用了核心板+扩展板的模块化结构。核心板上包括S3C2440、FLASH和SDRAM芯片,其借助插针与扩展板相连。扩展板集成了各种外围芯片和接口,可据实际需求更改设计方案,方便系统硬件的扩展升级。

3.2 方案2的软件设计
方案2的软件结构分为3层,见图5。软件开发平台采用了嵌入式Linux操作系统。Linux是一种稳定、高效、免费的开源操作系统,不仅支持多种体系结构和大量硬件设备,而且其内核可据实际需求裁剪。

pid控制器相关文章:pid控制器原理




评论


相关推荐

技术专区

关闭