硬件课程设计报告(2)

2025-08-07

3. 概要设计

3.1 对MSP430F149单片机的使用

MSP430F149单片机是由TI公司开发的一款高性能低功耗单片机。实验中主要使用F149的CPU内核,SPI控制器,IO端口及TimerA定时器。

3.2 SD卡及FAT32文件系统的读写

要想实现电子书阅读功能,就必须实现SD卡的读写,因为电子书及音乐数据都是以SD卡作为存储介质的。为了使用SD卡,就必须实现SD卡的初始化功能,读扇区功能及写扇区功能。同时,我们组在进行设计时,确定了使用FAT32文件系统作为SD卡上得文件系统。FAT32文件系统是一种简单高效的文件系统,在实现SD卡读写扇区功能的基础上,我们需要基于FAT32文件系统的特性实现对FAT32文件系统的读写,这样才能获取SD卡上的文本文件及音乐文件数据。

3.3 菜单显示

一个完整可用的电子书系统一定要有良好的菜单系统的支持。我们组设计了两级菜单显示,其设计思想如下:

1、主菜单:当进入系统时,会显示主菜单,其中包含电子书,音乐,游戏三个选项,用户选择这三个选项中的一个就可以进入下一级菜单。

2、目录菜单:当在主菜单中选择电子书或音乐时,就会进入电子书或音乐的目录菜单。在电子书目录菜单中,会列出当前SD卡中所存储的所有电子书的文件名,用户选择项阅读的文件即可进行阅读。同样的,在音乐目录菜单中,会列出当前SD卡中所存储的所有音乐文件的文件名,用户选择项播放的音乐即可进行音乐播放。

3.4 电子书显示

电子书显示功能是一个电子书阅读器的核心,它以12864液晶显示屏作为基础,从SD卡中读取文件并显示在屏幕上。整个电子书的显示功能是为12864液晶屏量身设计的,它文本模式可以显示4行文字,每行显示8个汉字或16个英文字母。为了取得良好的阅读体验,我们组设计了以下的功能:

1、向上向下翻页功能:当人在阅读电子书时,如果翻来一页新的文字时,读者有可能会因暂时性忘记上一页最后一行的若干内容而造成对下一页起始内容的理解困难。因此,我们决定在向下翻页时,仅会翻三行内容,也就是说,我们会以当前屏幕的最后一行,为新一页的第一行。这样就可以保证阅读的流畅性。同理,在向上翻页时,我们会以当前屏幕的第一

6

行,为后一页的最后一行。

2、按比例跳转功能:读者在读书的时候,有时会想直接跳转到这本书的后面去进行阅读。这时候就需要一个按书内容的百分比进行跳转的功能。本课设中实现了这个功能。

3、英文单词的人性化显示功能:为了保证在阅读英文文章时的流畅性,我们必须保证每一个词都不会因为换行而被截断。本课设就实现了这个功能,从而保证了阅读英文文章时的流畅性。

4、书签功能:这个功能对电子书至关重要,因为读者几乎无法连续的读完一本书,当读者退出阅读时,他需要保存当前的阅读进度以便在下次方便的继续阅读。这也是本课设中所实现的关键功能。

5、阅读时间的显示:大家都知道,阅读时间过长对视力不好。因此一个完善的电子书阅读器必须可以显示当前电子书的阅读时间,以使读者可以清楚的知道自己何时需要休息。

3.5 音乐播放功能

在前面已经讨论过,一个成熟的电子书,一定要集成其他的附加功能才能提升整个系统的档次。音乐播放功能就是非常重要的一个功能。本课设中利用vs1003制作了一个mp3播放器,可以播放高品质的音乐。并且实现了调整音量,暂停,快进快退,向前向后选择歌曲的功能。这样,当阅读电子书感到疲劳时,就可以听听音乐放松一下心情。

3.6 游戏功能

课设中利用12864的绘图模式制作了俄罗斯方块的游戏。这样读者可以在阅读疲劳时玩玩俄罗斯方块来放松心情。

4. 详细设计

4.1 SD卡及其结构

SD卡SPI模式下与单片机的连接图:

7

SD卡支持两种总线方式:SD方式与SPI方式。其中SD方式采用6线制,使用CLK、CMD、DAT0~DAT3进行数据通信。而SPI方式采用4线制,使用CS、CLK、DataIn、DataOut进行数据通信。SD方式时的数据传输速度与SPI方式要快,采用单片机对SD卡进行读写时一般都采用SPI模式。采用不同的初始化方式可以使SD卡工作于SD方式或SPI方式。这里只对其SPI方式进行介绍。 1、SPI方式驱动SD卡的方法

SD卡的SPI通信接口使其可以通过SPI通道进行数据读写。从应用的角度来看,采用SPI接口的好处在于,很多单片机内部自带SPI控制器,不光给开发上带来方便,同时也见降低了开发成本。然而,它也有不好的地方,如失去了SD卡的性能优势,要解决这一问题,就要用SD方式,因为它提供更大的总线数据带宽。SPI接口的选用是在上电初始时向其写入第一个命令时进行的。以下介绍SD卡的驱动方法,只实现简单的扇区读写。 1)命令与数据传输

SD卡自身有完备的命令系统,以实现各项操作。命令格式如下:

命令的传输过程采用发送应答机制,过程如下:

8

每一个命令都有自己命令应答格式。在SPI模式中定义了三种应答格式,如下表所示:

字节 位 含义 7 开始位,始终为0 6 参数错误 5 地址错误 1 4 擦除序列错误 3 CRC错误 2 非法命令 1 擦除复位 0 闲置状态 字节 位 含义 7 开始位,始终为0 6 参数错误 5 地址错误 1 4 擦除序列错误 3 CRC错误 2 非法命令 1 擦除复位 0 闲置状态 7 溢出,CSD覆盖 6 擦除参数 5 写保护非法 2 4 卡ECC失败 3 卡控制器错误 2 未知错误 1 写保护擦除跳过,锁/解锁失败 0 锁卡

字节 位 含义 7 开始位,始终为0 6 参数错误 5 地址错误 1 4 擦除序列错误 3 CRC错误 2 非法命令 1 擦除复位 0 闲置状态 9

2~5 全部 2)初始化 操作条件寄存器,高位在前 SD卡的初始化是非常重要的,只有进行了正确的初始化,才能进行后面的各项操作。在初始化过程中,SPI的时钟不能太快,否则会造初始化失败。在初始化成功后,应尽量提高SPI的速率。在刚开始要先发送至少74个时钟信号,这是必须的。在很多读者的实验中,很多是因为疏忽了这一点,而使初始化不成功。随后就是写入两个命令CMD0与CMD1,使SD卡进入SPI模式 初始化时序图:

在项目中,初始化SD卡的函数为:unsigned char InitMmc()。 3)扇区读

扇区读是对SD卡驱动的目的之一。SD卡的每一个扇区中有512个字节,一次扇区读操作将把某一个扇区内的512个字节全部读出。过程很简单,先写入命令,在得到相应的回应后,开始数据读取。 扇区读的时序:

10


硬件课程设计报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:老虎岗一中九年级第二次月考物理试卷

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219