计算机硬件技术基础课程设计报告

河北工业大学计算机硬件技术基础(MCS-51)20##年课程设计报告

一、题目:

广告灯的数字显示(1)

二、问题的提出

     简述提出你确定的题目的目的。

(1)   培养学生综合运用所学单片机知识来解决常见的问题的能力。

(2)   熟悉和掌握单片机的内部结构及工作原理。

(3)   掌握单片机的接口技术及相关外围芯片的外特性和控制方法。

(4)   通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。

(5)   通过编写程序,培养学生严密的逻辑思维能力和修改创新的能力。

三、总体设计

1、分析问题的功能

运用单片机原理知识解决生活中常见的用LED广告灯显示循序,可以有一次点亮,循环闪亮以及共同闪亮等功能。

2、系统总体结构设计

1)硬件设计:

 选用8031单片机和TKSMonitor仿真器,通过P1口输出连接八个LED发光二极管由T/CO定时器控制定时。

2)软件设计:程序分为三个部分,分别控制八个LED灯的依次点亮、轮流点亮和全部点亮闪烁五次。

四、详细设计:

1、硬件详细设计:

1)画出电路图;

 

2)进行硬件资源分配(包括I/O口地址、所用各存储单元的用途)。

P1.0到P1.7依次连接八个LED发光二极管

2、软件详细设计:

功能一,依次点亮,实现方法就是通过逻辑“与”操作改变累加器A的值然后从P1口输出控制灯的点亮。功能二,轮流点亮,通过给再次给累加器A 赋值使其输出只亮一个灯,然后让累加器A的值自身错位循环输出,来控制灯的轮流点亮。功能三,共同闪亮,依旧是改变累加器A中的值,通过取反操作实现灯的共同亮灭。

3、设计中的主要困难及解决方案

1)困难1:对每个功能进行计时。

解决方案:采用定时器0,方式1,定时50MS中断,软件计数器采用R2,计数10 次。

2)困难2:实现功能模块之间的连接和循环。

解决方案:采用R3计数,功能一需要八次计数,功能二需要八次计数,功能三五次亮灭需要十次计数,之后将R3赋0,将这些程序放入T/C0中断程序中实现循环调用,通过对人R3值的范围划分实现模块的跳转。

三、程序清单

列出.ASM或.LST文件清单。

                   ORG    8000H

                   AJMP   MAIN

                   ORG    800BH

                   AJMP   T0S

MAIN:   MOV    A,#0FEH

           MOV    SP,#60H

                   MOV    R4,0FFH

           MOV    TMOD,#01H;采用定时器0,方式1

           MOV    TH0,#4CH

           MOV    TL0,#00H;赋定时初值

                 MOV    R2,#00H

                   MOV    R3,#00H

                 MOV    IE,#10000010B;开中断

                   SETB    TR0;开始计时

                   SJMP   $

T0S:               MOV    TH0,#4CH

           MOV    TL0,#00H;重新赋初值

                   INC    R2

                   CJNE   R2,#10,NEXT1;计数不足十次跳转NEXT1,实现0.5秒延时

                   INC    R3

                   CLR    C

                   CJNE   R3,#09H,LOOP1;R3不等于9跳转LOOP1

                   AJMP   LOOP2

LOOP1:  JNC    LOOP2;R3小于9继续进行实现依次点亮

                   XCH    A,R4;保护A中初值

           ANL    A,R4;由低位向高位依次变0

                   MOV    P1,A

                   XCH    A,R4;换回初值

                   RL     A

                   AJMP   NEXT2

LOOP2:  CLR    C

                   CJNE   R3,#11H,LOOP3;R3不等于17跳转

                   MOV    A,#00H

                   AJMP   LOOP4

LOOP3:  JNC    LOOP4;R3小于17继续向下进行轮流点亮

                   MOV    P1,A

                   RL     A;由低位向高位循环

                   AJMP   NEXT2

LOOP4:  CLR    C

                   CJNE   R3,#1BH,LOOP5

           AJMP   LOOP6

LOOP5:    JNC    LOOP6;R3小于27继续向下进行共同点亮

                   MOV    P1,A

                   CPL    A

                   AJMP   NEXT2

LOOP6:  MOV    R3,#00H;重新赋初值循环

                   MOV    R4,#0FFH

                   MOV    A,#0FEH

NEXT2:            MOV    R2,#00H

NEXT1:  RETI

                   END

 

四、调试程序的方法

1)硬件调试方法(确定硬件工作是否正常)

首先从从书中寻找例题连接硬件运行,看硬件工作是否正常。在运行本次实验程序(汇编无错误),看结果是否正确。

2)软件调试方法(如何调试程序的方法)

将所编写的实验程序在Keil 软件中进行编译,看是否有错误出现,根据编译结果,如果出现错误,则根据错误提示修改。修改后再进行编译,如果还不能达到要求的结果,继续进行修改,直到所编写的程序无误。

五、你所设计的程序最终完成的功能

1)说明你编制的程序能完成的功能;

程序运行后,每隔0.5s接在P1 口的8个发光二极管依次点亮0,1,2,3,4,5,6,7,接着8个二极管轮流点亮0,1,2,3,4,5,6,7,然后8个发光二极管全部点亮,闪烁5 次,之后全灭;如此反复循环。

六、对该设计题目有何更完善的方案

1、对自己完成程序进行自我评价。

所有程序语言都是我自己运用课本所学知识编制的,可能存在程序语句繁琐的地方,当然涉及到定时时也没有进行校正,语句标号用的过于一致,功能划分不明显。

2、对课题提出更完善的方案。

(1)实现的功能过于单一,也就是说可以增加LED灯闪亮的不同方式.

(2)对时间控制也可以变化。

(3)可以通过对LED灯的控制实现图案的拼接。

五、收获及心得体会

1、,首先是分析问题、解决问题能力的提高,其次逻辑思维能力的提高,再次还有动手能力、学习能力的提高。

 

2、通过本次课程设计,我最大收获和心得体会就是自信心的增加,不怕问题有多难,只要敢想敢做就一定会实现。另外培养了学习兴趣,使自己枯燥的理论学习跟现实生活中的现象联系起来,反而激发了学习的积极性,最后就是初步熟练掌握单片机原理结构知识,为以后的深入学习奠定基础。

 

日期: 20##年12月 15日  

 

第二篇:计算机硬件技术基础课程设计任务书(01)液晶显示+广告灯_C-

河北工业大学计算机硬件技术基础(MCS-51单片机原理及应用)

课程设计任务书

学院 班级 设计人 成绩

一、题目:液晶显示+广告灯的数字显示

二、目的与要求:

1.目的:

(1) 培养学生综合运用所学单片机知识来解决常见的问题的能力。

(2) 熟悉和掌握单片机的内部结构及工作原理。

(3) 掌握单片机的接口技术及相关外围芯片的外特性和控制方法。

(4) 通过实际程序设计和调试,逐步掌握模块化程序设计方法和调试技术。

2.基本要求:

(1) 利用汇编语言编制出实现其功能的程序;

(2) 利用现有的实验设备将程序调试通过。

3.创新要求:

在基本要求达到后,进行创新设计,如改变的小灯显示方式、LED显示器显示的数字随着小灯的显示方式变化等等。

三、设计方法和基本原理:

1.问题描述:

? 接线要求:

断开电源,将P1 口的8个引脚分别接8位发光二极管0,1,2,3,4,5,6,7, ? 程序要求:

(1)程序运行后,每隔0.5s接在P1 口的8个发光二极管依次点亮0,1,2,3,4,5,6,7,接着8个二极管轮流点亮0,1,2,3,4,5,6,7,然后8个发光二极管全部点亮,闪烁5 次,之后全灭;如此反复循环。

(2)在发光二极管点亮的同时,要求用4块LED显示器将点亮灯的位置显示出来,全部点亮时。

2.问题的解决方案:

(1)按接线要求连线

(2)8个发光二极管依次点亮及轮流点亮通过将A中的内容带进位的循环移位(在移位时注意进位标志位Cy的变化),然后送入P1口来实现。

(3)时间间隔可以采用软件延时的方法。

四、主要技术问题的描述:

? 时间间隔可采用软件延时或定时器定时,软件延时:

8031时钟频率11.0592MHz,延时0.5S

2-1

五、书写设计报告的要求:

设计报告中包含以下几个方面:

1、 设计题目

2、 总体设计

1)

2) 所实现的功能描述。 设计方案的描述。

3、 硬件系统设计,包括所需设备,接线方式,以及资源分配。

4、 软件系统的设计,包括划分功能模块,写出各个功能模块实现的功能。画出程序流程图

5、 列出程序清单,并加以必要的注释

6、 写出调试程序的方法

7、 指出所设计问题的不足和改进方案

8、 自评分和收获体会

六、课程设计的考核方式及评分方法

1.考核方式

课程设计结束时,在机房当场验收。

(1) 学生演示,老师检查运行结果是否正确。

(2) 回答教师提出的问题。

(3) 学生提交课程设计报告(A4纸打印),并将电子文档和源程序发至知道教师信箱。

2.评分方法

(1) 出勤率

(2) 课程设计准备工作

(3) 课程设计期间纪律

(4) 课程设计运行结果

(5) 课程设计报告 (6)答辩情况

2-2

相关推荐