维信科技--嵌入式实训21

维信科技--嵌入式实训21

ID:37785739

大小:36.00 KB

页数:6页

时间:2019-05-31

维信科技--嵌入式实训21_第1页
维信科技--嵌入式实训21_第2页
维信科技--嵌入式实训21_第3页
维信科技--嵌入式实训21_第4页
维信科技--嵌入式实训21_第5页
资源描述:

《维信科技--嵌入式实训21》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、嵌入式实训21——维信科技一、实训目的学习使用文件相关的API函数,了解在uCOS-II操作系统上扩展文件系统的情况。二、实训内容(维信科技,太原最好的IT培训)通过使用开发平台提供的API函数,打开一个保存在FLASH海量存储器中的英文文本文件,将其文件内容输出显示在液晶屏上。三、预备知识1、用ARMSDT2.5或ADS1.2集成开发环境,编写和调试程序的基本过程。2、基于uCOS-II操作系统的应用程序的框架结构。3、操作系统原理中有关文件系统的知识,了解文本文件以及字符串的处理方法。4、使用LCD_printf向液晶屏输出字符。四、设备及工具(包括软件调试工具)

2、硬件:ARM嵌入式开发平台、用于ARM7TDMI的JTAG仿真器、PC机Pentium100以上(维信科技,太原最好的IT培训)。软件:PC机操作系统win98、Win2000或WinXP、ARMSDT2.51或ADS1.2集成开发环境、仿真器驱动程序、超级终端通讯程序五、原理及说明uCOS-II操作系统本身并没有文件系统,不支持文件相关的管理功能。在将uCOS-II操作系统移植到ARM嵌入式开发平台时参考FAT16为该系统扩展了一个简单的文件系统,从而使该操作系统功能更强大,也符合实际嵌入式产品开发的需要(维信科技,太原最好的IT培训)。开发平台的硬件中有一片容量至

3、少16M的NANDFLASH存储芯片作为嵌入式设备的固态数据存储器,或称为电子硬盘。该存储器由文件系统管理,在文件系统的功能函数与FLASH芯片之间有相关驱动程序实现高层系统功能和底层具体硬件的数据交换。嵌入式系统经常使用的存储介质FLASH芯片具有和磁盘完全不同的结构特点,开发平台上的K9F2808U0A芯片具有1024个Block,每个Block有32个Page,每个Page有512+16=528个Byte。这种芯片的读写操作具有以下特点(维信科技,太原最好的IT培训):1)必须以Page为单位进行读写;2)写之前必须先擦除原有内容;3)擦除操作必须对Block进

4、行,即一次至少擦除一个Block的内容。针对这种情况,将一个Page定为一个扇区;将2个Block即64个扇区定为一个簇,簇的容量正好为512×64=32K,满足FAT16对簇的要求。FAT是按簇为单位分配空间的,但其给出的地址LBA(LogicalBlockAddress)只是一个扇区号,比如LBA=0x40对于FLASH芯片来说实际代表簇2的扇区0。因此需要将LBA转换为芯片的物理地址才可以进行数据存取操作。转换关系如下:FLASH的Block=LBA/0x20;FLASH的Page=LBA%0x20。根据该公式就可以将LBA转换为正确的Block和Page,然后

5、就可以用芯片的读写命令存取该Block/Page的数据了。FAT文件系统包括MBR区,FAT区,DIR区,DATA区。其中MBR(主引导记录)区在磁盘文件系统中也称0扇区。硬盘上由于存在多个分区而在每个分区中还有DBR(DOS引导记录)区。MBR扇区必须包括BPB(BIOSParameterBlock),其中有对文件系统进行识别的关键信息。由于开发平台的电子硬盘结构比较简单并且不要求启动,MBR不必含有启动代码,但最后两个字节必须是0x55AA(维信科技,太原最好的IT培训)。关于引导扇区、FAT和DIR的详细结构请参考相关资料。FLASH前两个Block的内容如下表

6、4-20所示:表4-20FLASH前两个Block的内容LBABlockPageBytes说明000512MBR=BPB+ExcutableCode+0x55AA1-201-21024第1个FAT区3-403-41024第2个FAT区(备份)5-39H0-1DIR区,BPB中的目录项数使其正好添满本簇。40H20DATA区起始扇区。在系统对FLASH芯片进行格式化操作时将FAT写入芯片,使其逻辑空间符合文件系统的需要。当主机发出READ命令后,FLASH读写操作开始,首先读取MBR得到诸如扇区大小、每簇扇区数、总扇区数等存储介质有关信息。然后读取FAT得到文件目录列表

7、,基于此就可以进行文件的复制、删除、创建等操作了。开发平台的电子硬盘可以和USB通讯构成U盘,当和PC机连接并激活该U盘后会在PC上出现可移动磁盘。PC机启动时BIOS会读取MBR中的ExcutableCode(引导程序)并把控制权转交于它,然后由该引导程序负责引导操作系统。而ARM嵌入式设备启动时BIOS则直接依赖文件系统从FLASH中引导用户的可执行程序。在用户程序中也可以使用平台提供的文件操作函数存取FLASH中的文件。请参考附录API函数文件系统部分,在OSFile.h中定义。有了这些文件系统函数,用户就能屏蔽硬件上FLASH芯片物理空间和读

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。