世纪电源网社区logo
社区
Datasheet
标题
返回顶部
未解决

基于51单片机的数控直流稳压电源问题

[复制链接]
查看: 1500 |回复: 2
1
magic123zhang
  • 积分:223
  • |
  • 主题:2
  • |
  • 帖子:3
积分:223
LV3
助理工程师
  • 2009-5-15 13:43:22
10问答币



程序呢个编译成功, 为什么电路仿真数码管完全没有反应,?是不是程序有问题
收藏收藏
magic123zhang
  • 积分:223
  • |
  • 主题:2
  • |
  • 帖子:3
积分:223
LV3
助理工程师
  • 2009-5-15 14:09:24
  • 倒数2
 
ORG 0000H
SCL BIT P1.0;定义24C02的串行时钟线
SDA BIT P1.1;定义24C02的串行数据线
LJMP START
START:
LCALL STAR;调用
MOV R2,#08H;一个数据有8
MOV DPTR,#0600H ;定义源数据的位置
LOOP:
MOV A,#00H
MOVC A,@A+DPTR
LCALL SDATA
LCALL ACK
JC LOOP
INC DPTR
DJNZ R2,LOOP
LCALL STOP;调用停止子程序
STAR:
SETB SDA
SETB SCL
NOP
NOP
NOP
NOP
CLR SDA
NOP
NOP
NOP
CLR SCL
RET
SDATA: MOV R0,#10H
LOOP0:
RLC A
MOV SDA,C
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
CLR SCL
DJNZ R0,LOOP0
RET
ACK:
SETB SDA
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
MOV C,SDA
CLR SCL
RET
STOP:
CLR SDA
NOP
NOP
NOP
NOP
SETB SCL
NOP
NOP
NOP
NOP
SETB SDA
NOP
NOP
NOP
NOP
RET
MAIN1:
ORG 0060H
MOV R3,#0A0H;(命令1010+器件3位地址+/写。 器件地址一个芯片,是000
MOV R4,#00H;置片内字节地址
MOV R1,#71H;置欲写数据存放地址指针
MOV R7,#01H;置连续写字节数n
EEPR: MOV P1,#0FFH
CLR P1.0;发开始信号
MOV A,R3;送器件地址
ACALL SUBS;调发送单字节子程序
MOV A,R4;送片内字节地址
ACALL SUBS
MOV P1,#0FFH
CLR P1.0;再发开始信号
MOV A,R3
SETB ACC.0;发读命令
ACALL SUBS
MORE: ACALL SUBR
MOV @R1,A
INC R1
DJNZ R7,MORE
CLR P1.0
ACALL DELAY
SETB P1.1
ACALL DELAY
SETB P1.0;送停止信号
RET
SUBR: MOV R0,#08H;接受单字节子程序
LOOP2: SETB P1.1
ACALL DELAY
MOV C,P1.0
RLC A
CLR P1.1
ACALL DELAY
DJNZ R0,LOOP2
CJNE R7,#01H,LOW_1
SETB P1.0;若是最后一个字节置A=1
AJMP SETOK
LOW_1: CLR P1.0;否则置A=0
SETOK: ACALL DELAY
SETB P1.1
ACALL DELAY
CLR P1.1
ACALL DELAY
SETB P1.0;应答毕,SDA1
RET
LCALL DA_
DA_:
MOV A,P0
MOV DPTR,#0FEFFH
MOVX @DPTR,A
RET
MAIN:
ORG 001BH
LJMP TIINT
ORG 0030H
LCALL INIT
;初始化子程序:
INIT:
CLR RS0
CLR RS1
MOV R0,#10H
MOV R1,#00H
MOV P1,#0FFH
CLR TR1
MOV TMOD,#19H
MOV TL1,#19H
MOV TH1,#0FCH
SETB TR1
SETB ET1
SETB EA
RET
;定时扫描子程序:
TIINT:
SETB RS0
CLR EA
CLR TR1
MOV A,#1EH
ADD A,TL1
MOV TL1,A
MOV A,#0FCH
ADDC A,TH1
MOV TH1,A
SETB TR1
SETB EA
TIINT1:
CJNE R1,#08H,TIINT2
MOV 10H,20H
MOV 11H,21H
MOV 12H,22H
MOV 13H,23H
MOV 14H,24H
MOV 15H,25H
MOV 16H,26H
MOV 17H,27H
TIINT2:
CJNE R1,#08H,TIINT3
MOV A,@R0
SJMP TIINT4
TIINT3:
MOV A,@R0
ADD A,#15
MOVC A,@A+PC
TIINT4:
LCALL SENDLED
INC R0
INC R1
TIINTE:
CLR RS0
DB 03H,9FH,25H,0DH,99H
DB 49H,41H,1FH,01H,09H
;显示子程序:
SENDLED:
CLR P1.3
MOV R2,#8
SLED0:
RRC A
JNC SLED1
SETB P1.2

<span lang="EN-US"><font face="Calibri"><font size="3"><span style="mso-tab-count: 2"> &nb
星宇
  • 积分:18274
  • |
  • 主题:29
  • |
  • 帖子:4753
积分:18274
版主
最新回复
  • 2009-5-15 14:21:25
  • 倒数1
 
我的妈呀!你这是整的啥玩意啊?没看到你的数码管的接法!回答不了!还是汇编,注释也没有一个,你是让别人猜你的意思啊??????????????????
热门技术、经典电源设计资源推荐

世纪电源网总部

地 址:天津市南开区黄河道大通大厦8层

电 话:400-022-5587

传 真:(022)27690960

邮 编:300110

E-mail:21dy#21dianyuan.com(#换成@)

世纪电源网分部

广 东:(0755)82437996 /(138 2356 2357)

北 京:(010)69525295 /(15901552591)

上 海:(021)24200688 /(13585599008)

香 港:HK(852)92121212

China(86)15220029145

网站简介 | 网站帮助 | 意见反馈 | 联系我们 | 广告服务 | 法律声明 | 友情链接 | 清除Cookie | 小黑屋 | 不良信息举报 | 网站举报

Copyright 2008-2024 21dianyuan.com All Rights Reserved    备案许可证号为:津ICP备10002348号-2   津公网安备 12010402000296号