单片机定时器试验报告_第1页
单片机定时器试验报告_第2页
单片机定时器试验报告_第3页
单片机定时器试验报告_第4页
单片机定时器试验报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

1、xxxx大学信息工程与自动化学院学生实验报告(20092010 学年 第 二 学期)课程名称:单片机开课实验室:2010年5月14日业 专 年班学号1名 冃 项验 实称指导教 师教师评语日 锹 颈忍 签月 cccx年 MU刮豌1 - 1J 卫 i rLrL 基疇基基一 R- rH- 1J J rL rL液 57 了强达规详 A A A A A一.实验目的:掌握定时器TO、T1的方式选择和编程方法,了解中断服务程序的设计方法,学会实时 稈序的调试技巧。二. 实验原理:MCS-51单片机内设置了两个可编程的16位定时器TO和T1,通过编程,可以设定为定 时器和外部计数方式。T1还可以作为其串彳j口

2、的波特率发生器。定时器T0由特殊功能寄存器TLO和TII0构成,定时器T1由TH1和TL1构成,特殊功 能寄存器TMOD控制定时器的丁竹方式,TCON控制比运行。定时器的中断由屮断允许寄存器 IE,中断优先权寄存器IP中的相应位进行控制。定时器T0的屮断入I地址为OOOBH, T1 的中断入口地址为OOlBHo定时器的编用包括:1) 置工作方式。2) 置计数初值。3) 中断设置。4) 启动定时器。定时器/计数器由四种工作方式,所用的计数位数不同,因此,定时计数常数也就不同。在编写中断服务程序时,应该清楚中断响应过程:CPU执行中断服务秤序之前,白动 将程序计数器PC内容(即断点地址)压入堆栈保

3、护(但不保护状态寄存器PSW,更不保护 累加器A和其它寄存器内容),然后将对应的中断矢最装入FT库计数器PC使和丫转向该屮断 矢量地址单元中以执行屮断服务程序。定时器TO和T1对应的屮断矢量地址分别为OOOBH 和 OO1BH,中断服务程序从矢割地址开始执行,一直到返回指令RETI”为止。“RETI”指令的 操作一方血告诉中断系统该中断服务榨序己经执行完毕,另-方血把原来压入堆栈保护的断 点地址从栈顶弹出,装入到卅序计数器PC,使丹序返I叫到被到屮断的秤序断点处,以便继 续执行。因此,我们在編写中断服务程序时注意。1. 在中断矢量地址单元放-条无条件转移指令,使中断服务秤序可以灵活地安排在64

4、K 字节秤序存储器的任何空间。2. 在中断服务程序中应特别注意用软件保护现场,以免屮断返冋后,丢失原寄存器、 累加器的信息3. 若要使执行的当前屮断程序禁止更高优先级屮断,可以先用软件关闭CPU中断,或 禁止某中断源中断,在返I叫前再开放中断。三. 实验内容:编写并调试一个程序,用AT89C51的TO工作方式1产生h的定时时间作为秒计数时 间,*1 Is产生时,秒计数加1:秒计数到60时,自动从0开始。实验电路原理如图1所示。计算初值公式定时模式150=(2-定时时间)/256110=(2叱定时时间)mod 256C3XT/U1巾屮。XTAUP02*a2R9TnoMFZWQF2CFiwwa F

5、zs*a R2MAUJ1亠土亠主亠rt.inarnTOFIJFl.en.vroR15njmF14F1JFIEFill图l定时器实验电路原理图四. 实验步骤:I 打开Proteus ISIS编辑环境,按下表所列的元件清单添加元件。 实验所用元件清单元件名称所属类所屈子类AT89C51Microprocessor ICs8051 FamilyCAPCapacitorsGenericCAPELECCapacitorsGenericCRYSTALMiscellaneous-RESResistorsGeneric7SEG-COM-CAT-GRNOptoelectronics7-Segment Displ

6、aysPULLUPModelling PrimitivesDigital! MiscellaneousAT889C51元件,界面如图所示:3Pick Ocvfc4*sARM AVR Fei BASIC Strro ModuUt DSP1 匚33 FamAnalog devices Aftzona MaciochipAralo0 C CdP0Cc10000 SZ3 E lecConechanioa! IruSiictos La(ince PivtWiwi Mecliorwct MonxxylCcModelng Prvralives O pcvationai AmpMf i O ptockctro

7、rvc d PICAXE子 358UFI68000 Fax e4 :翻件80C57580C58 8OC50BUS 80C65280(X31 80(X4108X5048X50883C57683C65483C74S83C74983C75O 83C751 63C752830.781 83L51FA 8X51 re 87CS2487CS2887CS5267CS5287C854AT 99(71051AT09C20S1ATMC4051AT99C51AT89C51 BUS ATO9C51RD2 AT83C51RB2BUS AT09C51RC AT09C51RC2 8US AT89C51RD2 AT99C51

8、RD8US AT89C52MCS8061MCS9051MCS8051MCS8051MCSW51MCS8051MCS8051MCS8051M MCS8051M C$9051MCS8061MCS8051MCS8051MCS80S1MCS6051MCS8051MCS8051MCS0O51MCS8051MCS8051MCS8051MCS8051MCS8051MCSfiOSIMCS8051MCS8051MCS8051MCS9051MCS8051MCS8051MCS8051MCS81MCS8W518051 8051 8051 0051 coco Miccoconcrollof RON 3= 2568 RA

9、M. 4x& ceco mtcfocoruroUoc %Mth 32k8 ROM. 2568 FVXk ooco rmccoconfroaoc32kB ROM. 25GB RAk core MicrocontroBoc ROM teas 2568 RAM. 48 oore McroeofMroUer ROM Zo. 1288 RAM. UAF8051 octo Microconlroior ROM Z:. 1288 RAM I2C 8051 cote MtcrocorrfroNof Xh 16kB ROM.筋6B Mb 80S! core MiCfOCor*roMo %s*h 32kB ROM

10、. 256B RAK 9051 &8051 8051 6051 8051 6061 8051 8051 9051 8051 60518051 cere MtcvoconlroAer 6kB EPROM. 2568 RA 8051 core MicrocorMroBer SB EPROM. 2568 FU 80S! coe MicroconlroBef wth 16kB EPROM. 2568 R 9-bi rrwcoeor*roHer m 1K code ltah nd 64 b* am rmctoconlroMef ih 2K code lUth rw1128*btf nai bH rncf

11、ocomraiet with 4K code lUxh nd 128-btf “o 8051 MioocontoSef (4kB code. 33MH*Timeeo5i -、-80518051 8051 80518OT18051 _8052 MicroconiotM (.B cod*. 2%8 33MH轨 3 v 4oxo Microconow 5 QkB ROM, 2S66 RAMj c* core MicrocontroNcr *MTh 2k8 ROM. G4B RAM. core McrocorroAor lb 2kB ROM 648 RAM.; core MicrocxxMroBor

12、gh IkB ROM. 64B RAM. cor Microcor*roOor Xh 2KB ROM. 64B RAM. core Microcorilroicf Ih 2kB ROM. 640 RAM ; cow MioocorlroMef 7h 16kB ROM 2568 RAK Microccxilro*Qf vrtlh 4k8 ROM. 1298 RAMcote MctoeoWlfoief *wh 4*Hz. Watchdog * Miciocontolef (160 code. 48MH?. Watchdog Mictocontoaei (32kB code 46MH/. Watch

13、dog - Mkfocontolvcod 46MH/. Watchdog Mtcwconiol* (64kB c. 4OdH?. WtcKiog MQoeonrolb (G4kB cod. 40MH, WtcUlog B元件全部添加时点击所添加的文件.并点击右键.选择“编辑屈性SPC8WM;DIL40环gi | I即法()无件乡号(BI:C?4*cil4BrC9leiRCfiCAR、。件不讲 C Of XL LSJ壬充;叶不用于FCBUJU.) 何阳 立逹:NT共*,话岗卞用航強 g jPfMJ J5?豪 IM)元件全部添加丿汗.在Proteus ISIS的编辑区域屮按实验原理图连接酸件电路.

14、连接结果如下图所心Foar.xo 阳 FOSMC rajTAO F0 心 阳心9Q7MffF2O0CnM fzwacFZfifAUF2T/ASF3HTMR3JfW1D F33fflTH nvtoF3m2.按实验耍求在KeilC屮创建项日.编辑、编详程序.和序如下图所示:由编译结果可见,秤序无论 可进行导入。3.将编谦生成的日标码文件(肩缀为.Hex)传入Proteus ifj实验电路屮。在proteus软件已经完成实验电路图屮选屮元件“AT89C51 ”,单击元件,添加己生成的.hex 文件,点击确定S即可导入,如下图所示;|ui(ATOTC5r 硒疋gi | | 帼 fthau iPCB 尸

15、 s乂 y PfoOforr File Clock Ftei-rF3 1H rjWTO rafWHF3 HD 3sn r J W F3 E9由此町见,电路连接正确.源代码正确.实现了实验的相应要求五. 参考程序:second equ 30hcount equ 31 liorg (X)liIjmp startorg ObhIjmp int_t()start: mov second,#00hniov count.#()Ohmov dplr,#lable:段码表忤址mov pO,#3fhmov p2,#3fhmov tmo(J,#()lhmov thO,#(65536-50(X)0)/256mov

16、tl0,#(65536-50000) mod 256 ;定时 50ms setb trOmov ie.#82hsjmp Sint_tO: mov thO.#(65536-50000)/256mov H0M65536-50000) mod 256inc countmov accountcjne a,#20J2;是否到 Ismov count, #()()hinc secondmov a.secondcjne a.#60.i I;是占到 60smov second,#(X)hil:mov a,secondmov b.# 1()div abmove a,a+dptrmov pO.amov a.bmo

17、ve a,a+dptrmov p2,ai2:retitable: db 3fh,06h,5bh.4ni,66hdb 6dh.7dh,07h,7fh,6fhend六. 思考题:若用定时器1方式2,円斥如何修改?答:程序修改如下:SECONTD EQU 30HCOUNTEQU31HORG (X)H1JMP STARTORG 1BH :Tl屮断入I I地址aa:aiaviI1HH :乙IV7d AOWHldCl+VVD AO0J eYACHAl VX)d AOmHlda+V(0kV3 AOIVHV Aid oirfl aowQNO33S4V AOJN :IIHOOTCINOKJS AO讽 s09hW?F- ir()9rvaNfD UNOJHS V AM QNO33S ONI H()0#丄NflO3 AO si hJ晋辽roooz#、HNQ INHOV AOIM 1N3O3 DNI :l 丄一丄NI SdPifS H88#4H1 AOWM9orn 1 aow 命型 OOSAhT: M90#41 i ll AOFN jmi 串 v 谢 ir Horaow丄 aopj HJ#7d AOSI 1 El trod AOIAl -lii

温馨提示

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

评论

0/150

提交评论