焊接控制技术服务资讯平台         中软创芯电子 | 发布信息 | 设为首页 | 加入收藏

     

首页   焊接专栏   产品展示   技术频道   资讯快递   技术应用   供求信息   开发案例   联系我们
 点焊机控制器|焊接设备控制器|控制板开发订制
站内搜索:
推荐文章
基于NiosⅡ的直流电机PID调速控..
基于ARM的单相电力计量装置现场..
基于单片机C8051F130的远程在线..
基于VB与单片机技术的温度测控..
基于混沌蚁群的神经网络速度辨..
基于CANOPEN协议的智能消防水炮..
CC2430与DS18B20的粮库温度传感..
声传感器网络节点的硬件系统设..
基于Lonworks现场总线的机房监..
基于Windows CE的超市预收款系..
基于单片机及CPLD技术的B超检测..
施耐德QUANTUM PLC在炼钢转炉..
变频器在中央空调和采暖通风空..
嵌入式以太网数字语音广播系统..
基于μC/OS-Ⅱ的线控转向Fle..

 首页 >> 技术频道 >> 单片机技术
单片机数码管显示程序实验
焊接技术网   时间:2009-12-24

;********  数码管显示程序  ***************
pro_8led:
 mov b,#32                ;一共显示32个数字
 clr psw.3                ;重新设置寄存器组
 setb psw.4               ;

 mov r0,#00h              ;数据显示从0开始
 mov r1,#01h              ;数码管从第1个开始
   loop:mov p0,r1                ;点亮当前数码管
    mov a,r0                 ;准备第一个数据
 mov dptr,#tab_nu         ;获得表头
 movc a,@a+dptr           ;得到第一个数据
 mov led_data,a           ;输出到显示数据口
               
        lcall delay              ; 500 ms 延时
        lcall delay              ; 1   s  延时
        inc r0                   ;准备下一个数据
        mov a,r1                 ;准备下一位数码管
        rlc a                    ;设置下一个数码管
        jc c1                    ;8位全部显示,转移
        mov r1,a                 ;否则,设置下一位
        djnz b,loop              ;32个数没有显示完,返回显示   
        ret                      ;否则返回主程序

c1:   mov r1,#1                  ;8位显示完,重新开始循环
        clr c                    ;设置显示位
        djnz b,loop              ;32位显示完则返回重新显示
        ret                      ;否则返回到主程序
;*************  数码管显示   *******************************

;*************  软件延时 500ms  *****************************
delay:  push psw              ; 保存原来的寄存器内容
        clr psw.3             ;
 clr psw.4             ; 设置新的寄存器组
 mov r0,#2             ; 延时参数1
 mov r1,#250           ; 延时参数2
 mov r2,#2             ; 延时参数3
    dl1:djnz r0,dl1           ; 延时循环1
     mov r0,#250           ;
    dl2:djnz r1,dl1           ; 延时循环2
        mov r0,#240           ;
        mov r1,#248           ;
    dl3:djnz r2,dl1           ; 延时循环3
 nop                   ; 定时精度调整
 pop psw               ;  恢复原来的寄存器
        ret                   ;   返回
;**********************************************************

;**********************************************************
;这是数字显示表格,其中 带小数点的数字比不带小数点的数字大16
; 比如 0 的显示代码为 0;那么 0.的显示代码为 16;如此类推

tab_nu:
       db 0c0h,  0f9h, 0a4h,  0b0h,  99h ,  92h ,  82h, 0f8h ; 数字0-7 不带小数点代码
       db 80h ,  90h,  88h ,  83h ,  0c6h,  0a1h,  86h, 8eh  ; 数字8-f   不带小数点代码
       db 40h ,  79h,  24h ,  30h ,  19h ,  12h ,  02h, 78h  ; 数字0-7  带小数点代码
       db 00h ,  10h,  08h ,  03h ,  46h ,  21h ,  06h, 0eh  ; 数字8-f   带小数点代码

      end  

 
第1页 第2页
>>上一篇: 单片机电子时钟设计程序_数字显示
>>下一篇: 温度控制器的设计实例_AT89S51单片机为核心
打印】 【关闭
【资讯版权声明】
 1. 本站所提供资源均为原文章或程序作者提供和网友推荐收集整理而来,仅供学习和研究使用,不得用于商业用途。
 2. 本网转载自其它媒体的信息,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。
 3. 未经本站明确许可,任何网站不得非法盗链软件下载连接及抄袭本网站原创内容资源。
 4. 违反上述声明者,本网将追究其相关法律责任。谢谢!

关于创芯  开发案例  版权声明  友情连接  联系我们 
Copyright©2006-2012 焊接技术网 | 中软创芯 版权所有
电话:0755-33370966 传真:0755-33373106 E-mail:szbase@126.com QQ:1092081589
致力于焊接控制技术应用推广|点焊机控制器|对焊机控制器|缝焊控制器|电阻焊控制器|控制器设计订制
本站资源仅供学习参考,部分内容来源于网络,如侵犯您的版权,请通知本站即撤
ICP备案序号:粤ICP备10019209号