网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
09月04日漏签0天
51单片机吧 关注:73,974贴子:302,506
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 1回复贴,共1页
<<返回51单片机吧
>0< 加载中...

1302读不出来

  • 只看楼主
  • 收藏

  • 回复
  • 还是菜鸡
  • 进士
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
IO BIT P3.4
SCLK BIT P3.6
RST BIT P3.5
LSA BIT P2.2
LSB BIT P2.3
LSC BIT P2.4
DIG EQU P0
ORG 0000H
JMP MAIN
ORG 000BH
JMP DISPLAY
ORG 0040H
;*********************************
; 主程序 *
;*********************************
MAIN:
SEC EQU 30H
MIN EQU 31H
HOU EQU 32H
MOV SEC,#00H
MOV MIN,#00H
MOV HOU,#09H
MOV 33H,#80H
MOV TMOD,#02H
MOV TH0,#9CH
MOV TL0,#9CH
SETB ET0
SETB TR0
SETB EA
MOV DPTR,#DIGDATA
CALL DINIT
LOOP:
CALL READTIME
SJMP LOOP
;*********************************
; DS1302初始化程序 *
;*********************************
DINIT:
MOV R0, #8EH;写保护寄存器
MOV R1, #30H;禁写保护寄存器
CALL WRITEC
MOV R0, #80H;写秒
MOV R1, #SEC
MOV 0,#3
LOOP1: CALL WRITEC
INC R0
INC R0
INC R1
DJNZ 0,LOOP
MOV R0, #8EH ;开启写保护
MOV R1, #33H
CALL WRITEC
; MOV SEC,#00H
; MOV MIN,#00H
; MOV HOU,#00H
RET
;*********************************
; DS1302读时间程序 *
;*********************************
READTIME:
MOV R0, #81H
MOV R1, #40H;读秒
MOV 0,#3
LOOP2: CALL READC
INC R0
INC R0
INC R1
DJNZ 0,LOOP2
RET
;*********************************
; 中断显示程序 *
;*********************************
DISPLAY:
;-------------第一个
CLR LSA
CLR LSB
CLR LSC
MOV A,40H
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
;-------------第二个
SETB LSA
CLR LSB
CLR LSC
MOV A,40
SWAP A
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
;-------------第三个
CLR LSA ;测试数码管
SETB LSB
CLR LSC
MOV DIG,#40H
CALL DELAY2MS
MOV DIG,#000H
;-------------第四个
SETB LSA
SETB LSB
CLR LSC
MOV A,41H
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
;-------------第五个
CLR LSA
CLR LSB
SETB LSC
MOV A,41H
SWAP A
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
;-------------第六个
SETB LSA
CLR LSB
SETB LSC
MOV DIG,#40H
CALL DELAY2MS
MOV DIG,#000H
;------------ 第七个
CLR LSA
SETB LSB
SETB LSC
MOV A,42H
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
;-------------第八个
SETB LSA
SETB LSB
SETB LSC
MOV A,42H
SWAP A
ANL A,#0FH
MOVC A,@A+DPTR
MOV DIG,A
CALL DELAY2MS
MOV DIG,#000H
RETI
;*********************************
; 读DS1302 *
;参数:读地址、数据 *
;*********************************
READC:
CLR SCLK
CLR RST
SETB RST
MOV B,R0
CALL WRITEB
CALL READB
MOV @R1,A
CLR RST
SETB SCLK
NOP
CLR IO
NOP
SETB IO
NOP
RET
;*********************************
; 写DS1302 *
;参数:写地址 、数据 *
;*********************************
WRITEC:
CLR SCLK
CLR RST
SETB RST
MOV B,R0
CALL WRITEB
MOV B,@R1
CALL WRITEB
CLR SCLK
CLR RST
RET
;*********************************
; 数据区 *
;*********************************
DIGDATA:
DB 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07
DB 0x7f,0x6f;,0x77,0x7c,0x39,0x5e,0x79,0x71
;*********************************
; 读字节程序 *
;*********************************
READB:
PUSH PSW
PUSH 0
MOV 0,#8
RLOOP:
MOV C,IO
RRC A
SETB SCLK
CLR SCLK
DJNZ 0,RLOOP
POP 0
POP PSW
RET
;*********************************
; 写字节程序 *
;*********************************
WRITEB:
PUSH PSW
PUSH 0
MOV 0,#8
WLOOP:
MOV A,B
RRC A
MOV B,A
MOV IO,C
SETB SCLK
CLR SCLK
DJNZ 0,WLOOP
POP 0
POP PSW
RET
;*********************************
; 延时程序 *
;*********************************
DELAY2MS: ;误差 0us
MOV R6,#04H
DL1:
MOV R5,#0F8H
DJNZ R5,$
DJNZ R6,DL


  • 还是菜鸡
  • 进士
    8
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
置顶


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 1回复贴,共1页
<<返回51单片机吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示