小弟编制一个程序功能是:利用定时器0和数显芯片做一个时,分,秒显示(6个数码管)

汇编程序已经编制出来了 可是用C语言却不能实现

汇编程序:

EN BIT P2.7

DOUT BIT P2.6

CLK BIT P2.5

DISPBUF EQU 20H

MSCNT EQU 30H

ORG 0000H

AJMP MAIN

ORG 000BH

LJMP TC0INT

ORG 0035H

;**************************************

;主程序

;**************************************

MAIN: MOV SP,#60H

MOV R7,#06H

MOV R0,#DISPBUF+1

LOOPCLR: MOV @R0,#00H

INC R0

DJNZ R7,LOOPCLR

MOV TMOD,#01H

MOV TH0,#0BH

MOV TL0,#0DCH

SETB EA

SETB ET0

SETB TR0

MOV MSCNT,#10H

LCALL SETXIAO

LCALL TSLED

SJMP $

;**************************************

;中断服务程序

;**************************************

TC0INT: PUSH PSW

PUSH ACC

CLR RS1

SETB RS0

MOV TH0,#0BH

MOV TL0,#0DCH

MOV A,MSCNT

DEC A

MOV MSCNT,A

JNZ GOTO_RET

MOV MSCNT,#10H

;秒的调整处理

MOV R0,#DISPBUF+2

LCALL DAADL

CJNE R2,#60H,TSLED_LOOP

LCALL CLR0

;分的调整处理

MOV R0,#DISPBUF+4

LCALL DAADL

CJNE R2,#60H,TSLED_LOOP

LCALL CLR0

;时的调整处理

MOV R0,#DISPBUF+6

LCALL DAADL

CJNE R2,#24H,TSLED_LOOP

LCALL CLR0

TSLED_LOOP: LCALL TSLED

GOTO_RET: POP ACC

POP PSW

RETI

;****************************************

;调整子程序

;****************************************

DAADL: ;合并

MOV A,@R0

SWAP A

DEC R0

ORL A,@R0

INC A

DA A

MOV R2,A

;拆分

ANL A,#0FH

MOV @R0,A

MOV A,R2

ANL A,#0F0H

SWAP A

INC R0

MOV @R0,A

RET

;*****************************************

;缓冲清0子程序

;*****************************************

CLR0: CLR A

MOV @R0,A

DEC R0

MOV @R0,A

RET

;*****************************************

;DTLED-6小数位、ID识别码、蜂鸣器设置子程序

;*****************************************

SETXIAO: MOV R0,#DISPBUF

MOV @R0,#00H

MOV R0,#DISPBUF+7

MOV @R0,#01H

MOV R0,#DISPBUF+8

MOV @R0,#00H

RET

;**************************************

;DTLED-6送数码管显示子程序

;**************************************

TSLED: CLR CLK

CLR EN

LCALL DELAY_200US

MOV R0,#DISPBUF

MOV R2,#00H

MOV R3,#00H

LEDBYTE_LOOP: MOV A,@R0

SWAP A

LEDBIT_LOOP: SETB CLK

RLC A

MOV DOUT,C

CLR CLK

LCALL DELAY_10US

INC R3

CJNE R3,#04H,LEDBIT_LOOP

MOV R3,#00H

INC R2

INC R0

CJNE R2,#09H,LEDBYTE_LOOP

SETB EN

RET

;**************************************

;200US延时子程序

;**************************************

DELAY_200US: MOV R4,#98

DJNZ R4,$

NOP

RET

;**************************************

;10US延时子程序

;**************************************

DELAY_10US: MOV R4,#3

DJNZ R4,$

NOP

RET

;***************************************

;程序结束

;***************************************

END

自己试编的C语言如下:请高手看看问题出在哪里?

#include "at89x52.h"

#include "stdio.h"

#include "intrins.h"

#define uchar unsigned char

#define uint unsigned int

#define nop _nop_();

sbit en=P2^7;

sbit dout=P2^6;

sbit clk=P2^5;

uchar dispbuf【9】;

uchar clocktime【4】;

uint mscnt;

uint i;

void delay (unsigned int value)

{

while (value!=0)

value--;

}

void setxiao(void);

v

c语言负数显表,C语言编程问题请教高手-专业自动化论坛-中国工控网论坛相关推荐

  1. plcst语言编程教程_PLC ST语言编程之我的心得-专业自动化论坛-中国工控网论坛...

    以前编程都是习惯用梯形图,每次编运算程序,都得写很多条运算程序.调试且不说,就光重复使用就得复制好几遍,还要一遍一遍的改寄存器地址,很是麻烦.一次偶然的机会,我用到了一款PLC可以使用ST 语言编程的 ...

  2. 最严谨的计算机语言p,一款全新的 高级PLC编程语言 P语言 简介-专业自动化论坛-中国工控网论坛...

    几年前,我带研究生做了个"高级PLC编程语言[P语言]",不知是否有意义? 现贴出看看,望指点,指教.谢谢! 摘要:本文介绍了一款国产的.自主的.全新的计算机高级语言[简P语言]. ...

  3. 西门子哪款plc支持c语言,C语言 - 西门子PLC论坛 - 中国工控网论坛 - 中国自动化领域权威论坛...

    据传输指令 ─────────────────────────────────────── 它们在存贮器和寄存器.寄存器和输入输出端口之间传送数据. 1. 通用数据传送指令. MOV 传送字或字节. ...

  4. c语言线性顺序表,C语言程序——线性顺序表.doc

    C语言程序--线性顺序表.doc 下载提示(请认真阅读)1.请仔细阅读文档,确保文档完整性,对于不预览.不比对内容而直接下载带来的问题本站不予受理. 2.下载的文档,不会出现我们的网址水印. 3.该文 ...

  5. 用标准C语言初始化线性表,C语言数据结构-顺序线性表的实现-初始化、销毁、长度、查找、前驱、后继、插入、删除、显示操作...

    1.数据结构-顺序线性表的实现-C语言 #define MAXSIZE 100 //结构体定义 typedef struct { int *elem; //基地址 int length; //结构体当 ...

  6. c语言负数左移右移_C语言位运算符:与、或、异或、取反、左移和右移!

    语言位运算符:与.或.异或.取反.左移和右移 位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符 ...

  7. php语言注册信息表,php语言表的空结果

    我试图在数据库中添加多种语言选项.我创建了一个表,如下所示. 我的PHP函数是: public function Languages(){ $query=mysqli_query($this-> ...

  8. c语言负数左移右移_C语言位运算符:与、或、异或、取反,左移和右移

    C语言位运算符:与.或.异或.取反.左移和右移 个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型. ,则该位的结果值为1,否则为0 | ...

  9. c语言变量名下表,C语言变量名命名规则

    一.程序风格: 1.严格采用阶梯层次组织程序代码: 各层次缩进的分格采用VC的缺省风格,即每层次缩进为4格,括号位于下一行. 要求相匹配的大括号在同一列,对继行则要求再缩进4格.例如: 2.提示信息字 ...

最新文章

  1. RHEL 5服务篇—使用Apache搭建Web服务(一)
  2. 此域的推荐安全级别是“安全级-高”的解决办法
  3. mysql数据转储方法_Mysql数据库各种导出导入数据方式的区别(我的理解错误还望指正)...
  4. 5行Python 代码就能让你的电脑永不息屏
  5. WTL学习笔记——初章
  6. Spring Boot(7)---构建系统和依赖管理
  7. nginx windows启动停止_Nginx之3抛砖引玉 - (目录索引)
  8. Ubuntu 8.04 Hardy LTS 软件源设置
  9. 面向对象的数据库开发--再论ORM
  10. spring入门常见的问题及解决办法
  11. TCP/UDP协议简要梳理
  12. 免费下载《程序员面试宝典》.pdf
  13. rtx2060为什么叫智商卡_作为世界上智商最低的狗种之一,中华田园犬是否“名副其实”?...
  14. sybase datediff mysql_Sybase中的日期时间函数_龙的天空
  15. 数据挖掘流程总结及案例分析
  16. MPLS之LDP的工作原理和配置
  17. iApp4Me一周年记
  18. etf动量轮动+大盘择时:年化30%的策略
  19. 【毕业设计】老人心率脉搏血压体征监测手表 - stm32 单片机 嵌入式 物联网
  20. 英语口语考试资料Food

热门文章

  1. Matlab中annotation函数的使用
  2. java记事本写玫瑰花代码_Java记事本源代码(完整)
  3. 基于JavaWeb的汽车销售管理系统设计与实现 项目源码及数据库文件+论文
  4. Delphi IDE无法连接三层服务器的解决
  5. 结构化数据(structured),半结构化数据(semi-structured),非结构化数据(unstructured)...
  6. 会议音频处理器(8进8出)
  7. C# WinForm开发系列 - PDF
  8. yacc语法分析minipascal_语法分析器 YACC实验报告
  9. 怎么正版登录我的世界java_【正版】求问正版登陆到底是怎么登陆的TAT【】【】【】【】【】...
  10. 表单元素的submit()方法和onsubmit事件