当前位置:文档之家› 硬件课程设计报告简易电子书

硬件课程设计报告简易电子书

硬件课程设计报告简易电子书
硬件课程设计报告简易电子书

硬件课程设计报告

--课题:简易电子书

姓名:

学号:

同组人姓

指导老师

课设评价:

课设成绩:

目录

1. 概述 (4)

1.1 课程设计的核心任务 (4)

1.2 课程设计的工作进程 (4)

2. 需求分析 (4)

2.1 功能分析 (4)

2.2 可行性分析 (5)

2.2.1 技术可行性分析 (5)

2.2.2 经济可行性 (5)

3. 概要设计 (5)

3.1 对MSP430F149单片机的使用 (5)

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

3.3 菜单显示 (6)

3.4 电子书显示 (6)

3.5 音乐播放功能 (7)

3.6 游戏功能 (7)

4. 详细设计 (7)

4.1 SD卡及其结构 (7)

4.2 12864液晶屏结构及用法 (11)

4.2.1 12864液晶屏的硬件结构 (11)

4.2.2 12864内部的数据缓存 (12)

4.2.3 12864液晶屏的指令 (13)

4.2.4 12864液晶屏驱动函数 (14)

4.3 FAT32文件系统 (14)

4.3.1 FAT32文件系统结构简介 (14)

4.3.2 FAT32文件系统驱动函数 (16)

4.4 VS1003音频解码芯片 (17)

4.5 整机结构 (18)

4.5.1 MSP430开发板与12864液晶屏的连接 (19)

4.5.2 MSP430开发板与SD卡的连接 (19)

4.5.3 MSP430开发板与VS1003芯片的连接 (20)

4.6 菜单功能 (20)

4.7 电子书显示功能 (21)

4.7.1 实现显示功能的基本函数 (21)

4.7.2 向下翻页功能 (22)

4.7.3 向上翻页功能 (22)

4.7.4 显示阅读时间 (23)

4.7.5 按百分比跳转 (23)

4.7.6 书签功能的实现 (23)

4.7.7 英文单词的人性化显示 (24)

4.8 音乐播放功能 (24)

4.9 俄罗斯方块游戏功能 (25)

4.10 按键检测 (27)

5. 系统测试 (28)

5.1 菜单功能的测试 (28)

5.2 电子书阅读功能测试 (29)

5.3 音乐播放功能测试 (31)

5.4 游戏功能的测试 (31)

6. 心得体会 (31)

7. 参考文献 (32)

1. 概述

1.1 课程设计的核心任务

随着嵌入式技术的飞速发展,各种电子产品出现了小型化,智能化,多功能化方向发展的趋势。在这种趋势下,许多小型电子产品层出不穷,并且逐渐开始替代传统的生活用品,并走近我们的生活。电子书阅读器的出现就再图书信息的承载和阅读方式上有了很大的革新。本项目的目的就是制作一个电子阅读器,可以让人们方便的进行随身阅读。同时在阅读疲劳时还可以利用其中的mp3播放器和内置的游戏进行放松娱乐。

1.2 课程设计的工作进程

本课设由段经璞,赵冰洁,张琢三人组队共同完成。大家相互之间进行分工合作,以取得快速的工作进展和优秀的最后结果。

2. 需求分析

2.1 功能分析

电子书,最出名的代表应该是亚马逊公司的kindle电子书阅读器。Kindle使用电子墨水屏幕,可以提供接近纸质书的阅读体验。同时还可以进行音乐播放,以及无线上网等功能。并且kindle通过和亚马逊的网上书店整合,可以实现图书的快速查找,购买以及阅读。而现在,单纯的电子书几乎不存在,电子书的功能几乎都被整合在了各式各样掌上终端中。这样的掌上终端在进行电子书阅读的同时,可以播放音乐,无线浏览网页以及进行游戏。因此单纯的电子书可以说是完全没有市场的,它必须被整合其他的功能才能实现良好的效果。

通过以上的分析可以发现,电子书阅读器必须与其他功能进行整合才能被推入市场。当然,在整合其他功能的同时,我们更要把电子书阅读的功能完善好。根据分析,我们决定在课设中实现电子书,音乐播放以及俄罗斯方块游戏的功能。

电子书阅读部分,我们决定实现以下功能:

1. SD卡及FAT32文件系统的读写

2.长/短文件名的显示

3.电子书的显示

4.按阅读进度百分比直接跳转

5.阅读时间显示

6.书签功能

7.英文单词的人性化显示

在音乐播放部分,我们决定实现以下功能:

1.歌曲名称的显示

2.歌曲音量的调节

3.歌曲的前进,后退,快进,快退及暂停的功能。

2.2 可行性分析

2.2.1 技术可行性分析

在电子书阅读部分,我们组使用msp430f149芯片作为主控芯片。使用SD卡作为存储设备。因为msp430f149芯片自带spi控制器,所以可以直接使用spi接口,利用SD卡的spi 模式与SD卡进行数据交换。同时准备使用12864液晶屏作为我们电子书的显示部分。12864具有内建的英文及中文字库,可以方便的显示各种文字信息,从而实现电子书的显示。

在音乐播放部分,我们组使用vs1003音频解码芯片来进行音频解码。Vs1003自带spi接口,可以方便的利用spi总线与msp430f149主控芯片进行连接。在进行音乐播放时,只要把音频文件从SD卡中取出再直接发送到vs1003中即可。

在游戏部分,我们利用12864的绘图功能实现俄罗斯方块游戏。

2.2.2 经济可行性

因为我们小组不具备自己焊接电路板的时间和能力,因此我们组直接从市场上购买现成的开发板。最终购买的开发板的价格如下:

1、msp430f149开发板:64元。

2、12864液晶屏:56元。

3、vs1003音频解码芯片:43元。

4、1GB大小的SD卡:20元

5、SD卡插座:6元。

整体系统的总价格:179元。

整体价格在可以接受的范围内。而且如果可以自己直接购买芯片并焊接电路板的话,就可以大幅度降低整体系统的价格。

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

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

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

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

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

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

3.5 音乐播放功能

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

3.6 游戏功能

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

4. 详细设计

4.1 SD卡及其结构

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

SD卡支持两种总线方式:SD方式与SPI方式。其中SD方式采用6线制,使用CLK、CMD、DA T0~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卡自身有完备的命令系统,以实现各项操作。命令格式如下:

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

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

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

初始化时序图:

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

3)扇区读

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

扇区读的时序:

在项目中,读SD卡扇区的函数由

ReadMmcSector(unsigned long lba, unsigned int Bytes,unsigned char *buffer),调用WriteMmcSectorAddress(unsigned long sector)和MMC_get_data(unsigned int Bytes,unsigned char *buffer) 实现。其中ReadMmcSector输入的参数为SD卡的物理扇区号lba,要读出的字节数Bytes,以及读出后的数据所存放的数组的首地址buffer。

4)写扇区

扇区写是SD卡驱动的另一目的。每次扇区写操作将向SD卡的某个扇区中写入512个字节。过程与扇区读相似,只是数据的方向相反与写入命令不同而已。

扇区写的时序:

在项目中,写SD卡的函数为SD_write_sector(unsigned long addr,unsigned char *Buffer)。输入参数为SD卡的物理扇区号以及写入SD卡指定扇区中的内容的数组的首地址。

4.2 12864液晶屏结构及用法

4.2.1 12864液晶屏的硬件结构

12864是一种具有具有4位/8位并行,2线或3线串行多种接口方式。在本课设中使用了8位并行方式与MSP430单片机进行链接。该液晶屏内部含有国标一级,二级简体中文字库的点阵图形液晶显示模块,其显示分辨率为128x64。其汉字的分辨率为16x16。其ASCii 字符的分辨率为16x8。也就是说12864液晶屏总共可以显示四行字符,每一行可以显示8个汉字或16个英文字母。其8位串行状态下引脚接口如下表所示:

4.2.2 12864内部的数据缓存

下面仅介绍课设中使用倒的两个数据缓存:

1、显示RAM(DDRAM)

显示RAM提供64x2字节的空间,最多可以显示4行每行8个汉字,或4行每行16个ASCii字符。只要直接将汉字或ASCii的编码写入DDRAM中,屏幕中就会出现相应的文字。屏幕上第一行到第四行所对应的DDRAM中的地址分别为0x80-0x87,0x90-0x97,0x88-0x8f,0x98-0x9f。其中,每一个地址对应屏幕上分辨率为16x16的一个区域。在其中可以显示两个ASCii字符,或一个汉字。要将文字写入显存并显示在屏幕中指定的位置上,就必须先向12864芯片写入指定位置的地址,然后再连续的写入两字节的数据。然后这两字节的数据所对应的文字就会显示在地址指定位置的16x16的点阵区域内。因为汉字编码为两个字节,而ASCii编码为1一个字节。所以屏幕上指定位置的16x16的点阵区域可以显示两个英文字符或一个汉字。

12864屏幕上的位置以及其在DDRAM中所对应的地址如下图所示。注意,其中每一个位置均表示一个16x16的区域。

2、绘图RAM(GDRAM)

绘图RAM中每一位的值用来控制12864液晶屏上每一个像素点的亮灭。值为1,对应的像素点就被点亮,值为0,对应的像素点就被熄灭。在设定绘图RAM的值时,先写入垂直地址,再写入水平地址。之后向绘图RAM里连续写入两字节的数据。这样可以完成12864液晶屏上连续16个像素点控制。绘图RAM的地址所控制的像素点在屏幕上的对应位置如下图所示:

4.2.3 12864液晶屏的指令

以下仅仅列出程序中所使用的指令:

4.2.4 12864液晶屏驱动函数

1、写数据函数:void LCD_write_data(unsigned char data)

2、读数据函数:unsigned char LCD_read_data()

3、写命令函数:void LCD_write_com(unsigned char com)

4、文本显示模式初始化函数:void LCD_init(void)

其初始化过程为,先发送两次命令0x30,设置显示模式为基本指令集。然后发送命令0x0c,打开液晶屏屏幕显示。最后发送命令0x01,清屏。

5、将一个长度为17的字符串显示在屏幕指定行的函数:void DisplayCgrom(uchar addr,uchar

*hz)

6、绘图模式初始化函数:void Graph_Init(void)

初始化好绘图模式之后,就可以利用绘图模式来进行俄罗斯方块游戏。

7、点亮屏幕上指定位置像素的函数:void Put_Pixel( unsigned char row, unsigned char

column )

该函数先将指定位置像素所在的GDRAM中的连续16个像素点的值读出来,改变需要

改变的那个像素点的值,在将这16个像素点的值写回GDRAM的原位置中。

8、清楚屏幕上指定位置像素点的函数:void Clear_Pixel( unsigned char row, unsigned char

column )

该函数的实现机制和上一个函数相同。

4.3 FAT32文件系统

4.3.1 FAT32文件系统结构简介

课设中选用了FAT32文件系统来存储文件。下面简介FAT32文件系统

1)主引导扇区(MBR):主引导扇区位于整个SD卡物理扇区的第0号扇区。从中可以读取引导代码以及文件系统的起始位置。在课设中,仅从MBR中读取整个SD卡大小以及文件系统的其实扇区位置。

2)隐藏扇区(Hidden Sectors):从MBR一直到文件系统的起始扇区之间的扇区被称为隐藏扇区。

3)保留扇区(Reserved Sectors):文件系统的起始扇区及其后的若干扇区被称为保留扇区。保留扇区中的第一个扇区,也就是文件系统的起始扇区是整个SD卡中最重要的部分。这个扇区又被称为DBR。DBR记录了文件系统的基本信息,其中包括:每扇区字节数,每簇扇区数,保留扇区数,FAT表个数,文件系统总扇区数,每个FAT表的扇区数,根目录的其实簇号(通常为2)及其他一些附加信息。课设中,系统初始化时,就需要读取DBR扇区,并在内存中记录其中的信息。

4)FAT表:位于保留扇区后的是FAT表区,它由两个完全相同的FAT表组成。FAT表有两个重要的作用,分别是描述簇的分配状态以及表明文件或目录的下一簇的簇号。在FAT表中,每个簇由4个字节的FAT表项来进行代表。FAT表从第0号簇开始进行划分,每四个字节代表一个簇。其中第0号簇和第1号通常情况下不使用。如果某个簇未被分配使用,则它所对应的FAT表内的FA T表项值为0。当某个簇已经被分配使用时,则它所对应的FAT 表项内的FAT表项值也就是在该文件中,该簇的下一个簇的簇号。若这个簇号为0x0fffffff,则表明当前簇为该文件的最后一个簇。

5)根目录:FAT表后面就是数据区。数据区的开始是整个文件系统的根目录。它由目录项组成,用来记录每个文件的文件名,大小,起始簇号,类型,创建时间等信息。

6)目录项:每个目录项占32个字节,其结构如下图所示:

7)长文件名目录项:FAT32系统在为文件分配一个普通目录项时,还会为那些文件名长度超过8字节的文件分配长文件名目录项,长文件名目录项专门用来记录它所对应的文件的文件名。长文件名目录项通常顺序排列在短文件名目录项的上面,其结构如下图所示:

4.3.2 FAT32文件系统驱动函数

1、unsigned char strcmp(char* string1, char* string2)

这个函数主要是比较两个字符串是否是相同的,相同就返回1,不相同就返回0;

简单来说就是比较后缀的。

2、void ReadMBR()

这个函数主要是读出文件系统的起始扇区号

3、void ReadDBR()

DBR中保存的是文件系统的基本信息,每簇扇区数,隐藏扇区数(起始扇区数前面的那

些没有读的,)FAT表的个数,FAT表扇区数,保留扇区数等

4、void ReadSectorFromCluster(unsigned long ClusterNumber,unsigned char SectorOffset)

这个函数作用的是找到扇区的位置,然后读出512字节

5、void GetFileNumber(void)

这里面是包含这种文件,只要不是被删除的文件或者是长文件名(特征是他的第11字节是0X0F)则所找到的文件都会是filenumber+1,同时各种文件类型各自加1.。同时比较文件名是不是convert,或者是dirtable,若果是convert,那么长文件名转码文件是存在的,置一,以长文件名显示;若是dirtable,那么是存在书签的,则在下次读取文本信息的时候就会调用书签信息,实现书签功能。

7、unsigned long GetAudioFile(unsigned long AudioFileIndex)

8、unsigned long GetTextFile(unsigned long TextFileIndex)

这两个函数的原理是有些相同的,第一,先在根目录中找每一个目录项,如果说是音频文件且他的音频索引是audiofileindex,那么这就是要找到的音频文件。同理第八个函数就是所要找到的文本文件。

对于第七个函数,首先,要记住来两个信息,1,记录当前目录项在整个根目录所有目录的偏置信息,2,记录当前目录项在整个音频文件目录项中的偏置位置。然后返回当前音频文件的起始簇号。

对于第八个函数,只用记录当前目录项在真整个根目录所有目录项中的偏置信息,然后返回当前文本文件的起始簇号。

9、unsigned long FindNextCluster(unsigned long ThisCluster)

10、 unsigned long FindPreviousCluster(unsigned long ThisCluster)

第九第十就是找一个文件中当前读的簇的下一个簇或是上一个簇,然后返回簇号

11、void GetDirItem(unsigned long DirItemIndex)

在根目录项中找到DIRitemindex这个目录项,将这32字节值保存在全局数组DIRitem[32]中。这个函数主要是给7 8 这两个函数调用用的,7,8用这个函数找到所需要的目录项

12、void ReadSectorFromFile(unsigned long ThisCluster,unsigned long offset)

Long offset 是扇区在整个文件的偏置根据这个偏置信息找到相应的扇区,读取相应的信息

13、void WriteSectorToFile(unsigned long ThisCluster,unsigned long offset) 这个就是12函数的一个写操作。。

15、void InitFAT()

初试化FAT 就是调用read MBR 和read DBR 这两个函数

4.5 整机结构

课设的整机结构由MSP430F149开发板与12864液晶屏,VS1003解码芯片,SD 卡及SD 卡插座组成。整机结构图如下所示:

4.5.1 MSP430开发板与12864液晶屏的连接

液晶接口原理图图下图所示:

液晶模块端口分配资源如下表所示:

4.5.2 MSP430开发板与SD卡的连接

在spi模式下,SD卡与单片机的连接原理图如下图所示:

MSP430有两个USART端口,分别为P3.1-P3.3以及P5.1-P5.3。课设中选用P3.1-P3.3端

口来连接SD卡。其中P3.1为SIMO端,用来与SD卡在SPI模式下的MOSI端相连。P3.2为SOMI端,用来与SD卡在SPI模式下的MISO端相连。而P3.3为UCLK端,用来与SD 卡在SPI模式下的SCK端相连。使用P3.0为片选信号,并直接使用开发板上的3.3V电源向SD卡供电。

5、在本实验中,我主要负责俄罗斯方块游戏部分:

俄罗斯方块游戏功能

本课设利用12864液晶屏的绘图功能实现了俄罗斯方块游戏的功能。该游戏时先初始化绘图模式,然后通过在主菜单函数Main_Menu中调用game()函数来实现的。

俄罗斯方块的基本流程如下图所示:

俄罗斯方块功能的代码分析如下:

1、typedef struct

微机原理课程设计电压报警器实验报告

南通大学电子信息学院 微机原理课程设计 报告书 课题名: 班级: 姓名: 学号: 指导老师: 日期: xxx

目录 1.设计目的 (2) 2.设计内容 (2) 3.设计要求 (2) 4.设计原理 (3) 5.硬件电路图 (3) 6.程序代码 (5) 7.程序及硬件系统调试情况 (19) 8.设计总结与体会 (19)

一、设计目的 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识,解决实际工程设计和应用问题的能力的重要教学环节。它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一个重要教学环节。 通过课程设计,要求学生熟悉和掌握微机系统的软件、硬件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的总体设计方案、编程、软件硬件调试、编写设计报告等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练掌握微机系统与接口扩展电路的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的硬软件调试方法和步骤,熟悉微机系统的硬软件开发工具的使用方法。 通过课程设计实践,不仅要培养学生事实求是和严肃认真的工作态度,培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅资料,撰写设计报告表达设计思想和结果的能力。 二、设计内容 设计一个电压报警器,要求采集实验箱提供的0~5V的电压,当输入电压在3V以内,显示电压值,如2.42。当输入电压超过3V,显示ERR,并报警。电压值可在七段数码管显示,点阵广告屏显示或液晶屏显示。报警形式自行设计,

个人课程设计报告

个人课程设计报告 个人课程设计之后怎么样写相关的报告呢?各位,我们看看下面的相关范文,大家一起阅读吧! 个人课程设计报告篇一首先我们由衷的感谢老师提供给我们这样一个锻炼自己的机会,经过这四周的学习,本次课程设计即将结束,总的来说,经过这门课的学习收获还是相当大的。回顾这段时间的课程设计,至今我仍感慨万分。的确,从选材到开始制作,从理论到实践,在四周的实训日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。 通过这次课程设计使我们都更加懂得并亲身体会到了理论与实际相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从实践中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到很多问题,可以说是困难重重,并且在设计的过程中发现了自己的很多不足之处,发现自己对之前所学过的知识理解得不够深刻,掌握得不够牢固,有待加强。 生活就是这样,汗水预示着结果但是也见证着收获,劳动是人类生存、生活永恒不变的话题,通过实训,我才真正领略到“艰苦奋斗”这一词的真正含义。我想说,设计确实

有些辛苦,但苦中也有乐,在如今单一的理论学习中,很少有机会能有实践的机会,但我们可以。而且设计也是一个团队的任务,一起的工作可以让我们有说有笑,相互帮助,配合默契,多少欢乐在这里洒下。我想说,之前的时间确实很累,但当我们看到自己所做的劳动成果时,心中也不免产生兴奋。也许有人不喜欢这类的工作,也许有人认为编程的工作有些枯燥,但我们认为无论干什么,只要人生活的有意义就够了,而且这也是最主要的,社会需要我们,我们也可以为社会而工作。 我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神,某个人的离群都可能导致整项工作的失败。实训中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个项目失败,团结协作是我们实训成功的一项非常重要的保证。而这次实习也正好锻炼我们这一点,这也是非常宝贵的。 虽然我们的课程设计在规定的时间内按时完成了任务,但是,由于知识和经验的欠缺,整个系统的开发功能还不算太完善,在设计的过程中也遇到了很多困难,比如由于早期的需求分析不充分,给后来系统的具体实现带来了很大的困难,所以中间做了一部分的无用功,但通过我们的不懈努力和老师、同学的帮助,设计才得以圆满按时的完成,所以仅

计算机硬件课程设计报告(cpu设计)

计算机硬件课程设计 设计报告 学号: 姓名:成绩: 学号: 姓名:成绩: 东南大学计算机科学与工程系 二0 10 年11 月

一、设计名称: My CPU的设计 二、本设计的主要特色: 1、熟悉挂总线的逻辑器件的特性和总线传送的逻辑实现方法。 2、掌握半导体静态存储器的存取方法。 三、设计方案: 1. 数据格式——8位二进制定点表示 2. 指令系统——CPU的指令格式尽量简单规整,这样在硬件上更加容易实现。 7条基本指令:输入/输出,数据传送,运算,程序控制。 指令格式:Array 7 6 5 4 3 2 1 0 两种寻址方式: 寄存器寻址Array 7 6 5 4 3 2 1 0 直接地址寻址,由于地址要占用一个字节,所以为双字节指令。 7条机器指令:

IN R目:从开关输入数据到指定的寄存器R目。 OUT R源:从指定的寄存器R源中读取数据送入到输出缓冲寄存器,显示灯亮。 ADD R目,R源:将两个寄存器的数据相加,结果送到R目。 JMP address : 无条件转移指令。 HALT : 停机指令。 LD R目,address : 从内存指定单元中取出数据,送到指定寄存器R 目。 ST address , R 源: 从指定的寄存器R源中取出数据,存入内存指定单元。

Address(内存地址) 3. CPU内部结构 4.数据通路设计 根据指令系统,分析出数据通路中应包括寄存器组、存储器、运算器、多路转换器等,采用单总线结构。 通用寄存器组:

运算器: 存储器: 多路转换器:

输出缓冲器: 5.控制器设计 控制通路负责整个CPU的运行控制,主要由控制单元和多路选择器MUX 完成。在每一个时钟周期的上升沿指令寄存器IR 从内存中读取指令字后,控制单元必须能够根据操作码,为每个功能单元产生相应主控制信号,以及对ALU 提供控制信号。对于不同的指令,同一个功能单元的输入不同,需要多路选择器MUX 来对数据通路中功能单元的输入进行选择。

微机课设实验报告

微机课程设计 数字温度计实验报告

一、题目: 上位机:完成界面设计与通讯程序 1、能够显示两个温度值,温度精度0.5度,当超出报警温度阈值时,温度 值后又提示字幕。 2、能够设定报警温度阈值 3、每隔一秒将温度值保存至文件存档。当超出报警温度阈值时,温度值后 面有提示。 4、可以对串口进行设置。 下位机:完成电路设计与控制程序 1、用两个DS18B20测温。 2、通过串口与上位机通信,并传输温度值,接受阈值设置。 3、当超出报警温度阈值时,有相应指示灯提示。 4、将当前温度显示LCD1602液晶屏上,当超出报警温度阈值时,温度值后 有提示。 二、原理 DS18B20是DALLS公司推出的“1—wire”接口的数字温度传感器,可以直接将温度转换为9~12串行信号供单片机处理。由于这种传感器只有一个IO口,是单总线串行接口,单片机可以利用串行通信将数据读出并按照LCD 的协议显示在1602液晶屏上。同时,通过PC机与单片机之间的串行通信,可以用PC机控制温度的警戒值以及记录不同时间测量的温度。 三、原理图 图3.1 LCD、18B20以及串口与单片机最小系统连接图

图3.2电源模块 四、流程图 1、上位机流程图 图4.1.1发送数据流程图图4.1.2 接受数据流程图

2、下位机流程图 图4.2.2读出温度子程序流程图 图4.2.1总流程图 图4.2.4计算温度子程序流程图

图4.2.3 温度转换流程图 图4.2.6温度值显示在LCD1602上 图4.2.5 显示数据刷新子程序 五、源程序 1、上位机程序:见附录1; 2、下位机程序:见附录2; 3、实验结果显示(上位机):见附录3。

计算机操作系统综合设计实验报告实验一

计算机操作系统综合设计 实验一 实验名称:进程创建模拟实现 实验类型:验证型 实验环境: win7 vc++6.0 指导老师: 专业班级: 姓名: 学号: 联系电话: 实验地点:东六E507 实验日期:2017 年 10 月 10 日 实验报告日期:2017 年 10 月 10 日 实验成绩:

一、实验目的 1)理解进程创建相关理论; 2)掌握进程创建方法; 3)掌握进程相关数据结构。 二、实验内容 windows 7 Visual C++ 6.0 三、实验步骤 1、实验内容 1)输入给定代码; 2)进行功能测试并得出正确结果。 2、实验步骤 1)输入代码 A、打开 Visual C++ 6.0 ; B、新建 c++ 文件,创建basic.h 头文件,并且创建 main.cpp 2)进行功能测试并得出正确结果 A 、编译、运行main.cpp B、输入测试数据 创建10个进程;创建进程树中4层以上的数型结构 结构如图所示:。

createpc 创建进程命令。 参数: 1 pid(进程id)、 2 ppid(父进程id)、3 prio(优先级)。 示例:createpc(2,1,2) 。创建一个进程,其进程号为2,父进程号为1,优先级为2 3)输入创建进程代码及运行截图 4)显示创建的进程

3、画出createpc函数程序流程图 分析createpc函数的代码,画出如下流程图:

四、实验总结 1、实验思考 (1)进程创建的核心内容是什么? 答: 1)申请空白PCB 2)为新进程分配资源 3)初始化进程控制块 4)将新进程插入到就绪队列 (2)该设计和实际的操作系统进程创建相比,缺少了哪些步骤? 答:只是模拟的创建,并没有分配资源 2、个人总结 通过这次课程设计,加深了对操作系统的认识,了解了操作系统中进程创建的过程,对进程创建有了深入的了解,并能够用高 级语言进行模拟演示。一分耕耘,一分收获,这次的课程设计让 我受益匪浅。虽然自己所做的很少也不够完善,但毕竟也是努 力的结果。另外,使我体会最深的是:任何一门知识的掌握, 仅靠学习理论知识是远远不够的,要与实际动手操作相结合才能 达到功效。

个人博客_课程设计报告

目录 第一章概述 (1) 1.1 本课题的研究背景 (1) 1.2 本课题的研究意义 (1) 1.3 现行研究存在的问题及解决办法 (1) 1.3.1 需求分析问题 (1) 1.3.2 代码实现问题 (2) 第二章系统分析 (3) 2.1 系统需求分析 (3) 2.2 采用的关键技术介绍 (3) 2.2.1 https://www.doczj.com/doc/8e6485616.html,简介 (3) 2.2.2 Access数据库简介 (4) 2.3 可行性分析 (4) 2.3.1 技术可行性 (4) 2.3.2 操作可行性 (4) 第三章系统概要设计 (6) 3.1 系统总体设计 (6) 3.1.1 运行环境 (6) 3.1.2 系统流程 (6) 3.1.3 系统结构 (7) 3.2 系统接口的概要设计 (8) 3.2.1 用户接口 (8) 3.3 数据库概要设计 (9) 3.3.1 逻辑结构设计 (9) 3.3.2 物理结构设计 (10) 第四章系统详细设计 (11) 4.1 系统界面的详细设计 (11) 4.1.1 普通用户首页的详细设计 (11) 4.1.2 留言界面的详细设计 (11) 4.1.3 后台首页的详细设计 (12) 4.2 数据库详细设计 (13) 4.2.1 表的详细设计 (13) 第五章系统实现 (15) 5.1 系统开发环境 (15) 5.2 系统实现 (15) 5.2.1 客户端系统实现 (15) 5.2.2 后台管理系统实现 (17)

5.3 系统运行环境要求 (17) 5.3.1 服务器端要求 (17) 5.3.2 客户端要求 (18) 5.4 系统部署 (18) 5.4.1数据库设置 (18) 5.4.2 服务器端运行设置步骤 (18) 第六章性能测试与分析 (19) 6.1 测试实例(测试集)的研究与选择 (19) 第七章课程设计总结 (20) 7.1 课程设计心得体会 (20) 参考文献 (21)

硬件描述语言课程设计报告

信息与电气工程学院 硬件描述语言课程设计 设计说明书 (数字式竞赛抢答器) ) 学生姓名 学号 班级 成绩 指导教师 通信工程系 年月日

信息与电气工程学院 课程设计评阅人评语 评阅人:(签名) 年月日评阅人评定成绩:

信息与电气工程学院 课程设计任务书 —学年第一学期 专业:通信工程学号:姓名: 课程设计名称:硬件描述性语言 设计题目:数字式竞赛抢答器 完成期限:自年月日至年月日共周 设计依据、要求及主要内容(可另加附页): 一般来说,设计一台智能抢答器,必须能够准确判断出第一位抢答者,并且通过数显、蜂鸣这些途径能让人们很容易得知谁是抢答成功者,并设置一定的回答限制时间,让抢答者在规定时间内答题,主持人根据答题结果实行增减分的操作,并将分数显示在屏幕上,评出最终赢家。所以我们在设计智能抢答器的模块需要满足鉴别、计时、计分、数显等功能。 定时抢答器的工作过程是:接通电源时,主持人将开关置于“清除”位置,抢答器处于禁止工作状态,编号显示器灭灯;抢答开始时,主持人将控制开关拨到“开始”位置,发光二极管灯亮,抢答器处于工作状态,这时,抢答器完成以下工作: (1)优先编码器电路立即分辨出抢答者编号,并由锁存器进行锁存,然后由译码显示电路显示编号; (2)扬声器发出短暂声响,提醒主持人注意; (3)控制电路要对输入编码电路进行封锁,避免其他选手再次进行抢答;(4)当选手将问题回答完毕,主持人操作计分开关,计分电路采用十进制加减计数器、数码管显示。本轮抢答完毕,主持人操作控制开关,使系统回复到禁止工作状态,以便进行下一轮抢答。 指导教师(签字):系主任(签字): 批准日期:年月日

单片机电子时钟课程设计实验报告

单片机电子时钟课程设 计实验报告 Pleasure Group Office【T985AB-B866SYT-B182C-BS682T-STT18】

《单片机原理与应用》课程设计 总结报告 题目:单片机电子时钟(带秒表)的设计 设计人员:张保江江润洲 学号: 班级:自动化1211 指导老师:阮海容 目录 1.题目与主要功能要求 (2) 2.整体设计框图及整机概述 (3) 3.各硬件单元电路的设计、参数分析及原理说明 (3) 4.软件流程图和流程说明 (4) 5.总结设计及调试的体会 (10) 附录 1.图一:系统电路原理图 (11) 2.图二:系统电路 PCB (12) 3.表一:元器件清单 (13) 4.时钟程序源码 (14)

题目:单片机电子时钟的设计与实现 课程设计的目的和意义 课程设计的目的与意义在于让我们将理论与实践相结合。培养我们综合运用电子课程中的理论知识解决实际性问题的能力。让我们对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、焊接技术、相关仪器设备的使用技能等方面得到较全面的锻炼和提高,为今后能够独立完成某些单片机应用系统的开发和设计打下一个坚实的基础。 课程设计的基本任务 利用89C51单片机最小系统,综合应用单片机定时器、中断、数码显示、键盘输入等知识,设计一款单片机和简单外设控制的电子时钟。 主要功能要求 最基本要求 1)使用MCS-51单片机设计一个时钟。要求具有6位LED显示、3个按键输入。 2)完成硬件实物制作或使用Pruteus仿真(注意位驱动应能提供足够的电流)。 3)6位LED数码管从左到右分别显示时、分、秒(各占用2位),采用24小时标准计时制。开始计时时为000000,到235959后又变成000000。 4)使用3个键分别作为小时、分、秒的调校键。每按一次键,对应的显示值便加1。分、秒加到59后再按键即变为00;小时加到23后再按键即变为00。在调校时均不向上一单位进位 (例如分加到59后变为00,但小时不发生改变)。 5) 软件设计必须使用MCS-51片内定时器,采用定时中断结构,不得使用软件延时法,也不得使用其他时钟芯片。 6)设计八段数码管显示电路并编写驱动程序,输入并调试拆字程序和数码显示程序。7)掌握硬件和软件联合调试的方法。 8)完成系统硬件电路的设计和制作。 9)完成系统程序的设计。 10)完成整个系统的设计、调试和制作。

我的课程设计报告心得体会(大全)

我的课程设计报告心得体会(大全) 我的课程设计报告心得体会(大全) 一 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。 回顾起此次单片机课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说三极管PNP管脚不懂怎么放置,不懂分得二极管的正负极,对单片机汇编语言掌握得不好……通过这次课程设计之后,一定把以前所学过的知识重新温故。

这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在梁强老师的辛勤指导下,终于游逆而解。同时,在梁强老师的身上我学得到很多实用的知识,在次我表示感谢!同时,对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢! 二 课程设计的心得体会 做了两周的课程设计,有很多的心得体会,有关于单片机方面的,更多的是关于人与人之间关系方面的。 我们组一共有三个人,但其他两个人是真的神龙见首不见尾,除了在最后答辩的时候他们一起坐在了我旁边,冠冕堂皇的指着我画了几遍的图说了几嘴,我想可能他们自己都不知道自己在说怎么,虽然有的东西他们也答出来了。我佩服他们的勇气,羡慕他们的运气(我见到的很多做了10 天的人最后的成绩都有不如他们的),但是鄙视他们的做法。 所幸的是,我得到了很多同学的帮助。我想没有他们我可能都要放弃了,因为我本人对单片机也并不是很熟悉,学的东西好像它是它,我是我似的,理论联系不了实际。以前的汇编语言没学好,一开始的程序这块儿就要令我抓狂了。后来请教我们班的一个男生,每次跟他一起到试验室调试程序(他们组也只有他一个人动手),看他边做边给我讲解。最后在开发机上做出来的时候,虽然不是我自己

计算机硬件课程设计--简单模型机设计

计算机硬件课程设计--简单模型机设计

计算机硬件综合课程设计报告

简单模型机设计 一、设计要求 硬件:TDN-CM+计算机组成原理实验系统一台,PC机一台,排线若干,串口线一根。 软件:CMP软件 二、设计目的 1.通过对一个简单计算机的设计,对计算机的基 本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。 2.通过这次课程设计,建立整机的概念,对程序 进行编辑,校验,锻炼理论联系实际的能力。 3.通过本次课程设计熟悉和训练设计思路与实 现方法。 4.通过本次课程设计锻炼团队合作的能力和团 队问题的解决。

三、设计电路及连线 设计电路及连线实验图如下图1-1所示。 图1-1 简单模型机连线图 四、设计说明 本次课程设计将能在微程序控制下自动产生各部件单元控制信号,实现特定指令的功能。这里,计算机数据通路的控制将由微程序控制器

来完成,CPU 从内存中取出一条机器指令到指令执行结束的一个指令周期全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。 本次课程设计采用五条机器指令:IN (输入)、ADD (二进制加法)、STA (存数)、OUT (输出)、JMP (无条件转移),其指令格式如下(前4位为操作码): 助记符 机器指令码 说 明 微程序入口地址 IN 0000 0000 “INPUT DEVICE ”中 10 的开关状态→R0 0001 0000 ×××× ×××× R0+[addr]→R0 11 0010 0000 ×××× ×××× R0→[addr] 12 0011 0000 ×××× ×××× [addr]→BUS 13 0100 0000 ×××× ×××× addr →PC 14 ADD addr STA

课程设计个人总结

课程设计个人总结 我们完成了为期两周的课程设计,通过这次课程设计我深深体会到,在已度过的大学时间里,我们大多数接触的是专业课.我们在课堂上掌握的仅仅是专业课的理论知识, 如何去锻炼我们的实践能力?如何把我们所学的专业基础课理论知识运用到实践中去呢?我想做类似的课程设计就为我们提供了良好的实践平台。 虽然在大三开学初我对这门课并没有什么兴趣, 觉得那些程序枯燥乏味, 但在这次课程设计后我发现自己在一点一滴的努力中对它的兴趣也在逐步的增加。我们有四位同学一起合作,我们默契的配合使我们组第一个完成了我们的设计,而且设计达到了我们预期的效果。这次课程设计对我来说学到的不仅是那些知识,更多的是团队和合作。现在想来,也许学校安排的课程设计有着它更深层的意义吧, 它不仅仅让我们综合那些理论知识来运用到设计和创新中, 还让我们知道了一个团队凝聚在一起时所能发挥出的巨大潜能巨大力量!两周来我们一起找资料,选方案,再选方案是大家意见不统一然后我们一起上网进行查阅敲定方案后进行仿真,焊接调试程序,最后我们的篮球电子裁判器设计成功完成。两个星期后的今天我已明白课程设计对我来说的意义, 它不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力,更重要的是同学间的团结,使得我们这次比别的同学节省了时间,。 回顾起此课程设计,至今我仍感慨颇多,从理论到实践,在这段日子里,可以说得是苦多于甜,但是可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。设计过程中,也对团队精神的进行了考察,让我们在合作起来更加默契,在成功后一起体会喜悦的心情。果然是团结就是力量,只有互相之间默契融洽的配合才能换来最终完美的结果。 在这学期的课程设计中,不仅培养了我们的独立思考、动手操作的能力,在各个其它能力上也都有了提高。更重要的是,在课程设计中,我们学会了很多学习的方法,而这是今后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。就像中国提倡的艰苦奋斗一样,我们在完成这次课程设计后变的更加成熟,能够面对需要面对的事情 ---吴丽娜

嵌入式课程设计电子词典硬件设计

嵌入式课程设计电子词典硬件设计

————————————————————————————————作者:————————————————————————————————日期:

上海电力学院 嵌入式系统 课程设计报告 题目:电子词典的设计 姓名: 学号: 院系: 专业年级: 同组成员: 年月日

一、实验内容及要求 在LCD屏幕左侧绘制出单词输入框和释义显示框以及一个搜索键,右侧绘制4*4键盘按钮,模拟出简易电子词典的功能,按钮操作用触摸屏或键盘实现均可。 实现功能: (1)LCD屏幕上显示4*4键盘,显示单词及其翻译、例句。 (2)一个键可完成2个英文字母的输入,如左上角第一个键可实现输入a,b两个字母,第一次按下时为输入a,如果需输入b,只需连续快速按键两次即可。 (3)在输入完单词后,点击搜索键,即可在释义显示框中显示该单词的词性、中文解释、示例词组和句子等。 (4)当发现输入的单词在库中不存在时,可实现将该单词添加入库的操作。 二、设计思路 (1)通过LCD显示模块画出电子词典操作界面。 (2)对应界面中各键的位置设置键盘对应键值。 (3)设定功能键,实现以下3个功能:①退格键:删除最后一位字母;②搜索∕保存键:对输入框的单词进行判断,若单词存在于词库中,则显示单词词性、词义、例句;若单词不存在则自动进行保存;③转换键:按下后,字母键输出对应的第二个字母。 (4)按键后赋值并显示。 三、软件构架 开 LCD模块 键盘 结

四、模块分析 (1)键盘模块 流程图: 源代码:/********************************************************************************************* * File : keyboard.c * Author: embest * Desc : keyboard source code * History: *********************************************************************************************/ /*--- include files ---*/ 开键盘初始键盘是Y 读取是否是功Y N 执行赋显结束 N

微机原理课程设计实验报告DOC

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 课程名称: 学年学期: 指导教师: 年月

课程设计成绩评定表 学生姓名学号成绩 专业班级起止时间2011.12.24—2012.11.28 设计题目字符串动画显示 指 导 教 师 评 语 指导教师: 年月日

目录 一、课程设计的目的 (1) 二、设计题目 (1) 三、设计内容要求 (2) 四、设计成员及分工 (2) 五、课程设计的主要步骤 (2) 六、课程设计原理及方案 (3) 七、实现方法 (3) 八、实施结果 (8) 九、总结 (8) 十、体会感受 (8)

一、课程设计的目的 课程设计是以自己动手动脑,亲手设计与调试的。它将基本技能训练、基本工艺知识和创新启蒙有机结合,培养我们的实践和创新能力。课程设计的意义,不仅仅是让我们把所学的理论知识与实践相结合起来,提高自己的实际动手能力和独立思考的能力。作为信息时代的大学生,基本的动手能力是一切工作和创造的基础和必要条件。 课程设计是培养和锻炼学生在学习完本门课后综合应用所学理论知识解决实际工程设计和应用问题的能力的重要教学环节,它具有动手、动脑和理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。 《微机原理及应用》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性的设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。所以通过有针对性的课程设计,使学生学会系统地综合运用所学的理论知识,提高学生在微机应用方面的开发与设计本领,系统的掌握微机硬软件设计方法。 通过课程设计实践,不仅要培养学生的实际动手能力,检验学生对本门课学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书等表达设计思想和结果的能力。培养学生事实求是和严肃认真的工作态度。 通过设计过程,要求学生熟悉和掌握微机系统的软件设计的方法、设计步骤,使学生得到微机开发应用方面的初步训练。让学生独立或集体讨论设计题目的系统方案论证设计、编程、软件调试、查阅资料、编写说明书等问题,真正做到理论联系实际,提高动手能力和分析问题、解决问题的能力,实现由学习知识到应用知识的初步过渡。通过本次课程设计使学生熟练的熟练掌握微机系统的设计方法,熟练应用8086汇编语言编写应用程序和实际设计中的软件调试方法和步骤,熟悉微机系统的软件开发工具的使用方法。 二、设计题目

个人信息管理系统毕业课程设计实验报告

(此文档为word格式,下载后您可任意编辑修改!) 山东交通学院 目录 1.系统分析 (2) 1.1系统需求分析 (2) 1.2项目规划 (2) 1.3系统功能结构分析 (3) 1.4设计目的分析 (3) 2.数据库系统设计 (4) 2.1数据表概要设计 (4) 2.2数据库逻辑结构设计 (4) 3.应用程序设计 (5) 3.1界面设置 (5) 3.2关键技术 (15) 4.系统安装 (20) 建立数据源 (20) 5.设计体会 (21) 参考文献 (22)

摘要 随着经济社会的发展,计算机已被应用到社会生活的各个领域。与此同时,互联网作为信息技术的通信桥梁连接着全球的计算机,而网站作为网络信息主要的表现形式而且还是互联网信息的主要承载者,在网络上表现出其及其重要的地位,并发挥着极其重要的作用。无论是在国内还是国外都得以迅速的发展和壮大,并被人们重视和关注。互联网已经彻底的改变了世界,互联网的世界里蕴藏着无限的可能,在这种情况下,各行各业及其个人、单位、工厂、企事业等等在网上构筑属于自己的网络信息平台,保护自己的网络资源并在互联网上开辟自己的市场和消费群体,以及构造自己的数字化世界和加强全球范围内不同地域的人们联系交流等等活动也就显的日益重要。于是各种各样的网站便如雨后春笋般地出现鱼龙混杂且良莠不齐。因此,个人信息的管理就显得尤为重要了。不仅可以更好的保护个人信息,对日常的使用也会提供很大的方便。关键词:个人信息管理系统;数据集;数据库;Visual C++6.0。 1.系统分析 1.1系统需求分析 在做本系统前,我对系统的需求做了如下分析: 1)登录权限:在登录权限的分析上我们规定必须凭借用户名和密码才可登陆,进行管理。 2)使用者功能:首先说明一下,我们的系统用户对象是个人。关于其本系统的功能,大致可分为日记管理,通讯录管理,备忘录管理,以及个人财务管理;日记管理,其中包括用户对日记编号,时间,地点,事件、人物的查询、

物联网传输综合课程设计实验报告 人体红外数据通信实验

物联网传输综合课程设计实验报告 人体红外数据通信实验 一、实验目的 1. 了解基于Z-Stack 协议栈的SappWsn 应用程序框架的工作机制 2. 掌握在ZigBee 协议栈中添加人体红外传感器驱动的方法。 二、实验设备 1. 装有IAR 开发工具的PC 机一台 2. 下载器一个 3. 物联网多网技术开发设计平台一套 三、实验原理 在Z-Stack APP中的HAL\Target\CC2530EB\Includes组中,提供了一个hal_io.h的文件,如图所示。 其中,提供了名为HalIOSetInput 的函数,可以将燃气传感器端口(P1.0)设置为输入,然后通过调用HalIOGetLevel 函数来获取传感器状态。 四、实验步骤 1、将单片机zigbee协调器拆卸下来,取出烧写器。通过Mini USB接口将zigbee 协调器与下载器和PC机相连。

2、将实验箱控制方式切换开关拨至“手动”一侧,转动实验箱“旋钮节点选择”旋钮,使得协调器旁边的LED灯被点亮 3、打开配套代码中的ZStack-CC2530\Projects\SappWsn\SappWsn.eww工程文件,在“Tools”组中,找到“f8wConfig.cfg”文件,双击打开,并找到大概第59 行的“-DZAPP_CONFIG_PAN_ID=0xFFFF”,将其中的“0xFFFF”修改为其他值,例如0x0010

4、在工程目录结构树上方的下拉列表中,选择“CoordinatorEB”,点击工具栏中的“Make”按钮,编译工程,等待工程编译完成,如看到警告,可以忽略。在工程目录结构树中的工程名称上点击鼠标右键,选择“Options”,并在弹出的对话框中选择左侧的“Debugger”,并在右侧的“Driver”列表中选择“Texas Instruments”,点击“Download and Debug”按钮。待程序下载完毕后,点击“Go”按钮,使程序开始运行。点击工具栏中的“Stop Debugging”,退出调试模式, 5、转动实验箱“旋钮节点选择”旋钮,使得热释红外传感器节点旁边的LED灯被点亮,在工程目录结构树上方的下拉列表中,选择“EndDeviceEB”,在“SAPP_Device.h”文件中,取消“HAS_IRPERS”的注释,并保证其他的功能均被注释,如图所示

硬件课程设计报告(电子计算器)

计算机科学与技术学院 硬件课程设计报告 姓名:学号: 专业:计算机科学与技术 班级:计科班 设计题目:电子计算器 成员: 指导教师:职称: 年月

课程设计指导教师评阅书指导教师评语: 成绩:指导教师签字: 年月

摘要 电子计算器的设计主要分为键盘扫描与读取编码、七段LED数码管显示和四则运算的编写。这次设计中我们采用可编程接口芯片8255链接4*4键盘和LED显示屏,从键盘扫描读入数字,在显示屏上面显示出来,并通过cpu运算出结果显示在屏幕上。由于对汇编语言也不甚了解,只是进行一些简单的自然数的四则运算。 由于本次实验中,实验箱是TPC-ZK综合微机开放式实验系统,微机接口实验仪采用模块化、积木式的结构,各实块互不影响。但可通过连线将各实验模块有机组合起来,进行微机外围接口实验。这个实验选择的是4*4键盘连接上8255A然后控制LED显示。 关键词:8255A ;七段LED数码管;键盘;汇编语言;四则运算 目录 1 设计任务与要求 (3) 1.1选题 (3) 1.2需求分析 (3) 1.3设计任务 (3) 2硬件方案 (3) 2.1微处理器8086芯片 (3) 2.2 可编程并行接口8255A芯片 (4) 2.3 4*4矩阵键盘 (6) 2.4 七段LED数码管 (7) 2.5 电路及其功能模块图 (8) 3软件方案 (10) 3.1流程图 (10) 3.2源程序代码 (11) 4 问题与解决方案 (26) 5 成果展示 (26) 6 总结 (27) 7 心得体会与收获 (27) 8参考文献 (27)

1 设计任务与设计要求 1.1选题 我选的题目是电子计算器,电子计算器的设计主要分为键盘编码、七段数码管显示、和四则运算法则这三部分。设计时用可编程接口芯片8255A链接4*4键盘和七段LED数码管,8255扫描键盘并通过数码管显示相应的数字,这其中需要一定的汇编程序作为核心支撑,才能正确的使各种功能运行正常。 1.2需求分析 通过对选题的深入了解,电子计算器基本功能可以概括为: 1.可以进行简单的加、减、乘、除四则运算; 2.为了显示的人性化,按下每个数字都要进行反馈显示; 3.数码管只有四位显示,运算数和结果应尽量小于四位数,不然显示不全; 4.计算器能判断个别简单的错误,如除数为零,显示报错; 5.计算器要有清零功能,可以在按键失误后重新按键。 在显示屏上可以及时反馈按下数字,这需要扫描程序模块一直运行着,并能够及时调用显示程序模块,当有运算符号按下时还要及时给之前按下的数字进行组装成一个数值,组装键值模块也是程序的重要所在。等等这些都是在主程序下合理安排、运用流畅的,才能带来较完美的计算器体验。 1.3设计任务 本次实验我分为电路设计和编码设计这两个任务模块来设计的。 电路设计主要研究键盘按键位置设计和各个芯片器件之间的连线。 编码设计主要分为键盘扫描读取编码、七段数码管显示编码和四则运算编码。 2 硬件方案 2.1微处理器8086芯片

微机硬件课程设计实验报告

目录 一、基础实验部分 (1) 实验1 存储器读写实验 (1) 实验2 简单I/O口扩展实验 (3) 实验3 8255并行口实验 (4) 实验4 8253定时器/计数器接口实验 (5) 实验5 8259中断控制器实验 (7) 二、综合设计实验部分 (12)

一、基础实验部分 实验1 存储器读写实验 一、实验设备 微机实验箱、8086CPU模块。 二、实验要求 学会用使用工具软件,掌握用单步执行和断点方式运行程序,观察寄存器和内存中的数据变化等程序调试的手段。 三、实验步骤 1、实验接线:本实验无需接线。 2、编写调试程序。 3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。 四、思考题 1、①单步执行到“intram”标号的语句时,ds寄存器的数据是什么?②采用断点方式运行时执行到第一个断点处,2000H~202FH内存单元的数据是什么?③执行到第二个断点处,2000H~200FH内存单元的数据是什么?④并根据观察结果和对源程序的判读简述源程序的运行效果。 答:①ds寄存器的数据是0100H。 ②2000H~202FH内存单元的数据全是00。 ③2000H~200FH内存单元的数据是AA 55 AA 55 AA 55 AA 55 AA 55 AA 55 AA 55 AA 55。 ④源程序的运行效果是在第一个间断点处可以把数据清零,在第二个间断点处即 可完成赋值。

2、修改程序,实现从2000H 到200FH 单元依次赋值00H~0FH 的功能。 答:程序如下 code segment assume cs:code org 0100h start: mov ax,0100h mov ds,ax ;数据段地址 mov es,ax mov si,1000h ;偏移地址 mov cx,0010h ;循环次数 mov al,0 ;将al 清零 intram: mov [si],al inc si ;将偏移地址+1 inc al ;将al 的值+1 loop intram nop ;设置断点处 jmp start code ends end start 五、出现的问题及解决过程 序号 出现的问题 原因 解决过程 1 不能得到内存单元的运 行结果 未在程序中设置断点 在程序中设置正确断点 2 2000H 到200FH 单元得不 到00H~0FH 设置的循环次数不对 mov cx,0016h 将循环次数改为 mov cx,0010h

实验报告总结(精选8篇)(优秀版)

《实验报告总结》 实验报告总结(一): 一个长学期的电路原理,让我学到了很多东西,从最开始的什么都不懂,到此刻的略懂一二。 在学习知识上面,开始的时候完全是老师讲什么就做什么,感觉速度还是比较快的,跟理论也没什么差距。但是之后就觉得越来越麻烦了。从最开始的误差分析,实验报告写了很多,但是真正掌握的确不多,到最后的回转器,负阻,感觉都是理论没有很好的跟上实践,很多状况下是在实验出现象以后在去想理论。在实验这门课中给我最大的感受就是,必须要先弄清楚原理,在做实验,这样又快又好。 在养成习惯方面,最开始的时候我做实验都是没有什么条理,想到哪里就做到哪里。比如说测量三相电,有很多种状况,有中线,无中线,三角形接线法还是Y形接线法,在这个实验中,如果选取恰当的顺序就能够减少很多接线,做实验就应要有良好的习惯,就应在做实验之前想好这个实验要求什么,有几个步骤,就应怎样安排才最合理,其实这也映射到做事情,不管做什么事情,就应都要想想目的和过程,这样才能高效的完成。电原实验开始的几周上课时间不是很固定,实验报告也累计了很多,第一次感觉有那么多实验报告要写,在交实验报告的前一天很多同学都通宵了的,这说明我们都没有合理的安排好自己的时间,我就应从这件事情中吸取教训,合理安排自己的时间,完成就应完成的学习任务。这学期做的一些实验都需要严谨的态度。在负阻的实验中,我和同组的同学连了两三次才把负阻链接好,又浪费时间,又没有效果,在这个实验中,有很多线,很容易插错,所以要个性仔细。 在最后的综合实验中,我更是受益匪浅。完整的做出了一个红外测量角度的仪器,虽然不是个性准确。我和我组员分工合作,各自完成自己的模块。我负责的是单片机,和数码显示电路。这两块都是比较简单的,但是数码显示个性需要细致,由于我自己是一个粗心的人,所以数码管我检查了很多遍,做了很多无用功。 总结:电路原理实验最后给我留下的是:严谨的学习态度。做什么事情都要认真,争取一次性做好,人生没有太多时间去浪费。 实验报告总结(二): 在分子生物学实验室为期两个月的实习使我受益匪浅,我不仅仅学习到了专业知识,更重要的是收获了经验与体会,这些使我一生受用不尽,记下来与大家共勉:

硬件课程设计报告 南理工

复杂模型机设计实验 专业:软件工程 班级:1000505 组员: 组员:

一、实验目的 综合运用所学计算机组成原理知识,设计并实现较为完整的计算机。 二、实验设备 PC机一台,TD-CMA实验系统一套。 三、实验原理 下面讲述一下模型计算机的数据格式及指令系统。 1.数据格式 模型机规定采用定点补码表示法表示数据,字长为8位,8位全用来表示数据(最高位不表示符号),数值表示范围是: 0≤X≤28-1。 2.指令设计 模型机设计三大类指令共十五条,其中包括运算类指令、控制转移类指令,数据传送类指令。运算类指令包含三种运算,算术运算、逻辑运算和移位运算,设计有6条运算类指令,分别为:ADD、AND、INC、SUB、OR、RR,所有运算类指令都为单字节,寻址方式采用寄存器直接寻址。控制转移类指令有三条HLT、JMP、BZC,用以控制程序的分支和转移,其中HLT为单字节指令,JMP和BZC为双字节指令。数据传送类指令有IN、OUT、MOV、LDI、LAD、STA共6条,用以完成寄存器和寄存器、寄存器和I/O、寄存器和存储器之间的数据交换,除MOV指令为单字节指令外,其余均为双字节指令。 3.指令格式 其中, IN和 OP-CODE为操作码,RS为源寄存器,RD为目的寄存器,P为I/O端口号,占用一个字节。 系统设计五种数据寻址方式,即立即、直接、间接、变址和相对寻址,LDI 指令为立即寻址,LAD、STA、JMP和BZC指令均具备直接、间接、变址和相对寻

址能力。 LDI LAD、 其中M。 表5-3-2 寻址方式 4.指令系统 根据模型机所要完成的功能设计自己的指令系统。列出了各条指令的格式、汇编符号、指令功能。 四、总体设计 本模型机的数据通路框图如图5-3-2所示。

数字电压表课程设计实验报告

自动化与电气工程学院 电子技术课程设计报告 题目数字电压表的制作 专业 班级 学号 学生姓名 指导教师 二○一三年七月

一、课程设计的目的与意义 1.课程设计的主要目的,是通过电子技术综合设计,熟悉一般电子电路综合设计过程、设计要求、完成的工作内容和具体的设计方法。 2.同时了解双积分式A/D转换器ICL7107的性能及其引脚功能,熟悉集成电路ICL7107构成直流数字电压表的使用方法,并掌握其在电路中的工作原理。 3.通过设计也有助于复习和巩固以往的模电、数电内容,达到灵活应用的目的。在完成设计后还要将设计的电路进行安、调试以加强学生的动手能力。在此过过程中培养从事设计工作的整体观念。 4.利用双积分式A/D转换器ICL7107设计一数字电压表,量程为-1.99—+1.99,通过七段数码管显示。 二、电路原理图 数字电压表原理图

三、课程设计的元器件 1.课程设计所使用的元器件清单: 2.主要元器件介绍 (1)芯片ICL7107: ICL7107的工作原理 双积分型A/D转换器ICL7107是一种间接A/D转换器。它通过对输入模拟电压和参考电压分别进行两次积分,将输入电压平均值变换成与之成正比的时间间隔,然后利用脉冲时间间隔,进而得出相应的数字性输出。 它的原理性框图如图所示,它包括积分器、比较器、计数器,控制逻辑和时钟信号源。积分器是A/D转换器的心脏,在一个测量周期内,积分器先后对输入信号电压和基

准电压进行两次积分。比较器将积分器的输出信号与零电平进行比较,比较的结果作为数字电路的控制信一号。时钟信号源的标准周期Tc 作为测量时间间隔的标准时间。它是由内部的两个反向器以及外部的RC组成的。其振荡周期Tc=2RCIn1.5=2.2RC 。 ICL7106A/D转换器原理图 计数器对反向积分过程的时钟脉冲进行计数。控制逻辑包括分频器、译码器、相位驱动器、控制器和锁存器。 分频器用来对时钟脉冲逐渐分频,得到所需的计数脉冲fc和共阳极LED数码管公共电极所需的方波信号fc。 译码器为BCD-7段译码器,将计数器的BCD码译成LED数码管七段笔画组成数字的相应编码。 驱动器是将译码器输出对应于共阳极数码管七段笔画的逻辑电平变成驱动相应笔画的方波。 控制器的作用有三个:第一,识别积分器的工作状态,适时发出控制信号,使各模拟开关接通或断开,A/D转换器能循环进行。第二,识别输入电压极性,控制LED 数码管的负号显示。第二,当输入电压超量限时发出溢出信号,使千位显示“1" ,其余码全部熄灭。 钓锁存器用来存放A/D转换的结果,锁存器的输出经译码器后驱动LED 。它的每个测量周期自动调零(AZ)、信号积分(INT)和反向积分(DE)三个阶段。

相关主题
文本预览
相关文档 最新文档