基于IIS总线的嵌入式音频系统设计
时间:01-29
来源:电子技术应用
点击:
2.5 设备无关操作
设备无关操作对应于file_operations指向的各个例程,它让用户用访问文件的方式访问设备。对设备的打开和读写是启动程序为用户程序提供的最主要接口,分别对应于file_eratlons中的open、read和write例程。在open例程中需要完成的任务主要是设备初始化,包括:
· 通过设置IIS寄存器控制音频设备的初始化,并且初始化设备的工作参数(包括速度、声道、采样宽度);
· 为设备分配DMA通道;
· 根据采样参数计算出缓存内段的大小(程序也可以指定缓存内段的大小);
当缓存区和DMA设置好后,读写操作主要对缓存操作。 对设备的操作除了读写操作外,还有音频播放中的暂停和继续。这两个操作在ioctl接口中实现,通过对相应的IIS总线控制器(IISCON寄存器)操作实现。
此外,在对音频操作时还要注意:一次采样得到的数据必须一次处理,否则不能正确播放数据。