前言

  • 脉冲信号输入进2级74LS14整形
    T1接收脉冲信号并计数,显示在LED
  • 外部中断0控制计数器的启动/停止
    外部中断1控制计数器的清零复位
  • P1.0控制LED的段选口使能信号
    P1.1控制LED的位选口使能信号

Proteus电路图

asm代码

ORG      0000H
LJMP    INIT
ORG     0003H               //外部中断0
LJMP    INT0SUB
ORG     0013H               //外部中断1
LJMP    INT1SUBORG      0100H
INIT:   CLR     P1.0        //控制端复位CLR      P1.1MOV     DPTR,#TABLE //指向表头MOV       R0,#03H     //循环次数MOV       R1,#7FH     //位选信号MOV       TMOD,#50H   //工作模式MOV       TL1,#00H    //初始化SETB   EA          //启动总中断SETB EX0         //启动外部中断0SETB   EX1         //启动外部中断1SETB   TR1         //启动计数器1TRANS:  SETB    TR1         //启动计数器1MOV     A,TL1       //16进制转10进制MOV      B,#10DIV        ABMOV       40H,B       //个位MOV     B,#10DIV        ABMOV       41H,B       //十位MOV     42H,A       //百位        MAIN:   MOV     A,R1        //位选信号MOV       P0,A        //输出位信号SETB P1.1        //上升沿CLR        P1.1MOV     A,40H       //段选信号MOVC  A,@A+DPTRMOV      P0,A        //输出段信号SETB P1.0        //上升沿CLR        P1.0MOV     40H,41H     //改变段选信号MOV     41H,42HMOV      A,R1        RR      A           //位选右移MOV       R1,ALCALL   DELAY       //延时1msDJNZ R0,MAIN     //循环3次MOV       R0,#03H     //循环次数复位MOV     R1,#7FH     //位选信号复位SJMP    TRANS       INT0SUB:CLR     TR1         //启动/停止RETIINT1SUB:MOV      TL1,#00H    //清0RETITABLE:  DB  3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH //段选表DELAY: MOV     30H,#2      //延时1msMOV      31H,#234
NEXT:   DJNZ    31H,NEXTDJNZ    30H,NEXTRETEND

注:本例程只编写了TL1值的显示,上限255
(显示TH1或其他位的值同理,增加段选信号存放区域即可)

效果图

C51单片机实验——脉冲计数显示(proteus+asm)相关推荐

  1. 【单片机】脉冲计数(定时/计数器实验)

    [单片机]脉冲计数(定时/计数器实验) 一.操作目的 二.操作内容 三.程序框图 四.程序接线图 五.程序清单 六.代码详解 一.操作目的 熟悉单片机内部定时/计数器功能,掌握初始化编程方法. 二.操 ...

  2. c语言编程流水灯与交通灯实验,C51单片机实验报告_流水灯_交通灯_定时器_双机交互_时钟.doc...

    C51单片机实验报告_流水灯_交通灯_定时器_双机交互_时钟 学 号: 班 级: 自动化10班 姓 名: 张 指导老师: 胡 2012.12 单片机核心板实验要求 流水灯实验 实验目的: 简单I/O引 ...

  3. 51单片机 DHT11+LCD12864温湿度显示 + Proteus仿真

    51单片机 DHT11+LCD12864温湿度显示 + Proteus仿真 采用的接线方式是IIC接口,在Proteus里面仿真太慢了,不知道是电脑古老问题还是怎么,看图像就知道了,有多卡,感觉电脑运 ...

  4. 51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真

    51单片机ADC0832模数转换+ LCD1602显示+Proteus仿真 Proteus仿真 在Proteus SP2仿真过程中发现无法读取ADC0832的数据.解决办法:在proteus安装目录下 ...

  5. Arduino UNO + 74HC595联级+数码管实现000-999循环计数显示+ Proteus仿真

    Arduino UNO + 74HC595联级+数码管实现000-999循环计数显示+ Proteus仿真 3个74HC595联级显示000-999计数 Proteus仿真 实例代码 int latc ...

  6. 51单片机 DHT11+LCD1602温湿度显示 + Proteus仿真

    51单片机 DHT11+LCD1602温湿度显示+ Proteus仿真 主程序代码 #include <reg52.h> #include <LCD1602.h> #inclu ...

  7. 51单片机 ADC0809模数转换与显示+Proteus仿真

    51单片机 ADC0809模数转换与显示+Proteus仿真 Proteus仿真 实例代码 /*********************************/ #include <reg52 ...

  8. 51单片机定时器秒计数时钟+Proteus仿真

    51单片机定时器秒计数时钟+Proteus仿真 Proteus仿真 实例代码 本实例采用的是普中开发板Proteus模板 功能:电子钟,从左到右,1.2位为秒,3.4位为分,5.6位为时,7.8位为天 ...

  9. 单片机原理及其应用——单片机控制单个发光二极管实验(附超详细的C51单片机实验教程)

    目录 一.实验要求 二.利用Proteus仿真软件画原理图 三.Keil编程软件编写程序 (一)新建工程 (二)工程设置 (三)编写程序 四.将可执行文件加载到仿真图 五.连接电路图 六.通过烧录软件 ...

最新文章

  1. mybatis 调用 oracle 存储过程 select into 无记录时NO_DATA_FOUND异常处理分析
  2. 删除Windows 系统快捷方式箭头 Delete Windows Shortcuct Arrows
  3. Python学习笔记:面向对象高级编程(中上)
  4. 充分发挥bpl包的作用
  5. vue 中provide的用法_聊聊Vue中provide/inject的应用详解
  6. MATLAB 在一个数组中随机选择n个数
  7. 微软e5服务器,OFFICE365 E5调用api使E5开发者续订(不使用服务器)
  8. java中set怎么建int型_使用Array.setInt来填充Java中的数组
  9. php多图片上传程序2.4.3,php多文件上传 多图片上传程序代码
  10. jupyter 服务器 显示不完全,Jupyter中显示DataFrame的行显示不完全
  11. 三星固态硬盘linux驱动,三星固态硬盘驱动NVMe Driver
  12. java在线生成uuid_Java生成uuid
  13. 百度网盘下载提速,推荐3种亲测有效的方法
  14. vue 组件开发基本思路
  15. 四旋翼无人机数学模型推导
  16. html2d动画,HTML5之SVG 2D入门11—用户交互性(动画)介绍及应用
  17. jquery手写轮播图_用jquery实现图片轮播怎么写呢求指教
  18. 手机数据安全成为315晚会重灾区
  19. JQ局域网通信软件(C/S)
  20. 简书android des,Android 加密之DES加密

热门文章

  1. IDM“无法继续下载该文件”的解决方法图文教程
  2. 用友U8案例教程应收管理前台操作
  3. 匿名上位机V7与stm32通信协议
  4. CMMI资质等级之间的区别是什么?
  5. 51单片机——数码管、按键、矩阵按键C语言入门编程
  6. Win7 bat批处理命令
  7. Android平台GB28181设备接入端语音广播支持PS格式
  8. OpenStack平台对接堡垒机
  9. 中了,2600万 鸿雁成功拿下成都轨交30号线一期配电箱项目
  10. 全球游戏生态蝌蚪链TCT亮相GDC2018游戏开发者大会