便捷式单片机实验开发装置_第1页
便捷式单片机实验开发装置_第2页
便捷式单片机实验开发装置_第3页
便捷式单片机实验开发装置_第4页
便捷式单片机实验开发装置_第5页
已阅读5页,还剩56页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、0 引言随着半导体技术的发展,计算机系统的发展已明显地朝三个方向发展;这三个方向就是:巨型化,单片化,网络化。单片机这个新时代的技术随之产生。单片机,亦称单片微电脑或单片微型计算机。它是把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口 (I/0)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机。使产品的体积减小,成本得到最大限度的节约。单片机自问世以来,性能不断提高和完善,其资源又能满足很多应用场合的需要,加之单片机具有集成度高、功能强、速度快、体积小、功耗低、使用方便、价格低廉等特点,因此,在工业控制、智能仪器仪表、数据采集和处理、通信系统、高

2、级计算器、家用电器等领域的应用日益广泛,并且正在逐步取代现有的多片微机应用系统。根据社会发展需求,高校也把单片机技术列为主要课程之一,采用理论结合实践的教学方式,培养学生手脑并用的工程实践能力。现今很多高校以及一些中职院校都拥有自己的实验室,实验设备也相对较为完善。然而实验室也存在本身的缺陷,例如为了加强管理同学们只能在上课时间才能接触到试验箱设备。而且学校安排的课时是有限的,远远无法满足同学们的实践要求。所以怎样才能让同学们更多的进行实验是学好单片机技术的关键。因此,该装置集合传统试验箱的优点,加以模块化和浓缩化。只要有一台计算机加该装置同学们可以随时随地的进行单片机学习。为同学们赢得更多的

3、学习时间,提高了同学们的学习效率。1 课题背景1.1 单片机概述所谓单片机,即把组成微型计算机的各个功能部件,如中央处理器CPU、随机存储器RAM、只读存储器ROM、输入/输出接口电路、定时器/计数器以及串行通信接口等集成在一块芯片中,构成一个完整的微型计算机。因此单片机早期的含义为单片微型计算机(single chip microcomputer),直接译为单片机,并一直沿用至今。由于单片机面对的是测控对象,突出的是控制功能,所以它从功能和形态上来说都是应控制领域应用的要求而诞生的。随着单片机技术的发展,它在芯片内集成了许多面对测控对象的接口电路,如ADC、DAC、高速I/O口、PWM、WD

4、T等。这些对外电路及外设接口已经突破了微型计算机(microcomputer)传统的体系结构,所以更为确切反映单片机本质的名称应是微控制器。单片机是单芯片形态作为嵌入式应用的计算机,它有惟一的、专门为嵌入式应用而设计的体系结构和指令系统,加上它的芯片级体积的优点和在现场环境下可高速可靠地运行的特点,因此单片机又称之为嵌入式微控制器(embedded micro controller)。但是,在国内单片机的叫法仍然有着普遍的意义。我们已经把单片机理解为一个单芯片形态的微控制器,它是一个典型的嵌入式应用计算机系统。目前按单片机内部数据通道的宽度,把它们分为4位、8位、16位及32位单片机。1.2

5、单片机课程教学现状单片机基础、微机原理与应用是理工科类专业的重要技术基础课,是实践性和实用性很强的学科。其最终目标在于培养工科学生的硬件应用的能力。因此,教学中实验系统的优劣将直接影响该课程的教学效果和学生的应用能力的培养。对学生将来的发展有着关键性的作用。由于技术的发展,不断更新教学内容,淘汰不够先进的部分,以适应社会对人才的需要。但是单片机课程对实践环节的依赖比较大,实验手段的局限是制约教学水平的重要因素。为了提高未来各相关专业单片机基础、微机原理与应用类课程实验与实践环节的教学水平,迫切需要在围绕满足当前和未来单片机基础、微机原理与应用类课程教学的要求基础上对新型微机实验系统及其相关实践

6、环节的教学方法做一些探索性的研究工作。1.3 课题研究意义由于单片机技术在企事业单位得到广泛应用,越来越多的学校已经把单片机课程作为一门必修课,为大学生走向就业岗位打下坚实的基础。当前,单片机微机应用类课程正处在转型期。过去的20年中,单片机市场与需求都是以8位机为主的。最近几年来,16位、32位单片机的嵌入式应用呈迅速增长的趋势。8位单片机以其性价比高,而使其地位难以动摇。8位、16位、32位单片机将在相当长时期内共存已是业界的共识,而单片机教学课程内容的稳定和课程定位的准确是至关重要的。单片机技术发展迅速,课程的特点是实践性很强,它需要教师、教材、实验器件等协调配合,特别是实验平台,需要较

7、大的投入。教师要有相当的科研经验和应用背景,并能将科研的所得,以及对最新技术的了解贯彻到课程的讲解上,这些都有相当的难度。课程定位的不同,所安排实验的要求以及授课对象也不同,影响课程定位的决定因素很多,其中专业对单片机的应用需求以及学时和学生的先修课程基础是很重要的方面,譬如对电子、机械、电气、自动化等非计算机专业学生,8位单片机应该可以成为他们对单片机认识的入门课程。在实验当中对于单片机基本工作原理、采用芯片的工作特性、以及基本的汇编程序和接口技术的理解是必须的,特别强调学生的实践操作系统的能力。现在用于单片机教学实验系统很多,一般分为8位、16位、32位单片机实验系统。由于16位、32位单

8、片机市场价格偏高,而普通的8位单片机也能起到教学的目的,对于学校来说选择8位单片机作为实验系统是一个不错的选择。2 系统组成结构概述2.1 系统的组成1.直流电源模块2.液晶模块3.数码管显示模块4.4*4键盘模块5.386低频功放模块6.1302时钟及24C02模块7.18B20温度测试及红外模块8.串口通信及ISP在线下载模块9.单片机最小系统10.USB下载模块11.数据光盘2.2 实验内容1)数制转换与单片机端口的控制2)4*4键盘应用3)串行通信4)计数器定时器的应用5) 1602液晶显示6) 单片机音乐播放器制作2.3 系统框图系统结构框图 从上图中可以看到,本课题研制的“便捷式单

9、片机实验开发装置”是由11个基本模块组成的,模块之间可以根据实验需要相互连接,同时也可以由模块的扩展端向外宽展,形成不同的系统结构,为科学研究所用。各个模块都是针对电类专业的知识点设计的,能满足不同实验的要求。而且每个模块都可以独立与外界系统连接,用户可以根据不同需要进行实验。3 硬件电路设计3.1 8051系列单片机AT89S52AT89S52单片机包含中央处理器、程序存储器(ROM)、数据存储器(RAM)、定时器/计数器、并行I/O口、串行I/O口和中断系统等几大单元以及数据总线、地址总线和控制总线三大总线构成。图3.1为单片机内部结构框图。(1) 中央处理器中央处理器(CPU)是整个单片

10、机的核心部件,能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协调的工作,完成运算和控制输入输出功能等操作。(2) 程序存储器AT89S52共有8KB个E2PROM,用于存放用户程序,原始数据或表格。(3) 数据存储器(RAM)AT89S52内部有128个8位用户数据存储单元和128个专用寄存器单元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只能访问,而不能用于存放用户数据,所以,用户能使用的RAM只有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。图3.1内部结构框图(4) 并行输入输出口AT89S52共有4组8位I/O口(P0、 P1、P2或

11、P3),用于对外部数据的传输。(5) 串行输入输出口AT89S52内置一个全双工串行通信口,用于与其它设备间的串行数据传送,该串行口既可以用作异步通信收发器,也可以当同步移位器使用。(6) 定时/计数器AT89S52有三个16位的可编程定时/计数器,以实现定时或计数功能,并以其定时或计数结果对单片机进行控制。(7) 中断系统AT89S52具备较完善的中断功能,有两个外中断、三个定时/计数器中断和一个串行中断,可满足不同的控制要求,并具有两级的优先级别选择。3.1.1引脚功能图3.2 AT89S52芯片引脚图(1) 电源和晶振VCC:供电电压。GND:接地。XTAL1:反向振荡放大器的输入及内部

12、时钟工作电路的输入。XTAL2:来自反向振荡器的输出。(2) I/O口 P0口P0口的字节地址为80H,位地址为80H87H。P0口既可以作为通用I/O口使用,也可以作为单片机系统的地址/数据线使用。当作为输出口使用时,由于输出电路是漏极开路,必须外接上拉电阻才能有高电平输出。 P1口P1口的字节地址为90H,位地址为90H97H。P1口只能作为通用I/O口使用。当作为输出口使用时,已能对外提供推拉电流负载,外电路无需再接上拉电阻;当作为输入口使用时,应先向其锁存器写入“1”,使输出驱动电路的FET截止。 P2口P2口的字节地址为0A0H,位地址为0A0H0A7H。P2口用于为系统提供高位地址

13、,但只作为地址线使用而不作为数据线使用。此外,P2口也可作为通用I/O口使用。 P3口P3口的字节地址为0B0H,位地址为0B0H0B7H。P3口可以作为通用I/O口使用,但在实际应用中它的第二功能信号更为重要。P3口引脚的第二功能,如下所示: P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(计时器0外部输入)P3.5 T1(计时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)(3) 4根控制线 RST:复位信号。保持RST脚两个机器周期以上的高电平,就

14、可以完成CPU系统复位操作,使系统的一些单元内容回到规定值。 /PSEN:外部程序存储器读选通信号。在读外部ROM时,/PSEN有效(低电平),以实现外部ROM单元的读操作。 /EA/VPP:访问程序存储器控制信号。当/EA信号为低电平时,对ROM的读操作限定在外部程序存储器;而当/EA为高电平时,则对ROM的读操作是从内部程序存储器开始,并可延续至外部程序存储器。 ALE/PROG:地址锁存控制信号。在系统扩展时,ALE用于控制P0口输出的低8位地址送入锁存器锁存起来,以实现低位地址和数据的分时传送。此外由于ALE是以六分之一晶振频率的固定频率输出的正脉冲,因此也可作为外部时钟或外部定时脉冲

15、使用。3.1.2 串口通信通信主要有两种方式:并行通信和串行通信。并行通信是在传送数据过程中每个字节的各位同时进行传送的通信方式,而串行通信是指每个字节的各位分别进行传送的通信方式。3.1.3 串口通信方式 AT89S52串行口可设置四种工作方式,可有8位、10位和11位帧格式。本系统中,AT89S52采用串行口工作于方式1,即每帧10位的异步通信格式:1位起始位,8位数据位(低位在前),1位停止位。当SM0=0,SM1=1时,串行口选择方式1。其帧格式为: 图3.3 帧格式图 3.1.4 串行通信控制寄存器 (1) 串行控制寄存器(SCON)SCON的地址为98H,用于选择串行口的工作方式和

16、指示串行口的工作状态。各位含义如下: SM0、SM1:串行口工作方式选择位。 SM2:多机通信选择位。 REN:串行口允许接收位。1时允许接收,0时禁止接收。 TI: 串行口发送中断标志位。在方式1中,于发送停止位之前,由硬件置位。因此TI=1,表示帧发送结束。 RI: 串行口接收中断标志位。在方式1中,当接收到停止位时,该位由硬件置位。RI=1,表示帧接收结束。(2) 串行数据缓冲器(SBUF)串行数据缓冲器SBUF的地址为99 H,用来存放需发送和接收的数据,它由两个独立的寄存器组成,一个是发送缓冲器,另一个是接收缓冲器,它们占用同一地址(99H)。当执行写SBUF指令时,数据写入到串行口

17、发送缓冲器中,读SBUF就是读串行口接收缓冲器。(3) 电源控制寄存器(PCON)PCON的地址为87H,该寄存器的最高位(SMOD)是串行口波特率的倍增位,当SMOD=1时,串行口波特率加倍。系统复位时,SMOD=0。(4) 中断允许寄存器(IE)在IE中,ES位为串行中断允许控制位。ES=0时禁止串行中断,ES=1时允许串行中断。3.1.5 数据发送与接收(1) 数据发送在不发送数据时,TXD端保持高电平。当执行写SBUF的指令时,便启动一次发送过程;发送数据时,先发送一个起始位,该位通知接收端开始接收,也使发送和接收过程同步。接下来发送8位数据,先发送低位,最后发送的是高电平的停止位。(

18、2) 数据接收 REN=1,CPU允许串行口接收数据,接收数据开始于检测到RXD(P3.0)端发生一个“1”到“0”的跳变。先接收起始位,然后依次将采样RXD端并将数据移入移位寄存器中。若满足条件RI=0且SM2=0或接收到停止位,则将前8位数据送入SBUF并置位RI;如果上述条件不满足,则数据丢失。(3) 波特率的设定 串口方式1的波特率是可变的,由定时器T1的溢出率决定: (3-1) 则波特率计算公式为:(3-2)由波特率算出计数初值,以便进行定时器的初始化。初值X确定如下: (3-3)3.2 单片机最小系统 单片机最小系统该系统以89S52单片机为主控芯片, 兼容AVR系列单片机,例如:

19、ATMEGA16与ATMEGA8。复位电路采用拨码开关可以在两种系列单片机之间进行切换。由于AVR系列单片机管脚与51系列不同,系统采用一转换板实现转换,方便用户使用。系统引出四组I/O口方便用户进行功能扩展。 3. 3 ISP在线下载模块ISP在线下载原理图ISP(In-System Programming)在系统可编程,指电路板上的空白器件可以编程写入最终用户代码, 而不需要从电路板上取下器件,已经编程的器件也可以用ISP方式擦除或再编程。ISP技术是未来发展方向。该下载器可以兼容51系列与AVR系列单片机芯片的烧写。3.4 USB下载模块USB下载原理图 Usb下载采用ATMEGA8作为

20、主控芯片,实现了计算机usb下载,能支持51系列和AVR系列单片机下载。克服了现代笔记本电脑没有并口的特点,方便不同用户进行学习。3.5 串口通信模块串口通讯模原理图51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,可以用几个三极管进行模拟转换。单片机的P31输出的电平信号让9012导通.把信号送到232串口.从而让单片机的信号完成输入到电脑。电脑输出的TLL电平经过3脚再经过R51.负电平信号通过4148到地.从而保护9013不扣坏。正

21、电平信号到达三极管。从而完成电脑的信号送到单片机。该模块仅使用10器件代替max232实现了电平转换,使系统成本得到最大限度的节省。3.6 4*4键盘模块4*4键盘模块原理图1、先读取键盘的状态,得到按键的特征编码。例如:先从P1口的高四位输出低电平,低四位输出高电平,从P1口的低四位读取键盘状态。再从P1口的低四位输出低电平,高四位输出高电平,从P1口的高四位读取键盘状态。将两次读取结果组合起来就可以得到当前按键的特征编码。使用上述方法我们得到16个键的特征编码。2、根据按键的特征编码,查表得到按键的顺序编码。将16个键的特征编码按顺序排成一张表,然后用当前读得的特征编码来查表,当表中有该特

22、征编码时,它的位置就是对应的顺序编码。3、特征编码与顺序编码的对应关系KEYTABLE:            DB  0EEH,0EDH,0EBH,0E7H,0DEH   ;0,1,2,3,4,  顺序码     DB  0DDH,0DBH,0D7H,0BEH,0BDH  5,6,7,8,9,     DB 

23、; 0BBH,0B7H,07EH,07DH,07BH   ;A,B,C,D,E,     DB  077H,0FFH F,   0FF为结束码3.7 LM386低频功放及1302时钟模块LM386低频功放模块 1302时钟模块LM386是专用低损耗电源所设计的功率放大器。它的內建增益为20,通过pin 1 和pin8腳位间电容的搭配,增益最高可达200。LM386可使用电池为供应电源,输入电压范围可由4V12V,无动作时仅仅消耗4mA电流,且失真低。可以满足用户学习单片机播放

24、器原理。3.8 数码管显示模块数码管显示模块原理图编码方法如下表:Dp g f e d c b a字符 编码P0.7 P0.6 P0.5 P0.4 P0.3 P0.2 P0.1 P0.01 1 0 0 0 0 0 0 0 C0H1 1 1 1 0 0 1 1 1 F3H1 0 1 0 0 1 0 0 2 A4H1 0 1 1 0 0 0 0 3 B0H1 0 0 1 1 0 0 1 4 99H1 0 0 1 0 0 1 0 5 92H1 0 0 0 0 0 1 0 6 82H1 1 1 1 1 0 0 0 7 F8H1 0 0 0 0 0 0 0 8 80H1 0 0 1 0 0 0 0 9

25、90H1 0 0 0 1 0 0 0 A 88H1 0 0 0 1 1 1 0 F 8EH3.9 液晶接口及24C02存储模块 液晶接口原理图 24C02原理图 该装置可以进行1602字符液晶以及12864点阵型液晶的学习,装置上把液晶的控制端和数据端引出来,只要通过接插线就可以用单片机进行控制。I2C总线是一种用于IC器件之间连接的二线制总线。它通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件:不管是单片机、存储器、LCD驱动器还是键盘接口。如上图所示,通过5,6管脚与单片机相连接。4 系统开发软件环境件4.1 开发软件的使用说明该系

26、统使用的编程软件可以用S52编程软件WAVE6000进行编写AT89S52单片机的源程序(汇编语言和C语言),并产生 .hex程序代码,利用SL软件将程序代码应用下载线下载到目标单片机AT89S52的Flash中,相应的配套软件在光盘中可找到。当系统的单片机使用的AVR系列Mega8515时,可用AVR的C语言编程软件ICCAVR进行C语言程序编写,用AVR汇编语言编程软件进行汇编程序编写,产生.hex程序代码,利用AVR下载软件SL序代码应用下载线下载到目标单片机Mega8515的Flash中,相应的配套软件也在光盘中可找到。在光盘中还附有软件应用的安装教程,可使单片机学习者方便快捷地掌握单

27、片机开发软件。 4.2 WAVE6000的使用 新建文件文件新建文件保存文件保存文件名为xxx.c软件设置 Wave6000仿真器设置编译方法 晶振编译器设置 4.3 下载软件双龙MCU下载器的使用 双龙MCU下载器设置 如图示,通信参数设置为:LPT1TURBO;该软件支持多种单片机芯片烧写,点击小三角号可以选择所需要的芯片。设置完毕后点击“重载”开要下载的HEX文件,最后点击“编程”完成下载。4.4 progist1.67下载软的用 progist1.67设置 如图示设置好编程及接口,选择芯片,把要下载的文件调入FLASH,擦除,完成下载。5 实验指导书设计与编写5.1 数制转换与单片机端

28、口的控制一、实验目的1、熟悉十进制数与二、十六进制数的相互转换2、了解各进制数在程序中的运用3、学习单片机的四个I/O口4、掌握I/O口对LED的控制二、实验设备单片机最小系统I/O口输出LED按键三、实验内容1、对二、十、十六进制数进行转换2、编写一段程序,用P1口作为输出端,控制八位LED轮流点亮3、编写一段程序,P1口为输出口,P3.2为输入端口,当P3.2按下时,P1口控制的LED点亮,当P3.2没有按下时,P1口控制的LED不点亮。四、实验步骤任务一:1、数码是构造一种数制所用的不同符号。各种进制的数码为:二进制:0,1十进制:0,1,2,3,4,5,6,7,8,9十六进制:0,1,

29、2,3,4,5,6,7,8,9,A(a),B(b),C(c),D(d),E(e),F(f)2、用余数法将十进制整数转换成二进制整数。把十进制整数不断地用2去除,将所得到的余数0或1依次记为K0,K1,K2, ,直到商是0为止,将最后一次所得的余数记为Kn,则KnKn-1 K1K0即为该整数的二进制表示。例11 (59)10=( ) 2=(Kn K1K0)2竖式演算如下: 2 59 余数1=K0 2 29 余数1=K1 2 14 余数0=K2 2 7 余数1=K3 2 3 余数1=K4 2 1 余数1=K5 0 (59)10=(K5K4K3K2K1K0)2=(111011)2例12 把0.47转

30、换成二进制。用线图形式可演算如下: 0.470.940.880.760.520.04×2 整数 0 1 1 1 1 K-1 K-2 K-3 K-4 K-5 在取5位小数时有(0.47)10=(K-1 K-2 K-3 K-4 K-5 )2=(0.01111)2 3、将二进制转换成十进制把二进制数按多项式展开求和即可。(101.101)2=(1×22+0×21+1×20+1×2-1+0×2-2+1×2-3)10 =(1×4+1×1+1×0.5+1×0.125)10 =(5.625)104、

31、二进制转十六进制一般使用8421码进行转换如:(11111011)28 4 2 1 8 4 2 11 1 1 1 1 0 1 18+4+2+1=15=F;8+0+2+1=11=B;即(111110111)=(FB)16完整源代码见附录。5.2 4*4键盘应用一、实验目的1、了解键盘原理;2、掌握基本焊接;3、掌握键盘扫描程序的编写;二、实验设备单片机最小系统4*4键盘数码管显示三、实验内容1、用接插线连接键盘以及数码管显示2、编写一个程序,当键盘按下按钮时,数码管显示相应数值四、实验步骤1、4*4键盘基本结构如下:2、键盘位显示数值(可根据需要对键盘的按键作用进行编排);0 1 2 34 5

32、6 78 9 10 1112 13 14 15完整源代码见附录。5.3串行通信一、实验目的了解串行通信原理编写基本通信程序二、实验设备单片机最小系统三、实验内容1、用接插线连接串口通信模块2、编写一个程序,实现单片机与计算机之间通信四、实验原理1、串口寄存器89s52的串行口是全双工的UART,可同时接收和发送数据,是使用特殊寄存器内的SBUF寄存器及SCON串行控制寄存器。(1)SCON串行控制寄存器SM0 SM1 SM2 REN TB8 RB8 TI RIRI:接收中断标志位。在模式0下,当第8 位结束时,硬件会将其设置为1,在其他模式下载停止位的一半时由硬件设定,此位必须由软件清除;TI

33、:发送中断标志位。在模式0下,当第八位结束时,硬件会将其设置为1,在其他模式下载停止位的一半时由硬件设定,此位必须由软件清除;RB8: 在模式2或3时,发送时的第九数据位放入此位,在模式1时,若SM2=0,则RB8为接收到的停止位,模式0时,RB8没用;TB8:在模式2或3时,发送时的第九数据位由软件控制;REN由软件设定或清除,以决定是否接收串行数据,1为接收,0为发送;SM2:当串行口模式为2或3时,使能多处理器通信的功能,在模式0时,SM2必须为0;SM1:串行口模式选择;SM0:串行口模式选择;(2)PCON电源控制寄存器SMOD GF1 GF0 PD IDLSMOD:双倍波特率。当串

34、行工作于模式1、2或3时,如使用TIMER1做波特率发生器,且SMOD=1则波特率为双倍;GF1、GF0:通用标志位;PD:电源下降位,PD为1时进入掉电状态;IDL:IDLE模式位,IDL为1时进入空闲工作方式;(3)合法波特率:110、300、600、1200、2400、9600、14400、19200、28800、38400、56000、128000, 256000完整源代码见附录。5.4 计数器定时器的应用一、实验目的了解89s52的五个中断要求;掌握定时器/计数器在单片机上的运用;了解外部中断的运用;二、实验设备单片机最小系统数码管两个三、实验内容定时器、计数器及外部中断的各种方式和

35、要求;编写一个程序,用定时器的一秒定时作为秒表计时;编写一个程序,用外部中断控制灯的显示方式;四、实验步骤任务一:五个中断要求:个定时器中断、个外部中断、个串行端口中断中断控制寄存器() IE(中断使能寄存器)EA ES ET1 EX1 ET0 EX0EX0:使能外部INT0的中断;ET0:使能TIMER0的中断;EX1: 使能外部INT1的中断;ET1: 使能TIMER1的中断;ES:使能串行口的中断。EA:如果EA=0时,屏蔽所有中断;如果EA=1,则各中断由各中断为加以设定;()IP(中断优先权控制寄存器) PS PT1 PX1 PT0 PX0PX0:定义外部/INT0的优先权;PT0:

36、定义外部TIMER0的优先权;PX1:定义外部/INT1的优先权;PT1:定义外部TIMER1的优先权;PS:定义串行端口的优先权;定时器0和定时器1和外部中断定时器或计数器的功能是由特殊功能寄存器内TMOD的C/T位所决定的。这两个定时器有4种工作方式,它是由TMOD内的两个位M1和M0加以选择。() TMOD(定时器模式控制寄存器)说明如下:TIMER1 TIMER0GATE C/T M1 M0 GATE C/T M1 M0定时器模式控制器各位名称M1 M0:工作方式,如下表所示:M1 M0 工作方式 功 能00MODE013位定时器计数器01MODE116位定时器计数器10MODE28位

37、定时器计数自动载入11MODE3(TIMER0)TL0为8位定时器计数器,由T0控制;TH0为另一个8位定时器,由T1控制11MODE3(TIMER1) 定时器计数器1停止定时计数GATE:当TRX=1且GATE=1时,定时器只在/INTX引脚为高电平时才会计时;当GATE=0时,则定时器只在TRX=1时会计时;C/T:C/T=0时为定时器,C/T=1时为计数器。() TCON(定时器控制寄存器)TF1TR1TF0TR0IE1IT1IE0IT0TCON定时器控制寄存器各位名称IT0:/INT的中断电位控制,RT0时为下降沿触发,IT0=0时为低电平触发;IE0:/INT的中断标志位,当中断发生

38、时,硬件会设定此位;当中断被处理时,硬件会清除此位。IT1:/INT的中断电位控制,IT1=时为下降沿触发,IT1=时为低电平触发;IE1:/INT的中断标志位,当中断发生时,硬件会设定此位;当中断被处理时,硬件会清除此位。TR0:TIMER0的启动位,TR0=1时为启动,0时为停止;TF0:TIMER0的溢出标志位,当TIMER0溢出时,会设定为;当执行中断子程序时会清除为。TR1:TIMER1的启动位,TR1=1时为启动,0时为停止;TF1:TIMER1的溢出标志位,当TIMER1溢出时,会设定为;当执行中断子程序时会清除为。5.5 1602液晶显示一、实验目的学会液晶基本外部电路的焊接;

39、掌握用程序控制液晶显示;了解串口通信的基本原理;掌握用程序实现串口通信;二、实验设备单片机最小系统1602液晶一块串口线一条三、实验内容液晶电路的焊接;编写一个程序,使液晶显示“welcome to here! study happy!”3、编写一个程序,四、实验步骤任务一:1、 液晶引脚功能如下:编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极10D3Data I/O3VL显示偏压信号11D4Data I/O4RS数据/命令端12D5Data I/O5R/W使能信号13D6Data I/O6EData I/O14D7Data I/O7D0Data I/O1

40、5BLA背光电源正极8D1Data I/O16BLK背光电源负极2、基本操作时序:读状态:RS=L,RW=H,E=H 输出:D0D7=状态字写指令:RS=L,RW= L,D0D7=指令码,E=高脉冲 输出:无读数据:RS= H,RW=H,E=H 输出:D0D7=数据写数据:RS= H,RW= L,D0D7=数据,E=高脉冲 输出:无2、 显示模式设置:指令码功能0 0 1 1 1 0 0 0设置1602*2显示,5*7点阵,8位数据口源代码见附录。5.6 单片机音乐播放器制作一、实验目的了解单片机发生原理熟悉乐谱的编辑二、实验设备单片机最小系统LM386功放模块三、实验内容1.制作一个音乐播放

41、器四、实验步骤1、相关知识要产生音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周期的时间。利用定时器计出这个半周期的时间,每当计时到后就将输出脉冲的I/O反相,然后重复计时此半周期时间再对I/O反相,就可以在I/O脚上得到此频率的脉冲。计数脉冲值与频率的关系公式如下:N=Fi÷2÷Fr N:计数值Fi:内部计数时一次为1us,故其频率为1MHz Fr: 要产生的频率其计数值的求法如下:T=65536-N = 65536- Fi÷2÷Fr例如:已知中音DO(523Hz),求其计数值T = 65536 500000 / 523 =

42、64580源代码见附录。结论通过本次毕业设计更加体现了我校手脑并用,理论结合实际的教学作风。在大学四年的学习中,我掌握了较为扎实的理论功底。借助大学生电子创新协会这个良好的平台,我致力加强实践动手能力的培养。通过参加并组织学校、天津市、全国的电子类竞赛,使我的综合能力得到全面的发展。根据平时的课堂学习以及通过毕业学长到全国中职院校的教学反馈,在指导老师的帮助下我开发了这个单片机实验开发装置。该装置体积小,价格低廉,实验功能强。特别适合大学生使用。同时该装置在学校已经投入使用,并受到同学们的欢迎。不仅给大家的学习带来极大的便利,而且帮助毕业生更好的完成毕业设计。当然该装置也存在一些不足,希望今后

43、有使用的同学们给我以信息反馈完善该装置。致谢语本次毕业设计能够顺利地完成,首先我非常感谢我的指导老师张根柱教授。无论是在课题立项还是在课题的研究阶段,张师都给了我很大的帮助。在我进行课题内容的研究中,张老师不仅从技术上给予了我极大的帮助和支持,在论文的最后评阅过程中,也给我提出了非常宝贵的意见,使我获益颇深。张师那严谨的作风、渊博的知识、缜密的思维、宽广的胸襟,深深震撼着我。他所教于我的做事的信念,做人的道理,当是今后人生中的一大财富。最后,我要还要感谢在此次毕业设计过程中给予我很大帮助的王中敏、陈华财等同学,我衷心的祝福你们!同时,我要感谢我的母校天津工程师范学院。学校给了我这样一个锻炼、学

44、习的机会,使我加深了对以前知识的理解,拓宽了知识面,也提高了我对所学知识的综合的应用能力。在此,祝愿我院日后蓬勃发展,成为一所独具特色的综合性大学。祝愿母校的将来更美好! 参考文献1李万红.嵌入式C编程与Atmel AVRM .清华大学出版社,2003,15(1):1650. 2李广弟,朱月秀,王秀山. 单片机基础M.北京航空航天大学出版社,2002,21(2):2148.3李大有.单片机应用与设计M.电子工业大学出版社,1998,10(2):1032.4徐惠民.单片微型计算机原理接口应用M.北京邮电大学出版社,1999,9(1):1430.5何希才,刘洪梅.新型通用集成电路实用技术M.北京:

45、国防工业出版社, 1997,12(3):2045.6刘常澍.数字逻辑电路M.北京:国防工业出版社,2002,13(1):1831.7赵负图.现代传感器集成电路M.人民邮电出版社,2000,19(2):2245.8李隆宝. 实用电子器件和电路简明手册M. 北京:电子工业出版社,1991,15(2):1645. 9李光飞.单片机课程设计实例指导M.北京:北京航空航天大学出版社,2005,12(1):2448.10 金春林.AVR系列单片机C语言编程与应用实例M.北京:清华大学出版社,2003 ,32(3):6080.11沈文,Eagle lee. AVR单片机C语言开发入门指导M.北京:清华大学出

46、版社, 2003,22(1):3041.12程佩清.数字信号处理M. 北京:清华大学出版社,2000,21(2):2640.13康华光.电子技术基础模拟部分M.高等教育出版社. 1998,8(1):1526.14门刚.精通Protel DXP-模块范例篇M.中国青年出版社.2003,7(1):1080.15张延伟. Protel DXP电子电路设计技法范例.北京:清华大学出版社,2005(2):1645.16吴金戌.沈庆阳.郭庭吉. 8051单片机实践与应用.北京:清华大学出版社2002(1):1831.17肖丽君.增强单片机系统可靠性的若干措施,电脑开发与应用,2000,(1):1526.1

47、8谷树忠.阎胜利.Protel DXP实用教程原理图与PCB板设计.北京:电子工业出版社,2003(1):3041. 附录一 系统原理图附录二 实验程序数制转换与单片机端口的控制#include<reg52.h> /头文件main()int i,j,k;P1=0xff;for(j=0;j<1000;j+)for(k=0;k<100;k+); /延时while(1) P1=P1<<1; for(i=0;i<8;i+) 发 for(j=0;j<1000;j+) for(k=0;k<100;k+); /延时 P1=(P1<<1)+1;

48、 /单个左移 4*4键盘应用#include<reg52.h>char jianma16=0x7e,0xbe,0xde,0xee,0x7d,0xbd,0xdd,0xed, 0x7b,0xbb,0xdb,0xeb,0x77,0xb7,0xd7,0xe7;char c4=0xef,0xdf,0xbf,0x7f; main()int m,n,k,j,a=0; while(1) for(m=0;m<4;m+) P1=cm; for(n=0;n<16;n+) if(P1=jianman) P0=0xe0+n%10; for(k=0;k<50;k+); P0=0xd0+n/10; for(k=0;k<50;k+); j=n; a=1; else if(a=1) P0=0xe0+j%10; for(k=0;k<100;k+); P0=0xd0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论