课程设计讲义.docx
- 文档编号:26201723
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:108
- 大小:866.82KB
课程设计讲义.docx
《课程设计讲义.docx》由会员分享,可在线阅读,更多相关《课程设计讲义.docx(108页珍藏版)》请在冰豆网上搜索。
课程设计讲义
课程设计
课程设计说明…………………………………………………………………1
题A交通灯控制………………………………………………………………3
题B步进电机控制……………………………………………………………7
题C多路智能抢答器…………………………………………………………12
题D多波形发生器……………………………………………………………19
题E红外遥控解码器……………………………………………………………27
题F计算器……………………………………………………………………34
题G频率计………………………………………………………………………46
题H数字集成电路故障测试仪………………………………………………66
课程设计说明
一、课程设计的基本要求:
单片机课程设计的主要内容包括:
理论设计、调试与仿真、撰写设计报告等。
其中理论设计又包括选择总体方案,硬件系统设计、软件系统设计;硬件设计包括单元电路,选择元器件及计算参数等;软件设计包括模块化层次结构图,程序流程图。
程序设计是课程设计的关键环节,通过调试进一步完善程序设计,使之达到课题所要求的指标,使理论设计更接近于实际产品。
课程设计的最后要求是写出设计总结报告,把理论设计内容,调试的过程及性能指标的测试结果进行全面的总结,把实践内容上升到理论高度。
单片机课程设计的教学采用相对集中的方式进行,以班为单位全班学生集中到单片机实验室(8B203)进行实训,每人配备一台PC机、一套超想一3000单片机综合实验箱、相关的软件及电子元器件等器材设备。
做到实训教学课堂化,严格考勤制度,在实训期间(一周)累计旷课达到6节以上,或者迟到、早退累计达到8次以上的学生,该课程考核按不及格处理。
在实训期间需要外出查找资料、购买电子元器件时,必须向指导老师请假,经同意后方可外出。
课程设计的任务相对分散,每3-5名学生组成一个小组,完成一个课题的设计。
小组成员既有分工、又要协作,同一小组的成员之间可以相互探讨、协商,可以互相借鉴或参考别人的设计方法和经验。
但每个学生必须单独完成设计任务,要有完整的设计资料,独立撰写设计报告,设计报告雷同率超过50%的课程设计考核按不及格处理。
二、进度安排:
单片机课程设计共安排1周,合计40学时,具体分配如下:
✧实训动员、准备工作及选题:
2学时
✧总体方案设计:
4学时
✧硬件设计及仿真:
5学时
✧软件设计:
9学时
✧软件调试:
4学时
✧整机测试:
3学时
✧撰写设计报告:
9学时
✧答辩与总结:
4学时
该时间只是粗略进行划分,各个组员可依据进度完成情况,适当调整,但需确保整个设计能按期完成。
三、设计报告要求:
设计完成后,必须撰写课程设计报告。
设计报告必须独立完成,格式符合要求,文字(不含图形、程序)不少于3000字,图形绘制规范,装订成册。
设计报告的格式如下:
1、封面
2、内容提要
3、目录
4、正文
(1)所作题目的意义、原理等,本人所做的工作及系统完成的主要功能;
(2)硬件电路设计及描述(要有原理框图和原理图);
(3)软件设计流程及描述(要有程序流程图);
(4)设计调试过程(分步进行);
(5)源程序代码(要有注释);
5、心得体会
6、参考文献
四、考核方法:
单片机课程设计的考核方式为考查,考核结果为优秀、良好、中等、及格和不及格五种,70-79分之间为中等,分数在90-100之间为优秀,80-89分之间为良好,60-69分之间为及格,60分以下为不及格。
考核分三个方面进行:
设计制作40%;设计报告30%;设计答辩30%。
表1.1是单片机课程设计的考核成绩记录表。
表1.1单片机课程设计考核成绩记录表:
1、设计制作:
40分
(1)创新设计:
50%
包括总体设计方案、硬件系统的设计、软件系统的设计、程序的调试等。
考核时要查看原始设计资料和相关记录,分段进行考核。
(2)设计质量:
50%
包括硬件的连接、程序固化、硬件调试与仿真。
要求元器件布局合理,连线规范、整洁、牢固,硬件仿真符合设计要求,系统运行稳定可靠。
2、设计报告:
30分
(1)设计报告的完成质量:
70%
设计报告必须独立完成,格式符合要求,文字(不含图形、程序)不少于3000字,图形绘制规范。
(2)平时成绩:
30%
主要考核学生在实训期间的表现,包括考勤、课堂纪律、学习态度、工作作风等方面。
3、课题答辩:
30分
主要回答老师和同学提出的问题,要求思路清晰,语言准确、精练。
对于课程设计中的基本问题、相关的基本知识能够进行解答。
其中对课题内容的熟练程度占80%,答辩中的个人素质占20%。
有下列情形之一者,课程设计考核按不及格处理:
(1)实训期间累计旷课达6节;
(2)实训期间累计迟到、早退达8次;
(3)设计报告雷同率超过50%;
(4)不能完成设计任务,达不到设计要求;
五、供选择的设计课题:
以下课题仅供参考,学生可另选题目,但要先将其设计的简介、整体功能、将要采取的技术方案、路线等以电子文档的形式提交指导老师审核,指导老师同意后方可实行。
选题阶段完成后,原则上不能更换题目。
题A 交通灯控制系统
设计要求
一、基本功能:
1、一路延时60S,一路延时40S(演示时为节省时间,一路延时15S,一路延时10S>>两路时间分别用不同的数码管显示;
2、倒数3S时,黄灯闪亮;
3、紧急通行控制,如某一方向现为红灯,通过按键强行切换为绿灯,而另一路改为红灯,延时若干秒(10S)后,恢复原状态(红灯)继续倒数。
二、扩展功能:
1、增加拐弯方向控制;
2、各方向延时时间可通过键盘重新设定;
3、他自行增加的功能。
参考示例
一、原理说明:
本设计主要是用8255模拟控制交通灯运行情况。
8255有三个8位的并行口,端口既可以编程为普通I/O口,也可以编程为选通I/O口和双向传输口。
8255为总线兼容型,可以与8051的总线直接接口。
其中,口地址取决于片选CS和A1、A0。
选择如下:
8255方式字选择:
本设计中8255编程为PB口、PC口、PA口均输出,根据8255状态控制字选择方法。
8255控制字应为80H。
二、硬件设计:
利用现有的超想-3000TB综合实验仪和超想3000仿真器,硬件电路设计如下:
三、软件设计:
四.参考程序清单:
ORG0000H
MOVSP,#60H
MOVDPTR,#0A003H;;8155初始化
MOVA,#80H
MOVX@DPTR,A
LOOP1:
MOVR2,#08H;;循环次数
MOVDPTR,#CODE0;;字代码首地址送R6、R7
MOVR6,DPH
MOVR7,DPL
MOVDPTR,#CODE1;;位码首地址送R3、R4
MOVR4,DPH
MOVR3,DPL
LOOP0:
CLRA
MOVDPH,R6
MOVDPL,R7
MOVCA,@A+DPTR;;取字形代码
INCDPTR
MOVR6,DPH
MOVR7,DPL;;字代码地址加1后暂存
MOVDPTR,#0A000H;;字形代码送8255的PA口
MOVX@DPTR,A
MOVDPH,R4;;送位选
MOVDPL,R3
PUSHDPH
PUSHDPL
CALLDISP
CALLDELY
POPDPL
POPDPH
INCDPTR;;位码地址加1
MOVR4,DPH
MOVR3,DPL
DJNZR2,LOOP0
SJMPLOOP1
CODE0:
DB07fH,060H,060H,07eH,003H,063H,03eh,000H;"5";;字代码
CODE1:
DB01H,02H,04H,08H,10H,20H,40H,80H;;位代码
DISP:
;;串转并子程序
MOVA,#00H
MOVCA,@A+DPTR
DISP1:
movB,#8;送164
DLP:
rlca
movr3,a
movacc.0,c
movdptr,#0A002H
movx@dptr,a
movdptr,#0A001H
MOVa,#01h
movx@dptr,a
MOVA,#0H
movx@dptr,a
mova,r3
djnzB,DLP
ret
DELY:
SETBRS0;;延时子程序
MOVR5,#3
DELY1:
MOVR6,#10H
DELY2:
MOVR7,#10H
DELY3:
DJNZR7,DELY3
DJNZR6,DELY2
DJNZR5,DELY1
CLRRS0
RET
END
五、测试方法:
1.仿真器上没有配有8255,所以用准备好的8255插在实验仪芯片插座上,并锁紧插座。
2.硬件测试:
用电线把8255各相应引脚插孔分别与单片机引脚插孔,发光二极管组插孔,数码管组插孔。
3.打开实验仪电源,编写程序、编译程序,用单步、断点、连续方式调试程序,排除软件错误。
运行程序,观察实验现象,是否符合本实验要求,如果符合,本实验测试完毕。
六、思考与提高:
1.一路延时8S,一路延时6S,两路时间分别用不同的数码管显示;
2.倒数2S时,黄灯闪亮;
3.紧急通行控制,如某一方向现为红灯,通过按键强行切换为绿灯,而另一路改为红灯,延时8S后,恢复原状态(红灯)继续倒数。
程序该如何修改?
题B步进电机控制系统
设计要求
一、基本功能:
1、加速运转100步,匀速运转100步,减速运转100步,反方向加速100步,反方向匀速100步,反方向减速100步;
2、电机的启动、停止、加减速、正反向等均可由按键控制。
二、扩展功能:
1、一段时间内(SS>将转速加到200转/分钟,匀速运转一段时间(SS)后停止,正反方向均可控制;
2、通过键盘设置电机转动的角度:
步进方式:
即每按一次键,电机转过一定的角度(如360);设定方式:
由键盘直接输入一个电机要旋转的角度,如输入210再按“确定”后,电机旋转210度;正反方向均可控制;
3、其他自行增加的功能。
参考示例
一、原理说明:
步进电机是工业过程控制及仪表中常用的控制元件之一,例如在机械装置中可以用丝杠把角度变为直线位移,也可以用步进电机带螺旋电位器,调节电压或电流,从而实现对执行机构的控制。
步进电机可以直接接收数字信号,不必进行数模转换,用起来非常方便。
步进电机还具有快速启停、精确步进和定位等特点,因而在数控机床、绘图仪、打印机以及光学仪器中得到广泛的应用。
步进电机实际上是一个数字/角度转换器,三相步进电机的结构原理如图所示。
从图中可以看出,电机的定子上有六个等分磁极,A、A′、B、B′、C、C′,相邻的两个磁极之间夹角为60°,相对的两个磁极组成一相(A-A′,B-B′,C-C′),当某一绕组有电流通过时,该绕组相应的两个磁极形成N极和S极,每个磁极上各有五个均匀分布矩形小齿,电机的转子上有40个矩形小齿均匀地分布的圆周上,相邻两个齿之间夹角为9°。
当某一相绕组通电时,对应的磁极就产生磁场,并与转子形成磁路,如果这时定子的小齿和转子的小齿没有对齐,则在磁场的作用下,转子将转动一定的角度,使转子和定子的齿相互对齐。
由此可见,错齿是促使步进电机旋转的原因。
三相步进电机结构示意图
例如在三相三拍控制方式中,若A相通电,B、C相都不通电,在磁场作用下使转子齿和A相的定子齿对齐,我们以此作为初始状态。
设与A相磁极中心线对齐的转子的齿为0号齿,由于B相磁极与A相磁极相差120°,不是9°的整数倍(120÷9=40/3),所以此时转子齿没有与B相定子的齿对应,只是第13号小齿靠近B相磁极的中心线,与中心线相差3°,如果此时突然变为B相通电,A、C相不通电,则B相磁极迫使13号转子齿与之对齐,转子就转动3°,这样使电机转了一步。
如果按照A→B→C的顺序轮流通电一周,则转子将动9°。
步进电机的运转是由脉冲信号控制的,传统方法是采用数字逻辑电路--环形脉冲分配器控制步进电
机的步进。
下图为环形脉搏冲分配器的简化框图。
三相六拍环形脉搏冲分配器
1、运转方向控制。
如图所示,步进电机以三相六拍方式工作,若按A→AB→B→BC→C→CA→A次序通电为正转,则当按A→AC→C→CB→B→BA→A次序通电为反转。
2、运转速度的控制。
图中可以看出,当改变CP脉冲的周期时,ABC三相绕组高低电平的宽度将发生变化,这就导至通电和断电时速率发生了变化,使电机转速改变,所以调节CP脉冲的周期就可以控制步进电机的运转速度。
3、旋转的角度控制。
因为每输入一个CP脉冲使步进电机三相绕组状态变化一次,并相应地旋转一个角度,所以步进电机旋转的角度由输入的CP脉冲数确定。
超想-3000TB实验仪选用的是20BY-0型4相步进电机,其工作电压为4.5V,在双四拍运行方式时,其步距角为18O,相直流电阻为55Ω,最大静电流为80Ma。
采用8031单片机控制步进电机的运转,按四相四拍方式在P1口输出控制代码,令其正转或反转。
因此P1口输出代码的变化周期T控制了电机的运转速度:
n=60/T.N
式中:
n——步进电机的转速(转/分);
N——步进电机旋转一周需输出的字节数;
T——代码字节的输出变化周期。
设N=360°/18°=20,T=1.43ms,则步进电机的转速为2100转/分。
控制P1口输出的代码字节个数即控制了步进电机的旋转角度。
二、硬件设计:
利用现有的超想-3000TB综合实验仪和超想3000仿真器,硬件电路设计如下:
三、软件设计:
正反转步进子制程序框图
步进电机控制主程序框图
四.参考程序清单:
ORG0000H
STRT:
MOVSP,#6FH;初始化
MOV20H,#0;状态寄存器清零
MOVP1,#0F1H;正转A相通电
MLP:
MOVR7,#64H;R7为步计数器,正转100步
MOV42H,#0C8H;42H为延时计数器
MLP0:
MOVR6,42H;调用延时200MS子程序
MLP9:
LCALLDEL
DJNZR6,MLP9
DEC42H
LCALLSTEPS;调用步进子程序
DJNZR7,MLP0;以上为加速程序
MOVR7,#64H;以下为恒速程序
MLP1:
MOVR6,42H
MLPX:
LCALLDEL
DJNZR6,MLPX
LCALLSTEPS
DJNZR7,MLP1
MOVR7,#64H;以下为减速程序
MLP2:
MOVR6,42H
MLPY:
LCALLDEL
DJNZR6,MLPY
LCALLSTEPS
INC42H
DJNZR7,MLP2
CPL7
LJMPMLP
STEPS:
INC20H;正反转步进子程序
ANL20H,#83H
MOVA,20H
ANLA,#3
JB7,STPSC
MOVDPTR,#FTAB
SJMPSTPW
STPSC:
MOVDPTR,#CTAB
STPW:
MOVCA,@A+DPTR
MOVP1,A
RET
FTAB:
DB0F3H,0F6H,0FCH,0F9H
CTAB:
DB79H,7cH,76H,73H
DEL:
MOVR5,#0;延时子程序
DEL0:
DJNZR5,DEL0
RET
END
五、测试方法:
(1)"总线插孔"区的P1.0-P1.3孔接步进电机的BA-BD孔,"发光二极管组"的L0-L3孔接步进电机A、B、C、D孔。
P1.7孔连L7。
(2)打开电源。
观察步进电机的转动状态是否顺时针转动,LED灯是否闪亮。
六、思考与提高:
1、加速运转30步,匀速运转30步,减速运转30步,反方向加速60步,反方向匀速630步,反方向减速60步;
2、电机的启动、停止、加减速、正反向等均可由按键控制。
该如何修改程序?
题C多路智能抢答器
设计要求
一、基本功能:
1、六路抢答,抢答有效时相应的灯亮,并有音乐提示;
2、每轮抢答需主持人按“开始”后,抢答才有效;
3、抢答无效时,有相应的灯及音乐提示;
二、扩展功能:
1、扩展到8路或以上;
2、抢答倒计时提示;
3、各路的参赛者有得分显示;
4、其他自行增加的功能;
参考示例
一、原理说明:
本参考设计实验为六路智能抢答器系统,其分为按键部分和显示部分。
按键“0“用来复位,即清除各标致,按键“F”用来控制抢答开始,并用发光二极管L6表示,亮才能开始抢答有效,“0”和“F”两个按键由主持人控制;按键“1”~“6”代表6个不同的选手按键,发光二极管组L0~L5代表6个不同的选手,抢答成功时,相应的发光二极管才会点亮;用数码管组的低位表示相应抢答成功选手的号码数;用蜂鸣器代表声音提示,响1声代表抢答无效,响4声代表抢答有效。
主持人没有按下“0”键,选手按下相应的键是没有反应的;主持人按下“0”键后,如果还没有按下“F”键,L6不亮,选手按下相应的键,只有蜂鸣器响1声,代表抢打无效;只有主持人先后按先“0”和“F”两个按键,L6被点亮,选手按下相应的键,蜂鸣器响4声,数码管组低位显示相应选手的号码数,也点亮代表相应选手的发光二极;其他选手按键不会改变抢答结果,即按键后不会有任何反应;上面现象代表抢答成功。
二、硬件设计:
实验仪接线图案
按键与显示连接图
三、软件设计:
四、参考程序清单:
OUTBITequ0e101h;位控制口
CLK164equ0e102h;段控制口(接164时钟位)
DAT164equ0e102h;段控制口(接164数据位)
INequ0e103h;键盘读入口
LEDBufequ60h;显示缓冲
ljmpStart
LEDMAP:
;八段管显示码
db3fh,06h,5bh,4fh,66h,6dh,7dh,07h
db7fh,6fh,77h,7ch,39h,5eh,79h,71h
db00H
P1MAP:
db00h,02h,04h,08h,10h,20h,40h,80h
Delay:
;延时子程序
movr7,#0
DelayLoop:
djnzr7,DelayLoop
djnzr6,DelayLoop
ret
DisplayLED:
movr0,#LEDBuf
movr1,#6;共6个八段管
movr2,#00100000b;从左边开始显示
Loop:
movdptr,#OUTBIT
mova,#0
movx@dptr,a;关所有八段管
mova,@r0
movB,#8;送164
DLP:
rlca
movr3,a
movacc.0,c
movdptr,#DAT164
anla,#0fdh
movx@dptr,a
movdptr,#CLK164
orla,#02h
movx@dptr,a
anla,#0fdh
movx@dptr,a
mova,r3
djnzB,DLP
movdptr,#OUTBIT
mova,r2
movx@dptr,a;显示一位八段管
movr6,#1
callDelay
mova,r2;显示下一位
rra
movr2,a
incr0
djnzr1,Loop
ret
TestKey:
movdptr,#OUTBIT
mova,#0
movx@dptr,a;输出线置为0
movdptr,#IN
movxa,@dptr;读入键状态
cpla
anla,#0fh;高四位不用
ret
KeyTable:
;数字键码定义
db00h,01h,04h,07h
db0fh,02h,05h,08h
db0eh,03h,06h,09h
db0dh,0ch,0bh,0ah
db10H,10H,10H,10H,10H
db10H,10H,10H,10H,10H
GetKey:
movdptr,#OUTBIT
movP2,dph
movr0,#Low(IN)
movr1,#00100000b
movr2,#6
KLoop:
mova,r1;找出键所在列
cpla
movx@dptr,a
cpla
rra
movr1,a;下一列
movxa,@r0
cpla
anla,#0fh
jnzGoon1;该列有键入
djnzr2,KLoop
movr2,#0ffh;没有键按下,返回0ffh
sjmpExit
Goon1:
movr1,a;键值=列X4+行
mova,r2
deca
rla
rla
movr2,a;r2=(r2-1)*4
mova,r1;r1中为读入的行值
movr1,#4
LoopC:
rrca;移位找出所在行
jcExit
incr2;r2=r2+行值
djnzr1,LoopC
Exit:
mova,r2;取出键码
movdptr,#KeyTable
movca,@a+dptr
movr2,a
WaitRelease:
movdptr,#OUTBIT;等键释放
clra
movx@dptr,a
movr6,#10
callDelay
callTestKey
jnzWaitRelease
mova,r2
ret
Start:
MOVP1,#0
CLRP3.0
movsp,#40h
movdptr,#0e100h
mova,#03h
movx@dptr,a
movLEDBuf,#0ffh;显示8.8.8.8.
movLEDBuf+1,#0ffh
movLEDBuf+2,#0ffh
movLEDBuf+3,#0ffh
movLEDBuf+4,#0
movLEDBuf+5,#0
ALoop:
callDisplayLED;显示
callTestKey;有键入?
jzALoop;无键入,继续显示
callGetKey;读入键码
anla,#1fh;显示键码
JNZALoop
MOVP1,#0
MOVA,#0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 讲义
![提示](https://static.bdocx.com/images/bang_tan.gif)