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

📄 zdq.asm

📁 利用定时器中断制作方波发生器
💻 ASM
字号:
       .title "zdq.asm"
       .mmregs
       .def CodeStart
       .def  TINT0_ISR
STACK  .usect  "STACK",10H
K_TCR_SOFT  .set  0B<<11
K_TCR_FREE  .set  0B<<10
K_TCR_PSC   .set  0B<<6
K_TCR_TRB   .set  1B<<5
K_TCR_TSS   .set  0B<<4
K_TCR_TDDR  .set  1001B<<0
K_TCR       .set  K_TCR_SOFT|K_TCR_FREE|K_TCR_PSC|K_TCR_TRB|K_TCR_TSS|K_TCR_TDDR
K_TCR_STOP  .set  1B<<4 
       
            .data
       
DATA_DP:
XF_Flag:    .word  1
       
            .text
CodeStart:
            STM  #STACK+10H,SP                   
            LD   #DATA_DP,DP
            STM  #XF_Flag,AR2
K_IPTR      .set   0080h
            LDM   PMST,A
            AND   #7FH,A
            OR    #K_IPTR,A
            STLM   A,PMST
CounterSet  .set    49
PERIOD      .set    49999
            .asg   AR1,Counter
            STM   #CounterSet,Counter
            STM   K_TCR_STOP,TCR
            STM   #PERIOD,TIM
            STM   #PERIOD,PRD
            STM   #K_TCR,TCR
            STM   #0008H,IMR
            STM   #0008H,IFR
            RSBX   INTM
end:        nop
            B   end
TINT0_ISR:
            PSHM    ST0
            BANZ    Next,*Counter-
            STM     #CounterSet,Counter
            BITF    *AR2,#1
            BC      ResetXF,TC
setXF:
            SSBX     XF
            ST      #1,*AR2
            B   Next
ResetXF:
            RSBX   XF
            ST      #0,*AR2
Next:
           POPM   ST0
           RETE
           .end 

⌨️ 快捷键说明

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