⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 da0832.#3

📁 这是一个DA0832数模转换的C语言源程序
💻 #3
字号:

$INCLUDE(C8051F020.INC)
         ORG      0000H
         AJMP     START
         ORG      0100H
START :
      mov   WDTCN, #0dfh        ; disable watchdog timer  禁止看门狗定时器
      mov   WDTCN, #0adh
      mov   OSCXCN, #67h        ; enable external crystal  外部晶振
                                ; oscillator at 22.1184MHz

      clr   A                   ; wait at least 1ms        延时1ms 
      djnz  acc, $              ; wait ~512us
      djnz  acc, $              ; wait ~512us
 ;    orl   OSCICN, #08h                                
 ;     orl   OSCXCN, #80h     

PORT_Init:
     ; mov   XBR0, #00h
     ; mov   XBR1, #00h
      mov   XBR2, #40h

EMIF_Init:
      mov   EMI0CF, #2fh       ; 复用方式,高4端口。
      mov   EMI0TC, #65h       ; 时序控制,timing (7-cycle MOVX)
      mov   P74OUT, #0FFh      ; P4-7口推挽输出
   ;  mov   P3MDOUT, #00h      ; P0口推挽输出



  
MAIN:    MOV      DPTR,#01f00H        ; 置DAC0832的地址
LP:      MOV      A,#0F0H             ; 设定高电平
         MOVX     @DPTR,A             ; 启动D/A转换,输出高电平
         LCALL    DELAY               ; 延时显示高电平
         MOV      A,#10H              ; 设定低电平
         MOVX     @DPTR,A             ; 启动D/A转换,输出低电平
         LCALL    DELAY               ; 延时显示低电平
         SJMP     LP                  ; 连续输出方波


                  ; 延时子程序
Delay:
       mov   r5, #3
A0:    mov   r6, #0     
A1:    mov   r7, #0
DelayLoop:
       NOP
       NOP
       djnz  r7, DelayLoop
       djnz  r6, A1
       djnz  r5, A0
       ret

         END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -