单片机 四路抢答器

课程设计说明书

(2009/2010学年第二学期)

课程名称 :题 目 :专业班级 :学生姓名 :学 号 :指导教师 :设计周数 :设计成绩 :

单片机应用课程设计 四路抢答器 电气2班

韩昱 苗敬利 两周(10.6.28-10.07.09)

2010年 7月9日

前言

单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。

随着电子技术和计算机应用的发展,单片机广泛应用于工业自动控制、智能化仪表、计算机外部设备的控制和顺序控制、家用电器、计算机网络、并行处理等系统中,同时,由于许多新颖技术应用于单片机,使单片机的功能趋向于多样化、专用化,指令的功能越来越强。目前,世界上的单片机以Intel、Motorala、 NEC、 Eilog等公司的产品居多,这些公司的单片机主要用于控制和仪器。

随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步,最终人们可能发现:单片机与微机系统之间的距离越来越小,甚至难以辨认。

1 设计目的

随着电子技术的发展, 现在的抢答器功能越来越强, 可靠性和准确性也越来越高。以前的抢答器大部分都是基于数字电路组成的。制作过程复杂, 而且准确性与可靠性不高, 成品和占地面积较大, 安装、维护困难。由于近年来单片机发展迅速, 逐渐出现用单片机制作抢答器, 制作过程简单, 而且安装, 维护简单。而且集成度也越来越高,实现的功能也越来越多,在这样一种迅速发展的势头下,作为一名普通高等学院的学生就一定要掌握如何实现抢答器的功能,熟悉单片机的运行过程和工作原理以及掌握专业相关的知识。

通过课程设计,我们应该知道单片机的各个引脚的作用,以及如何通过编写的程序让它实现我们所需要的功能,其间要进行电路的焊接和程序调试,最后实现我们所需要的功能。

2 设计要求

在这学期最后两周的课程设计中,我们这一组的任务是完成4路智力竞赛抢答器的设计。抢答器在日常生活中经常用到,特别是比赛中,但市场上卖的成品比较贵,有足够的器件和条件,我们可以自己动手做简易的抢答器装置,根据自己的需要进行改进。我们设计的主要内容是:(1)设计按键输入电路;(2)设计显示输出电路;(3)掌握定时器中断的原理;(4)编写程序;(5)利用Protel软件画出硬件电路原理图和PCB图;(6)软硬件联机调试;(7)书写实验报告。

设置4个抢答按钮和1个抢答计时器1个选手显示器,1个比赛主持人“清零开始”键和一个复位键。采用中断和查询结合的方法确定按键的动作。主持人按下“开始”键后,计时器开始倒计时从9到0,若有人抢答,则显示抢答选手号并记录此时时间,用7段LED数码管显示号码,若10秒内无人抢答,则发出3响报警声,主持人可按下“开始”键开始下一题的抢答。

2.1基本功能

(1) 设计一个智力竞赛抢答器,可同时供4名选手或4个代表队参加比赛,

(2) 抢答器具有数据锁存和显示的功能。抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,并记录此时的时间。

2.2 设计基本原理

4路抢答器的设计,主要的部分是MCS-51,编写程序,实现软硬结合,实现抢答功能。采用查询与中断的方式,先等待主持人中断按钮,看是否按下,按下则执行下面的选手查询程序,谁先抢答数码管上显示哪个选手的台号并记录此时的时间。若在10秒到达的时候没有人抢答,就开始报警,宣布此题作废,主持人可以再按下开始键开始下一题的抢答,如此循环。

3.设计内容 3.1 设计所需器材

按键: 电阻:

共计6个;

5K共计5个; 1K共计4个; 10K共计1个; 330共计7个;

电容: 电解电容:

10μf 共计1个; 20PF 共计 2个;

普通电容:

三极管: PNP 3个;

1个; 2个;

蜂鸣器: 共阳数码管:

晶振: 12MHZ 1个; 集成芯片: 89C51: 1个; 底座:

DIP40: 1个;

万能电路板: 1个; 底座

DIP24 1个 。

3.2 器件说明

3.2.1 89C51功能特性描述

89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

89C51具有以下标准功能:

与MCS-51 兼容

4K字节可编程闪烁存储器 全静态工作:0Hz-24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路

端口介绍:

(1)P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑

电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。

(2)P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL

逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2 的触发输入(P1.1/T2EX),具体如下表所示。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能:

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用)

(3)P2 口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL

门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个 TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

(4)P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST——复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG——当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN——程序储存允许

(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

3.2.2 七段数码管

LED数码有共阳和共阴两种,共阳极数码管是指八段数码管的八段发光二极管的阳极(正极)都连在一起,而阴极对应的各段可分别控制。

共阴极数码管是指八段数码管的八段发光二极管的阴极(负极)都连在一起,而阳极对应的各段分别控制。

数码管共阳如图 数码管共阴如图

数码管的显示方式:

三极管除了有放大信号的功能外还有开关作用,多个数码管通过动态显示要正常显示,就要用三极管的开关作用来控制数码管的公共端,并加相应的驱动电路来驱动数码管的各个段码,从而显示出我们要的数字。此电路设计中采用PNP三极管控制共阳型数码管,数码管接限流电阻接至p0口。

限流电阻的确定:R=(电源电压-1.7)/额定电流

显示驱动:动态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,通

过位选信号的选通与否实现单个数码管的点亮,由于人眼有视觉停留效果,就能看到一串数字。基本的半导体数码管是由7个条状的发光二极管(LED)按图1所示排列而成的,可实现数字"0~9"及少量字符的显示。另外为了显示小数点,增加了1个点状的发光二极管,因此数码管就由8

个LED组成,我们分别把这些发光二极管命名为 "a,b,c,d,e,f,g,dp",排列顺序如下图:

3.2.3 蜂鸣器

由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管(pnp)来放大电流就可以了。驱动电路如下图:

程序流程图:

6课程设计心得体会

做了两周的单片机课程设计,我有了很多的体会和感想。这两周的实习真的有点郁闷,程序里面的好多内容不懂,自我感觉是单片机我们所学的内容还不足以编出这两个程序,但是只好硬着头皮去看去理解。但在学习过程中也充满了乐趣,当看懂了程序的一些语句,画出了要求的设计图,那我喜悦那种成就感油然而生。

这次实习让我受益匪浅,无论从知识上还是其他的各个方面。上课的时候的学习从来没有见过真正的单片机,只是从理论的角度去理解枯燥乏味。但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会在QQ群里讨论或者是同学之间相互帮助。团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。

程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。

单片很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助。

附录1 四路抢答器程序

ORG 0H

AJMP MAIN

ORG 000BH

AJMP T0INT

MAIN: MOV TMOD,#01H

MOV TH0,#3CH

MOV TL0,#0B0H

SETB EA

SETB ET0

SETB TR0

START: MOV R1,#0

MOV R2,#0

DL: ACALL DISPLAY

JNB P1.0,DOU

AJMP DL

DOU: ACALL DELAY5MS

JNB P1.0,NEXT

AJMP DL

NEXT: MOV R4,#0

MOV R3,#9

MOV A,R3

MOV R2,A

DW0: ACALL DISPLAY

JNB P1.1,TRVE1

JNB P1.2,TRVE2

JNB P1.3,TRVE3

JNB P1.4,TRVE4

MOV A,R4

CJNE A,#20,DW0

DEC R2

MOV R4,#0

MOV A,R2

CJNE A,#0,DW0

CLR P2.3

MOV R5,#0

DW2: MOV R4,#0

DW1: ACALL DISPLAY

MOV A,R4

CJNE A,#14H,DW1

CPL P2.3

INC R5

MOV A,R5

CJNE A,#5,DW2

DW3: ACALL DISPLAY

JNB P1.0,START

AJMP DW3

TRVE1: MOV R1,#1

AJMP DW3

TRVE2: MOV R1,#2

AJMP DW3

TRVE3: MOV R1,#3

AJMP DW3

TRVE4: MOV R1,#4

AJMP DW3

DISPLAY:SETB P2.6

MOV DPTR,#TAB

MOV A,R1

MOVC A,@A+DPTR

MOV P0,A

CLR P2.7

ACALL DELAY5MS

MOV A,R2

MOVC A,@A+DPTR

SETB P2.7

MOV P0,A

CLR P2.6

ACALL DELAY5MS

RET

T0INT: MOV TH0,#3CH

MOV TL0,#0B0H

INC R4

RETI

DELAY5MS:MOV 31H,#32H

LOOP1: MOV 30H,#32H

LOOP: DJNZ 30H,LOOP

DJNZ 31H,LOOP1

RET

TAB: DB 40H,79H,24H,30H,19H

DB 12H,02H,78H,00H,10H

END

8参考文献

【1】80C51单片机原理与应用技术 吴炳胜 等编 冶金工业出版社

【2】单片机原理及接口技术 梅丽凤 等编 清华大学出版社

【3】电子线路设计.实验.测试(第三版) 谢自美 主编 华中科技大学出版社

注:此表必须在同一页面。

PCB图

课程设计说明书

(2009/2010学年第二学期)

课程名称 :题 目 :专业班级 :学生姓名 :学 号 :指导教师 :设计周数 :设计成绩 :

单片机应用课程设计 四路抢答器 电气2班

韩昱 苗敬利 两周(10.6.28-10.07.09)

2010年 7月9日

前言

单片机是指一个集成在一块芯片上的完整计算机系统。尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:CPU、内存、内部和外部总线系统,目前大部分还会具有外存。同时集成诸如通讯接口、定时器,实时时钟等外围设备。而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。

单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。

随着电子技术和计算机应用的发展,单片机广泛应用于工业自动控制、智能化仪表、计算机外部设备的控制和顺序控制、家用电器、计算机网络、并行处理等系统中,同时,由于许多新颖技术应用于单片机,使单片机的功能趋向于多样化、专用化,指令的功能越来越强。目前,世界上的单片机以Intel、Motorala、 NEC、 Eilog等公司的产品居多,这些公司的单片机主要用于控制和仪器。

随着半导体工艺技术的发展及系统设计水平的提高,单片机还会不断产生新的变化和进步,最终人们可能发现:单片机与微机系统之间的距离越来越小,甚至难以辨认。

1 设计目的

随着电子技术的发展, 现在的抢答器功能越来越强, 可靠性和准确性也越来越高。以前的抢答器大部分都是基于数字电路组成的。制作过程复杂, 而且准确性与可靠性不高, 成品和占地面积较大, 安装、维护困难。由于近年来单片机发展迅速, 逐渐出现用单片机制作抢答器, 制作过程简单, 而且安装, 维护简单。而且集成度也越来越高,实现的功能也越来越多,在这样一种迅速发展的势头下,作为一名普通高等学院的学生就一定要掌握如何实现抢答器的功能,熟悉单片机的运行过程和工作原理以及掌握专业相关的知识。

通过课程设计,我们应该知道单片机的各个引脚的作用,以及如何通过编写的程序让它实现我们所需要的功能,其间要进行电路的焊接和程序调试,最后实现我们所需要的功能。

2 设计要求

在这学期最后两周的课程设计中,我们这一组的任务是完成4路智力竞赛抢答器的设计。抢答器在日常生活中经常用到,特别是比赛中,但市场上卖的成品比较贵,有足够的器件和条件,我们可以自己动手做简易的抢答器装置,根据自己的需要进行改进。我们设计的主要内容是:(1)设计按键输入电路;(2)设计显示输出电路;(3)掌握定时器中断的原理;(4)编写程序;(5)利用Protel软件画出硬件电路原理图和PCB图;(6)软硬件联机调试;(7)书写实验报告。

设置4个抢答按钮和1个抢答计时器1个选手显示器,1个比赛主持人“清零开始”键和一个复位键。采用中断和查询结合的方法确定按键的动作。主持人按下“开始”键后,计时器开始倒计时从9到0,若有人抢答,则显示抢答选手号并记录此时时间,用7段LED数码管显示号码,若10秒内无人抢答,则发出3响报警声,主持人可按下“开始”键开始下一题的抢答。

2.1基本功能

(1) 设计一个智力竞赛抢答器,可同时供4名选手或4个代表队参加比赛,

(2) 抢答器具有数据锁存和显示的功能。抢答开始后,若有选手按动抢答按钮,编号立即锁存,并在LED数码管上显示出选手的编号,并记录此时的时间。

2.2 设计基本原理

4路抢答器的设计,主要的部分是MCS-51,编写程序,实现软硬结合,实现抢答功能。采用查询与中断的方式,先等待主持人中断按钮,看是否按下,按下则执行下面的选手查询程序,谁先抢答数码管上显示哪个选手的台号并记录此时的时间。若在10秒到达的时候没有人抢答,就开始报警,宣布此题作废,主持人可以再按下开始键开始下一题的抢答,如此循环。

3.设计内容 3.1 设计所需器材

按键: 电阻:

共计6个;

5K共计5个; 1K共计4个; 10K共计1个; 330共计7个;

电容: 电解电容:

10μf 共计1个; 20PF 共计 2个;

普通电容:

三极管: PNP 3个;

1个; 2个;

蜂鸣器: 共阳数码管:

晶振: 12MHZ 1个; 集成芯片: 89C51: 1个; 底座:

DIP40: 1个;

万能电路板: 1个; 底座

DIP24 1个 。

3.2 器件说明

3.2.1 89C51功能特性描述

89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的89C51是一种高效微控制器,89C2051是它的一种精简版本。89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

89C51具有以下标准功能:

与MCS-51 兼容

4K字节可编程闪烁存储器 全静态工作:0Hz-24Hz 三级程序存储器锁定 128*8位内部RAM 32可编程I/O线 两个16位定时器/计数器 5个中断源 可编程串行通道 低功耗的闲置和掉电模式 片内振荡器和时钟电路

端口介绍:

(1)P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑

电平。对P0端口写“1”时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下, P0具有内部上拉电阻。 在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验 时,需要外部上拉电阻。

(2)P1 口:P1 口是一个具有内部上拉电阻的8 位双向I/O 口,p1 输出缓冲器能驱动4 个 TTL

逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。 此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2 的触发输入(P1.1/T2EX),具体如下表所示。 在flash编程和校验时,P1口接收低8位地址字节。 引脚号第二功能:

P1.0 T2(定时器/计数器T2的外部计数输入),时钟输出 P1.1 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) P1.5 MOSI(在系统编程用) P1.6 MISO(在系统编程用) P1.7 SCK(在系统编程用)

(3)P2 口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL

门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。 P3 口:P3 口是一个具有内部上拉电阻的8 位双向I/O 口,p2 输出缓冲器能驱动4 个 TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入 口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。

(4)P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。 在flash编程和校验时,P3口也接收一些控制信号。 端口引脚 第二功能: P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 INTO(外中断0) P3.3 INT1(外中断1) P3.4 TO(定时/计数器0) P3.5 T1(定时/计数器1) P3.6 WR(外部数据存储器写选通) P3.7 RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。RST——复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。ALE/PROG——当访问外部程存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。PSEN——程序储存允许

(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。EA/VPP——外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。

3.2.2 七段数码管

LED数码有共阳和共阴两种,共阳极数码管是指八段数码管的八段发光二极管的阳极(正极)都连在一起,而阴极对应的各段可分别控制。

共阴极数码管是指八段数码管的八段发光二极管的阴极(负极)都连在一起,而阳极对应的各段分别控制。

数码管共阳如图 数码管共阴如图

数码管的显示方式:

三极管除了有放大信号的功能外还有开关作用,多个数码管通过动态显示要正常显示,就要用三极管的开关作用来控制数码管的公共端,并加相应的驱动电路来驱动数码管的各个段码,从而显示出我们要的数字。此电路设计中采用PNP三极管控制共阳型数码管,数码管接限流电阻接至p0口。

限流电阻的确定:R=(电源电压-1.7)/额定电流

显示驱动:动态驱动是指每个数码管的每一个段码都由一个单片机的I/O端口进行驱动,通

过位选信号的选通与否实现单个数码管的点亮,由于人眼有视觉停留效果,就能看到一串数字。基本的半导体数码管是由7个条状的发光二极管(LED)按图1所示排列而成的,可实现数字"0~9"及少量字符的显示。另外为了显示小数点,增加了1个点状的发光二极管,因此数码管就由8

个LED组成,我们分别把这些发光二极管命名为 "a,b,c,d,e,f,g,dp",排列顺序如下图:

3.2.3 蜂鸣器

由于蜂鸣器的工作电流一般比较大,以致于单片机的I/O 口是无法直接驱动的,所以要利用放大电路来驱动,一般使用三极管(pnp)来放大电流就可以了。驱动电路如下图:

程序流程图:

6课程设计心得体会

做了两周的单片机课程设计,我有了很多的体会和感想。这两周的实习真的有点郁闷,程序里面的好多内容不懂,自我感觉是单片机我们所学的内容还不足以编出这两个程序,但是只好硬着头皮去看去理解。但在学习过程中也充满了乐趣,当看懂了程序的一些语句,画出了要求的设计图,那我喜悦那种成就感油然而生。

这次实习让我受益匪浅,无论从知识上还是其他的各个方面。上课的时候的学习从来没有见过真正的单片机,只是从理论的角度去理解枯燥乏味。但在实习中见过甚至使用了单片机及其系统,能够理论联系实际的学习,开阔了眼界,提高了单片机知识的理解和水平。在这次课程设计中又让我体会到了合作与团结的力量,当遇到不会或是设计不出来的地方,我们就会在QQ群里讨论或者是同学之间相互帮助。团结就是力量,无论在现在的学习中还是在以后的工作中,团结都是至关重要的,有了团结会有更多的理念、更多的思维、更多的情感。

程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。因此在整个设计过程中大部分时间是用在程序上面的。很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。因此可以说系统的设计是软件和硬件的结合,二者是密不可分的。通过这次课程设计我也发现了自身存在的不足之处,虽然感觉理论上已经掌握,但在运用到实践的过程中仍有意想不到的困惑。这也激发了我今后努力学习的兴趣,我想这将对我以后的学习产生积极的影响。

单片很重要的一门课程,老师和一些工作的朋友都曾说过,如果学好一门单片机,就凭这个技术这门手艺找一个好工作也不成问题。尽管我们在课堂学到的内容很有限,但在以后的学习中单片机还需要好好的深入研究和学习,学好了单片机也就多了一项生存的本钱。最后感谢老师对我们的精心指导和帮助,感谢同学们对我的帮助。

附录1 四路抢答器程序

ORG 0H

AJMP MAIN

ORG 000BH

AJMP T0INT

MAIN: MOV TMOD,#01H

MOV TH0,#3CH

MOV TL0,#0B0H

SETB EA

SETB ET0

SETB TR0

START: MOV R1,#0

MOV R2,#0

DL: ACALL DISPLAY

JNB P1.0,DOU

AJMP DL

DOU: ACALL DELAY5MS

JNB P1.0,NEXT

AJMP DL

NEXT: MOV R4,#0

MOV R3,#9

MOV A,R3

MOV R2,A

DW0: ACALL DISPLAY

JNB P1.1,TRVE1

JNB P1.2,TRVE2

JNB P1.3,TRVE3

JNB P1.4,TRVE4

MOV A,R4

CJNE A,#20,DW0

DEC R2

MOV R4,#0

MOV A,R2

CJNE A,#0,DW0

CLR P2.3

MOV R5,#0

DW2: MOV R4,#0

DW1: ACALL DISPLAY

MOV A,R4

CJNE A,#14H,DW1

CPL P2.3

INC R5

MOV A,R5

CJNE A,#5,DW2

DW3: ACALL DISPLAY

JNB P1.0,START

AJMP DW3

TRVE1: MOV R1,#1

AJMP DW3

TRVE2: MOV R1,#2

AJMP DW3

TRVE3: MOV R1,#3

AJMP DW3

TRVE4: MOV R1,#4

AJMP DW3

DISPLAY:SETB P2.6

MOV DPTR,#TAB

MOV A,R1

MOVC A,@A+DPTR

MOV P0,A

CLR P2.7

ACALL DELAY5MS

MOV A,R2

MOVC A,@A+DPTR

SETB P2.7

MOV P0,A

CLR P2.6

ACALL DELAY5MS

RET

T0INT: MOV TH0,#3CH

MOV TL0,#0B0H

INC R4

RETI

DELAY5MS:MOV 31H,#32H

LOOP1: MOV 30H,#32H

LOOP: DJNZ 30H,LOOP

DJNZ 31H,LOOP1

RET

TAB: DB 40H,79H,24H,30H,19H

DB 12H,02H,78H,00H,10H

END

8参考文献

【1】80C51单片机原理与应用技术 吴炳胜 等编 冶金工业出版社

【2】单片机原理及接口技术 梅丽凤 等编 清华大学出版社

【3】电子线路设计.实验.测试(第三版) 谢自美 主编 华中科技大学出版社

注:此表必须在同一页面。

PCB图


相关文章

  • 四路智能抢答器课程设计
  • 摘 要 近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异.此次设计提出一种用AT89C52单片机作为核心控制元件与电阻.液晶显示屏.蜂鸣器等构成硬件条件,再利用C语言编程来控制抢答器的功能实现. 本论文对抢答 ...查看


  • 四路抢答器毕业设计
  • 滁州职业技术学院机电系 毕 业 设 计 课 题: 抢答器 设计时间: 2014.11-2014.12 班 级: 机 电(4)班 学 号: 姓 名:指导教师: 杨入超 摘 要 随着微处理器.计算机和数字通讯技术的飞速发展,计算机控制已扩展到了 ...查看


  • 简易四路抢答器
  • 单片机课程设计 预习报告 班 级: 建电141 姓 名:学 号: 设计题目:设计时间: 评定成绩:评定教师: 四位竞赛抢答器系统设计 2016.01.03~01.07 目录 摘要 ------------------------------ ...查看


  • 四人智力竞赛抢答器
  • 电子工艺实训报告 实训课题 智力竞赛抢答器的制作与调试 学号 ************* 年级 ** 学院 ***** 专业 *********** 姓名 ****** 指导教师 ****** 一.实训目的 (1) 学习识别简单的电子元件与 ...查看


  • 四路抢答器单片机
  • 目录 前言 2 2 系统设计 3 2.1 系统总体设计 3 2.2 器件选型详细清单 3 2.3系统功能要求 4 2.4系统原理图 4 2.4.1时钟频率电路的设计 5 2.4.2复位电路的设计 5 2.4.3显示电路的设计 6 2.4.4 ...查看


  • 89c51抢答器制作
  • 郑州科技学院 本科课程设计论文 题 目 专 业 姓 名 学 号 指导老师 郑州科技学院信息工程学院 二〇一四年 摘要 ............................................................. ...查看


  • 最新电子信息工程毕业论文题目参考
  • 1. 家庭防盗报警系统 2. 单片机实现单步进电机及8位流水灯控制的设计 3. 篮球竞赛计时系统 4. 单片机89C51在直流调速控制系统中的应用 5. 八路数字抢答器 6. 基于51机的直流电机设计 7. 基于51单片机的步进电机控制系统 ...查看


  • 抢答器课程设计 1
  • <单片机技术>课程设计说明书 数字抢答器 系 . 部: 电气与信息工程系 学生姓名:指导教师: 王韧 职称 副教授 专 业: 电气工程及其自动化 班 级: 完成时间: 2014年6月5号 摘 要 单片机把我们带入了智能化的电子领 ...查看


  • 四人抢答器的实验报告
  • 电气与自动化工程学院课程设计评分表 课程设计题目:微机原理与接口技术课程设计 班级:Y102101 学号:Y10210120姓名:王圣爽 指导老师: 年 月 日 常熟理工学院电气与自动化工程学院 课程设计说明书 课程名称: 微机原理与接口技 ...查看


热门内容