MP3汽车报站器的实现
时间:01-16
来源:互联网
点击:
3.2 优盘功能部分
该功能涉及在K9F1208上FATl6文件系统的实现与管理,以及作为USB从机与主机间的通信。 K9F1208是三星公司推出的一款64 MB的Flash芯片,芯片存储区域分为4096个块,每个块又分32页,每页有512 KB+16字节。Flash的读/写有如下特点:必须以页为单位进行读写,写之前必须先擦除原内容;擦除操作必须对Block进行,即一次至少擦除一个 Block的内容。
因此FATl6的实现,可将Flash出的一页定为1个扇区,将其2个块(64个扇区)定为一个簇。这样,簇的容量刚好为512字节×64=32KB,满足FATl6对簇大小的要求。在FATl6分配空间时,其逻辑块地址(LBA)与Flash实际物理地址的转换可以按以下公式进行:
F1ash的块地址=逻辑块地址/0x20
Flash的页地址=逻辑块地址%0x20
按照这样的结构及FATl6的要求,在K9F1208上实现DBR、FAT、DIR和DATA四个区,即可实现优盘中的磁盘管理功能。 AT89C5lSND1C芯片内集成有USB控制器,由于Mass Storage协议及端点配置、枚举、通信过程较为复杂,这里不再赘述,硬件连接请参考图2。
3.3 显示电路
如图4所示,显示电路由IDT7132、AT89C5l、74LSl54、74HC573以及1个16×256的LED点阵屏构成。IDT7132是一片容量为32 KB的双口RAM,由于16×256的LED点阵屏显示缓存共需512字节的存储空间,电路使用它与AT89C5lSNDlC接口并存储汉字显示信息。 16×256的LED点阵屏可显示16个16×16的点阵汉字,显示屏分32页,每页又分成16行。
本设计采用两片4-16译码器74LS154组合成一个5-32译码器,作为页译码器;采用一片74LSl54作为行译码器。每一页对应一个74HC573,用于锁存该页某一行显示的内容;32个74HC573可锁存16×256的LED点阵屏一行的内容,显示屏由7407驱动。AT89C5l从双口RAM规定区域取出显示内容,控制页译码器把数据分别送入每一页的当前行中,然后控制行译码器换行,如此循环形成动态显示。显示电路作为~独立模块使用,报站器显示信息时,只需把欲显示的汉字字模送入双口RAM对应的存储区域。
结语
随着MP3播放器硬件成本的降低,MP3报站器的性能及成本优势越来越明显,有着广阔的应用前景;且MP3报站器可方便地更换广播信息,具有较高的使用价值和推广价值。
MP3汽车报站器 相关文章:
- Windows CE 进程、线程和内存管理(11-09)
- RedHatLinux新手入门教程(5)(11-12)
- uClinux介绍(11-09)
- openwebmailV1.60安装教学(11-12)
- Linux嵌入式系统开发平台选型探讨(11-09)
- Windows CE 进程、线程和内存管理(二)(11-09)