单片机与接口技术实验报告--定时计数器应用设计

时间:2024.5.2

本科实验报告

课程名称:    单片机原理与接口技术     

实验项目:     定时/计数器应用设计      

实验地点:         跨越机房            

专业班级:              学号:           

学生姓名:                             

指导教师:                             

2012 年 4 月 10 日

一、实验目的和要求

       (1)加深对MCS-51单片机定时/计数器内部结构、工作原理和工作方式的理解。

       (2)掌握定时/计数器工作在定时和计数两种状态下的编程方法。

       (3)掌握中断服务程序的设计方法。

二、实验内容和原理

       (1)定时器实验

        在使用12MHz晶振的条件下,用T1产生50ms定时,两个7段LED数码管从“00”开始显示,每1s加1,到达“59”后,再从“00”开始,完成60s定时功能。

       (2)计数器实验

        用T0对外部输入脉冲进行计数。P0口上接8只发光二极管,开始时8只发光二极管全灭,然后由T0输入脉冲,5个脉冲后,8只发光二极管全亮,持续5个脉冲后全灭,再等5个脉冲输入后全亮,如此循环。

三、主要仪器设备

     计算机一台;伟福6000

四、操作方法与实验步骤(上机源程序)

        (1)定时器实验程序

ORG       0000H                  

                     AJMP     START                  ;跳到START处开始执行

                     ORG       001BH                  ;定时/计数器1中断入口地址

                     AJMP     TIME1                  ;跳转到中断执行程序

                     ORG       0030H                  

START:          MOV     SP,#60H                ;设置堆栈起始地址

                     MOV      TMOD,#10H         ;设定T1工作于定时方式1

                     SETB      EA                       ;开启总中断

                     SETB      ET1                      ;开启T1中断

                     MOV      R3,#60                  ;设定时60s

                     MOV      R0,#0                    ;初始化软件计数器1

                     MOV      R1,#0                    ;初始化软件计数器2

                     MOV      TH1,#3CH             ;装入定时器计数初值

                     MOV      TL1,#0B0H           ;定时时间为50ms

                     SETB      TR1                      ;启动T1定时

                     SJMP      $                          ;等待中断

TIME1:          PUSH     ACC                     ;ACC入栈

                     PUSH     PSW                     ;PSW入栈

                     INC        R0                        ;软件计数器1加1

                     MOV      A,R0                     ;(R0)→A

                     CJNE      A,#20,T_LP2         ;1s到了吗,到了则输出LED;把R1中值转换为十进制数输出

                     MOV      A,R1                     ;(R1)→A

                     MOV      B,#10                    ;10→B

                     DIV        AB                       ;(A)/(B)→A,(A)%(B)→B

                     SWAP     A                          ;将得到十位数乘以10→A

                     ADD       A,B                      ;(A)+(B)→A

                     MOV      P1,A                     ;把A中的值输出到P1

                     INC        R1                        ;软件计数器2加1

                     CJNE      R1,#60,LP0           ;判断软件计数器2是否到达60

                     MOV      R1,#00H               ;达到60则清零

LP0:               MOV      R0,#00H               ;软件计数器1清零

T_LP2:           MOV      TH1,#3CH             ;重新装入定时器计数初值

                     MOV      TL1,#0B0H           ;定时50ms

                     POP        PSW                     ;取回数据

                     POP        ACC                    

                     RETI                                  ;返回

                     END

(2)计数器实验程序

                     ORG       0000H                  

                     MOV     TMOD,#06H         ;设置T0工作于方式2,计数器模式

                     MOV      TH0,#251              ;初始化计数初值=256-5

                     MOV      TL0,#251              

                     SETB      TR0                      ;开始计数

START:          MOV      P0,#0FFH             ;LED全部灭掉

                     JNB        TF0,$                    ;判断计数器是否溢出

                     CLR        TF0                      ;清除溢出标志

                     MOV      P0,#00H                ;LED全部点亮

                     JNB        TF0,$                    ;继续判断计数器是否溢出

                     CLR        TF0                      ;清除溢出标志

                     AJMP     START                  ;返回

                     END                                  

五、实验数据记录和处理

(1)数码管从00开始1S加1到59,再1S后清0,再继续加。

(2)彩灯一会全亮一会全灭。

六、实验结果与分析

    用晶振脉冲我们实现了定时器功能,用计数功能计算脉冲数,实现了彩灯的间歇全亮全灭。

七、讨论、心得

    实验成功,通过本实验的编程和用自己的开发板观察现象,对脉冲有了更深的了解,我们可以通过对脉冲数的记录来人为控制一些东西,实现我们所需要的功能。


第二篇:《设计任意进制计数器》的实验报告


实验八   设计任意进制计数器

一、实验目的

掌握中规模集成计数器的使用方法及功能测试方法。

二、实验内容及要求

采用(74LS192)复位法或预置数法设计一个三位十进制计数器。要求各位同学设计的计数器的计数容量是自己学号的最后三位数字。

三、设计过程

74LS192是中规模同步十进制可逆计数器,具有双时钟输入,并具有清除和置数等功能,其引脚排列如图所示。74LS192(CC40192)的功能如下表所示。

表74LS192(CC40192)的功能

用M进制集成计数器可以构成N(任意)进制的计数器。通常用反馈清零法和反馈置数法。当计数器的计数N>M时,则要用多片M进制计数器构成。其计数规律为:当低位计数器没有达到计数的最大值时,如74LS192的1001时,其高位芯片应处于保持状态,只有当低位芯片计数达到最大值时,给相邻的高位芯片计数器发一个信号,使其脱离保持状态,进入计数状态。现以233为例为计数容量进行设计。由于233为三位数,因此需用三块74LS192。

1、清零法:

CR(RD)=(Q1Q0)百(Q1Q0 )拾(Q1)个

初态:0000

终态:233-1=232即:0010  0011  0010

状态转换图:(略)

2、置数法:由于74LS192是具有异步清零、置数功能的十进制计数器,因此保留哪233种状态,方法有多种。下图是其中两种置数法。犹以最后一种使用器件最少,接线最为简单。

方案一:

方案三:

*=(Q1Q0)百(Q1Q0 )拾(Q2Q0)个    (或*

初态:0000              (或1000-332=668)

终态:332-1=331即:0011 0011 0001  (或999)

四、实验用仪器、仪表

   数字电路实验箱、万用表、74LS192、74LS00、74LS20、74LS08等

五、实验步骤

  清零法:

1. 检查导线及器件好坏(即加上电源后,按74LS192的功能表进行检测)。

2. 按上图连接电路。*、CPD分别接逻辑开关并置为高电平,百位(74LS192(3))、拾位、个位的Q3、Q2、Q1、Q0分别接发光二极管或数码管,计数脉冲接手动或1Hz时钟脉冲。检查无误后接通电源。

3. 加入CP进行测试并检查结果是否正确,如有故障设法排除。

4. 结果无误后记录数据后拆线并整理实验设备。

实验数据如下:

实验证明,实验数据与设计值完全一致。设计正确。

 置数法:

1.   检查导线及器件好坏(即加上电源后,按74LS192的功能表进行检测)。

2.   按上图连接电路。CR、CPD分别接逻辑开关并置为高电平,百位(74LS192(3))、拾位、个位的Q3、Q2、Q1、Q0分别接发光二极管或数码管,计数脉冲接手动或1Hz时钟脉冲。检查无误后接通电源。

3.   加入CP测试并检查结果是否正确,如有故障设法排除。

4.   结果无误后记录数据后拆线并整理实验设备。

实验数据如下:

实验证明,实验数据与设计值完全一致。设计正确。

六、设计和实验过程的收获与体会。

1、设计过程的收获与体会:

设计前要确定是用清零法还是置数法。

要将状态表列出。特别是置数法,要保留哪几种状态方法有多种。

可用Electronics Workbench进行仿真。以验证设计正确与否。

2、实验过程的收获与体会:

 CC40192的CR、*、CPD端不能悬空;

出现故障时,首先检查电源,然后检查CP,CR、*、CPD端的电平状态。如不相符,则可能存在断路现象。如相同,可能存在设计错误,或者可能器件已损坏。

实验逻辑电路图最好把集成块的引脚标上,以便接线和检查。

更多相关推荐:
实验六 同步计数器的设计实验报告

数字电路实验报告实验六同步计数器的设计学号姓名一实验目的和要求1熟悉JK触发器的逻辑功能2掌握用JK触发器设计同步计数器二实验仪器及器件三实验预习1复习时序逻辑电路设计方法逻辑抽象得出电路的状态转换图或状态转换...

计数器实验报告

实验4计数器及其应用一实验目的1学习用集成触发器构成计数器的方法2掌握中规模集成计数器的使用及功能测试方法二实验原理计数器是一个用以实现计数功能的时序部件它不仅可用来计脉冲数还常用作数字系统的定时分频和执行数字...

实验四、 计数器的设计 电子版实验报告

实验四计数器的设计实验室实验台号日期专业班级姓名学号一实验目的1通过实验了解二进制加法计数器的工作原理2掌握任意进制计数器的设计方法二实验内容一用D触发器设计4位异步二进制加法计数器由D触发器组成计数器触发器具...

十进制计数器实验报告

广东水利电力职业技术学院20xx年4月1日设计一个动态显示十进制计数器一前言本实验将用到七段数码显示译码器译码器是用来驱动各种显示器件从而将用二进制代码表示的数字文字符号翻译成人们习惯的形式直观地显示出来的电路...

光电计数器实验报告

光电计数器实验报告学生姓名李志学号081244115专业名称光信息科学与技术指导教师易煦农时间日期20xx1019摘要21世纪是信息时代是获取信息处理信息运用信息的时代传感与检测技术的重要性在于它是获得信息并对...

光电计数器课程设计实验报告

皖西学院机械与电子工程学院课程设计皖西学院课程设计报告书系别专业学生姓名课程设计题目起迄日期课程设计地点指导教师机械与电子工程系电子信息科学与技术学号光电计数器12月10日12月22日教学实验楼B楼张斌1皖西学...

数字系统设计实验报告计数器、累加器

实验五计数器设计一实验目的1复习计数器的结构组成及工作原理2掌握图形法设计计数器的方法3掌握VerilogHDL语言设计计数器的方法4进一步熟悉设计流程熟悉数字系统实验开发箱的使用二实验器材数字系统设计试验箱导...

电子秒表设计实验报告

淮阴工学院数字电子技术课程实验期末考核20xx20xx学年第2学期实验名称电子秒表电路的设计班级学号姓名学院专业系别指导教师成绩20xx年07月电子与电气工程学院自动化自动化数字电子技术实验指导教师组电子秒表电...

程序设计实践 计算器程序实验报告

北京邮电大学信息与通信工程学院程序设计实践课题名称简易计算器设计与实现学生姓名班级班内序号学号日期设计报告第1页北京邮电大学信息与通信工程学院1课题概述11课题目标和主要内容本案例以编写基于MFC的简易计算器软...

计算器的设计与实现 编译原理实验报告

中北大学软件学院实验报告专业课程名称学号姓名辅导教师张静成绩

频率计设计实验报告

频率计设计实验报告智能090120xx010993周红蕊一设计任务设计一个频率计电路要求有4位十进制数码显示可测量函数发生器输出的信号频率1可测量9999KHZ以内的频率并显示24位数的任意脉冲计数和显示3将灵...

基于mfc的计算器实践报告(vs20xx)

目录1基本功能描述22设计思路23软件设计531设计步骤532界面设计633关键功能的实现84结论与心得体会85附录951调试报告952测试结果953关键源代码10大连理工大学创新实验学院键入文字键入文字1基本...

计数器设计实验报告(37篇)