版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机课程设计报告课题名称: 单片机学习板的设计与制作 专 业: 电气信息工程 班 级: 12电气信息(1)班 学生姓名: 黄志豪 学 号: 1207080618115 同组人员: 林穗极(22)、耿志超(06) 分组序号: 1 指导教师 : 谢珩 2014 年 12 月1摘要单片机被广泛地应用在工业自动化控制、智能仪器仪表、数据采集、通讯以及家用电器等领域。单片机以其与通用微机完全不同的发展模式,不断满足工业测控、恶劣环境下可靠运行的要求。、单片机已成为现代工业领域中不可缺少的重要角色。 单片机技术的发展速度十分迅速,速度更快、功能更强的16位、32位单片机以及陆续问世,但8位机,
2、特别是新一代高档8位机具有优异的性能,已能满足大部分单片机应用领域的需要,另外,它还具有可靠性高、外围芯片配套、系统结构简单、应用软件丰富、技术成熟、开发应用方便等优点,在单片机市场中依旧据有一定地位。通过本次课程设计掌握单片机硬件和软件方面的知识,更深入的了解单片机的实际应用。关键词:51单片机 C51程序 跑马灯 数码管 单片机音乐目录摘要1第一节 引言31.1本设计任务和主要内容31.1.1目标31.1.2系统基本构成31.1.3系统制作31.2基于51单片机系统学习板概述31.2.1A89S51单片机开发板硬件配置情况4第二节 系统主要硬件电路设计52.1 AT89C52单片机简介52
3、.1.1 单片机AT89C52模块52.1.2电源模块62.1.3振荡电路模块72.1.4复位电路模块722四位一体共阳LED数显82.3 LED 灯电路9第三节 实验系统软件设计103.1八路LED流水灯实验103.1.1设计内容:103.1.2.proteus仿真下的8位流水灯103.1.3上机程序:113.1.4流程图123.1.5调试结果及结论:123.2二位数码管循环显示0099的实验123.2.1设计内容:123.2.2电路图:133.2.3上机程序:133.2.4流程图153.2.5调试结果及结论:15第四节课程设计总结154.1实验结果15 4 .1.1花样
4、流水灯15 4.1.2简易电子琴15 4.1.3数码管动态扫描数显16 4.2制作感受16参考文献16附录17 1. 制作元件172.学习板正面和反面实物照片18第一节 引言1.1本设计任务和主要内容1.1.1目标设计制作一个简化的单片机学习板,并在该学习板上完成基本的单片机实验。该设计以单片机课程同步实验指导中的通用实验板的为制作蓝本,并加以适当简化,但仍保留模块化的设计方法。1.1.2系统基本构成1、电源模块(P12):以USB接口供电,并安装电源开关和电源指示等。2、CPU模块(P22):单片机+时钟及复位电路,构成单片机最小系统。3、输入输出模块(P86):并行I/O连接拨动开关、发光
5、二极管、数码管等输入、输出设备。1.1.3系统制作在9*15cm万用板上,通过合理布局,依次搭建上述3个模块,最终构成完整的单片机学习板,实现基本的单片机实验。为了与单片机课程教学过程相衔接,并突出重点环节,对单片机学习板的制作进行了必要的简化,具体体现在:(1)USB接口实现单片机供电,由通用充电器保障电源质量。(2)通用编程器(实验室提供)实现单片机的编程,替代串行通信模块。(3)并行I/O口实现单片机控制功能,实现单片机基本控制功能的实验演示。系统简化后,可靠性也得到一定程度的提高。1.2基于51单片机系统学习板概述本次课设所使用的单片机最小系统板包括以下器件:电源模块:可以USB供电,
6、也可通过排针接独立电源供电。通用异步串口,P3.0、P3.1、以及电源负极(TXD、RXD、GND)。各种颜色的LED发光二极管共9个,其中8个接于P1口做LED显示,还有一个做电源灯显示。四位一体共阳数码管可以实现时钟电路及动态扫描显示。还有其他电阻系列特有的ISP在线编程,方便我们初学者的二次开发,省去大量芯片烧写时间。USB电源线供电和外接供电并存,方便学生在寝室使用.板上提供ISP、USB接口并将单片机的全部I/O引脚引出。51开发板使用ISP在线下载,直接把程序写到单片机中,使用当前最流行的KEILC51软件,用户无需再购买任何仿真器或编程器等开发工具,只要有一台计算机,就可以实践学
7、习单片机方面的知识;同时引出的单片机的32个I/O口可全部用于扩展,用户可把自己设计的电路通过这32 个I/O口与单片机连接,方便用户开发自己的产品,最大限度的为用户节约学习成本和加快学习速度。1.2.1A89S51单片机开发板硬件配置情况1)AT89S512)MAX2323)8个LED灯4)8位拨动开关5)4位8段数码管6)12M晶振1.2.2、AT89S51单片机实验板配套实验1)51开发板预烧程序2)按键中断3)花样灯4)流水灯5)跑马灯6)数码管7)数码管时钟第二节 系统主要硬件电路设计2.1 AT89C52单片机简介MCS-51是美国Intel公司生产的一系列单片机的总称,
8、包括多个品种,如8031、8051、8751、8032、80C52、8752等。其中8051是最典型的产品,其他单片机都是在其基础上进行功能增减而来的,所以人们习惯于用8051来称呼MCS-51系列单片机。Intel公司将MCS-51的核心技术授权给了多家公司,这些厂家生产的单片机在功能上或多或少有些改变,以满足不同的需求,其中美国的ATMEL公司生产的AT89C51是曾经在我国非常流行的51单片机。当前AT89C51/52已经停产,其替代产品为AT89S51/52。深圳宏晶公司出品的STC89C51可以直接代替传统的AT89S51和AT89C51芯片,也可以代替菲利普、华帮等其他公司的89C
9、51,由于时代的发展,工艺的进步,STC89C51功能更强,寿命更长(4K字节Flash存储器、128字节片内RAM、支持ISP下载编程)2.1.1 单片机AT89C52模块AT89C52 :8位单片机是MSC-51系列产品的升级版,有世界著名半导体公司ATMEL在购买MSC-51®设计结构后,利用自身优势技术(掉电不丢数据)闪存生产技术对旧技术进行改进和扩展,同时使用新的半导体生产工艺,最终得到成型产品。与此同时,世界上其他的著名公司也通过基本的51内核,结合公司自身技术进行改进生产,推广一批如51F020等高性能单片机。AT89C52片内集成256字节程序运行空间、8K字节Fla
10、sh存储空间,支持最大64K外部存储扩展。根据不同的运行速度和功耗的要求,时钟频率可以设置在0-33M之间。片内资源有4组I/O控制端口、3个定时器、8个中断、软件设置低能耗模式、看门狗和断电保护。可以在4V到5.5V宽电压范围内正常工作。不断发展的半导体工艺也让该单片机的功耗不断降低。同时,该单片机支持计算机并口下载,简单的数字芯片就可以制成下载线,仅仅几块钱的价格让该型号单片机畅销10年不衰。根据不同场合的要求,这款单片机提供了多种封装,本次设计根据最小系统有时需要更换单片机的具体情况,使用双列直插DIP-40的封装。图1: DIP-40封装89C52引脚图2.1.2电源模块本系统的电源模
11、块由USB接口、电源开关、电源指示灯、滤波电路等组成。实物图如下:图2:电源模块实物图 2.1.3振荡电路模块振荡电路由一个12M的晶振和两个22pf的电容所组成,原理图如下:图3:震荡电路原理图2.1.4复位电路模块复位电路是维持单片机最小系统运行的基本模块。复位电路通常分为两种:上电复位和手动复位。 图4.1: 上电复位 图4.2: 手动复位有时系统在运行过程中出现程序跑飞的情况,在程序开发过程中,经常需要手动复位。所以本次设计选用手动复位。AT89C52系列大片级为高电平复位,在复位引脚RST上接一电容到VCC,再接一电阻到GND,由此形成一个RC充放电路。图5 最小系统结构图22四位一
12、体共阳LED数显8段数码管属于LED 发光器件的一种,分为8 段:A、B、C、D、E、F、G、DP,其中DP 是小数点位,还包括一个公共端COM 端。从电气上,8 段数码管又分为共阴和共阳两种。共阴指数码管的公共端接负极,而各段接正极;共阳则正好相反。如果有多个数码管,它们的各段输入一般都分别接在一起,公共端分开。开发板上采用的是4位一体的共阳数码管。数码管显示方法可分为静态显示和动态显示两种。静态显示就是每个数码管的8 段输入各自分开,其COM 口电平一直有效。它的优点是控制方便,显示稳定,但要占用较多的I/O口。动态显示
13、的原理是,各个数码管的段输入相应位接在一起,共同占用8 位数据线;公共端分开,利用扫描和人视觉上的短暂停留性,依次给出各个数码管COM 端使能信号,并同时给出各数码管的数据。它的优点是占用I/O 口少,但控制较静态显示复杂。一般在数码管较多的情况下都采用动态显示。本实验板使用的是4位一体的共阳数码管,共12脚,其中8脚公用是8段显示,另4脚是对应于4个数码管。图6四位一体共阳数显电路2.3 LED 灯电路一般发光二极管的工作电流是十几毫安至几十毫安,正向压降为1.3V-2.5V。有一些低电流的发光二极管的工作电流可以降至2MA,而亮度与正常发光二极相同,
14、当然价格会高一些。所有发光二极管在电路中一般都要串一个电阻用来限流。发光二极管的电流不同,亮度也不同,并且寿命也会受到影响,这个电流通常就是由接入的电阻来调整。 51开发板的发光二极管串联了一个1k的电阻后接在5V 的电压上。LED 灯电路接在单片机的P1口上。LED灯的阳极接电源,阴级接单片机的I/0 口,因此是低电平驱动,只要单片机在相应引脚给出低电平,LED 就会发光。第三节 实验系统软件设计3.1八路LED流水灯实验3.1.1设计内容:八路发光二极管轮流点亮的实验,也就是通常所说的流水灯实验,首先让我们来完成必须的硬件部分,我们需要焊接上8个发光
15、二极管和8个限流电阻(本设计中用排阻代替),可以参考下面的原理图和实物图像进行操作,需要注意的是LED是有极性的,引脚长的为正极,引脚短的为负极,负极和单片机P1的I/O连接,正极与排阻并连接到电源正极一侧,如果接错那么相应的那一路可能在实验中不会点亮了。3.1.2.proteus仿真下的8位流水灯.图8流水灯电路图3.1.3上机程序:ORG 0000HSTART:MOV R2,#8MOV A,#01H ; 先让第一个发光二极管点亮LOOP:MOV P1,A; 从P1口输出到发光二极管LCALL DELAYRL A ; 循环左移DJNZ R2,LOOP ; 判断移动是否超过8 位,未超过继续循
16、环 LJMP START ; 重做 DELAY:MOVR5, #5 ; 延时0.5秒子程序DEL1: MOVR6, #200DEL2: MOVR7, #126DEL3: DJNZR7, DEL3 DJNZR6, DEL2 DJNZR5, DEL1RET END3.1.4流程图开始R2=8,A=1P1=A延时0.2SA左移一次R2=R2-1R2=0?是否图9流程图3.1.5调试结果及结论:八路发光二极管轮流点亮汇编语言的一大优势就是能够精确控制程序的执行时间,这在编写一些对时序要求严格的外围器件驱动时由为重要!3.2二位数码管循环显示0099的实验3.2.1设计内容:8段数码管显示.两位数码管显
17、示00-99依次循环(动态扫描方式).p0做LED显示数据输出口。P2控制数码管个位数和十位数显示.用单片机进行数码显示应具有显示器件;应用最广泛的是8段数码管。8段数码管从内部接线上分共阳和共阴两种。在电路设计时应根据情况决定采用共阳或共阴,其基本原则是:若单片机IO口直接驱动数码管个段,最好采用共阳数 码管,因为51单片机IO口输出高电平时输出的电流很小,数码管不会太亮;若数码管是通过驱动芯片与单片机相连的,就要看驱动芯片对数码管极性的要求。3.2.2电路图:3.2.3上机程序:; T10_1_LED.ASMPORT EQU 0CFA0HBUF EQU 23H ;存放计数值SBF EQU
18、22H ;存放秒值MBF EQU 21H ;存放分值CSEG AT 0000H LJMP STARTCSEG AT 401BH LJMP CLOCKCSEG AT 4100HSTART: MOV R0,#40H ;40H-45H是显示缓冲区,依次存放 MOV A,#00H ;分高位、分低位,0A,0A(横线) MOV R0,A ;以及秒高位、秒底位 INC R0 MOV R0,A INC R0 MOV A,#0AH MOV R0,A INC R0 MOV R0,A INC R0 MOV A,#00H MOV R0,A INC R0 MOV R0,A MOV TMOD,#10H ;定时器1初始化
19、为方式1 MOV TH1,#38H ;置时间常数,延时0.1秒 MOV TL1,#00H MOV BUF,#00H ;置0 MOV SBF,#00H MOV MBF,#00H SETB ET1 SETB EA SETB TR1DS1: MOV R0,#40H ;置显示缓冲区首址 MOV R2,#20H ;置扫描初值,点亮最左边的LED6DS2: MOV DPTR,#PORT MOV A, #00 MOVX DPTR, A MOV A,R2 ;向位数据口P1输出位显码 CPL A MOV P1,A MOV A,R0 ;得到的段显码输出到段数据口 ACALL TABLE MOVX DPTR,A C
20、ALL DELAY ;延时一小段时间 CALL DELAY CALL DELAY INC R0 ;显示缓冲字节加一 CLR C MOV A,R2 RRC A ;显码右移一位 MOV R2,A ;最末一位是否显示完毕?,如无则 JNZ DS2 ;继续往下显示 MOV R0,#45H MOV A,SBF ;把秒值分别放于44H,45H中 ACALL GET DEC R0 ;跳过负责显示"-"的两个字节 DEC R0 MOV A,MBF ;把分值分别放入40H,41H中 ACALL GET SJMP DS1 ;转DS1从头显示起TABLE: INC A ;取与数字对应的段码 MO
21、VC A,A+PC RET DB 3FH,06H,5BH,4FH,66H,6DH,7DH, 07H, 7FH,6FH, 40H GET: MOV R1,A ;把从分或秒字节中取来的值的高 ANL A,#0FH ;位屏蔽掉,并送入缓冲区 MOV R0,A DEC R0 MOV A,R1 ;把从分或秒字节中取来的值的低 SWAP A ;位屏蔽掉,并送入缓冲区 ANL A,#0FH MOV R0,A DEC R0 ;R0指针下移一位 RETCLOCK: MOV TL1,#0AFH ;置时间常数 MOV TH1,#3CH PUSH PSW PUSH ACC INC BUF ;计数加一 MOV A,BU
22、F ;计到10否?没有则转到QUIT退出中断 CJNE A,#0AH,QUIT MOV BUF,#00H ;置初值 MOV A,SBF ADD A,#1 ;秒值加一,经十进制调整后放入 DA A ;秒字节 MOV SBF,A CJNE A,#60H,QUIT ;计到60否?没有则转到QUIT退出中断 MOV SBF,#00H ;是,秒字节清零 MOV A,MBF ADD A,#1 ;分值加一,经十进制调整后放入 DA A ;分字节 MOV MBF,A CJNE A,#60H,QUIT ;分值为60否?不是则退出中断 MOV MBF,#00H ;是,清零QUIT: POP ACC POP PSW
23、 RETI ;中断返回DELAY: MOV R3,#0FFH ;延时一小段时间DEL: NOP DJNZ R3,DELRETEND 3.2.4流程图图103.2.5调试结果及结论:8段数码管显示.两位数码管显示00-99依次循环(动态扫描方式)。因为要显示两位不同的数字,所以必须用动态扫描的方法来实现,就是先个位显示1毫秒,再十位显示1毫秒,不断循环,这样只要扫描时间小于1/50秒,就会因为人眼的视觉残留效应,看到两位不同的数字稳定显示。第四节课程设计总结4.1实验结果4 .1.1花样流水灯程序循环输出到单片机P1口,控制LED灯从LED1向LED8依次亮,到全部亮然后LED 灯从LED1向LED8依次前进单个亮,类似跑马情形。 4.1.2简易电子琴向蜂鸣器发送一定频率的方波可以使蜂鸣器发出相应的音调,该实验使蜂鸣器发出类似"多来咪发梭拉西"的音调。 4.1.3数码管动态扫描数显单片机P1端口用于数码管显示数值,P2端口部分用于选择4位数码管中的一位,从而实现一下现象:4位数码管从第一位到第四位由0到F依次循环显示4.2制作感受为期8周的单片机实训已经圆满结束了,通过这次实训,我对单片机的用途有了一定的了解并且熟
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 珠宝行业资料员聘用合同范本
- 防灾减灾合同施工承诺书
- 2024年简化版担保合同范本版B版
- 2024年租赁合同终止书
- 道路施工搭棚施工合同范本
- 2024年二零二四年度高效农业土地承包协议书3篇
- 有关摄影的教学课程设计
- 2024年新型纱窗产品研发与市场推广合同3篇
- 2024年度设备采购合同协议书
- 2024年社区卫生服务老年人健康管理服务合同3篇
- SEER数据库的申请及数据提取方法与流程
- 湖北省新中考语文现代文阅读技巧讲解与备考
- 幼儿园故事课件:《胸有成竹》
- (完整版)康复科管理制度
- 深度千分尺校准记录表
- GB/T 10000-2023中国成年人人体尺寸
- 电工安全用具课件
- 北师大版四年级数学上册《不确定性》评课稿
- 模板销售合同模板
- 对越自卫反击战专题培训课件
- 小学生简笔画社团活动记录
评论
0/150
提交评论