随着视频监控技术的发展,嵌入式视频监控系统以其直观、方便和内容丰富等特点,日益受到人们的重视和关注,被广泛应用于众多场合。武汉精伦电子股份公司的四路网络视频监控服务器系统RT-VS4104由ARM9系列处理器EP9315和数字信号处理芯片TM320DM642双处理器组成,采用了源码公开的Linux操作系统,主要功能是实现四路视频输入监控和一路视频输出。在简单介绍系统的硬件结构原理图及其系统软件结构的基础上,依据嵌入式Linux操作系统的特点和监控系统音频处理和告警管理的需求,实现了四路I2S音频驱动以及四路开关量告警管理驱动。在音频输入模块,设计了一个DMA双缓冲区,在分析了M2P/P2M类型通道状态机的基础上,采用基于中断的DMA机制来控制状态机的跳转,并在中断处理函数中实现了双缓冲区间的切换选择,实现了I2S接收FIFO和系统主存之间的高速流式数据传输。在音频输出模块,采用了类似中断的底半部处理策略--工作队列机制来实现音频数据的输出。设计了I2S设备结构和一个记录音频缓冲区块的队列结构,每次音频播放进程通过write系统调用进入内核空间后,都将音频缓冲区块的信息提交到一个缓冲区队列上,并同时向内核的共享工作队列提交一次工作,然后就立即返回用户空间;工作在CPU空闲时被内核线程调度执行,完成音频缓冲区块数据的处理。这种机制极大地减少了一次提交音频数据所需的时间,提高了系统的效率。告警管理模块中,在分析了系统告警管理需求的基础上,基于EP9315芯片的GPIO控制模块和向量中断模块,利用EGPIO的中断功能,实现了四路开关量告警的输入、输出控制,并为用户应用程序提供了告警轮询以及获取开关量输入设备状态的内核接口。
本文来源: https://www.lw50.cn/article/45046f2ec93b98356900d591.html