📄 masm1.htm
字号:
<p align="JUSTIFY"> RETI</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY">TIM0: CLR TR0 ;timer0 interrupt process</p>
<p align="JUSTIFY"> CPL T0_flag</p>
<p align="JUSTIFY"> MOV TL0,#LOW(INIT_Timer0)</p>
<p align="JUSTIFY"> MOV A,#HIGH(INIT_Timer0)</p>
<p align="JUSTIFY"> MOV TH0,A</p>
<p align="JUSTIFY"> SETB TR0</p>
<p align="JUSTIFY"> CLR P3.3</p>
<p align="JUSTIFY"> RET</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY">TIM1: CLR TR1 ;timer1 interrupt process</p>
<p align="JUSTIFY"> CPL T1_flag</p>
<p align="JUSTIFY"> MOV TL1,#LOW(INIT_Timer1)</p>
<p align="JUSTIFY"> MOV A,#HIGH(INIT_Timer1)</p>
<p align="JUSTIFY"> MOV TH1,A</p>
<p align="JUSTIFY"> SETB TR1</p>
<p align="JUSTIFY"> CLR P3.2</p>
<p align="JUSTIFY"> RET</p>
<p align="JUSTIFY"> END</p>
<p align="JUSTIFY">;********************************************************</p>
<p align="JUSTIFY">;DEMO51.ASM FILE END</p>
<p align="JUSTIFY">;********************************************************</p>
</font></i>
<p align="JUSTIFY"><font face="Arial" size=3> </font><font face="宋体" lang="ZH-CN" size=3>以上是DEMO51.ASM源程序文件。</font></p>
<i><font face="Arial" size=3>
<p align="JUSTIFY">The Cybernetic Micro Systems 8051 Family Assembler, Version
3.03 Page 1</p>
<p align="JUSTIFY"> 08-25-96</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> </p>
<p align="JUSTIFY"> 0000 = T0_flag bit 0</p>
<p align="JUSTIFY"> 0001 = T1_flag bit 1</p>
<p align="JUSTIFY"> FE80 = INIT_Timer0 equ 0FE80H</p>
<p align="JUSTIFY"> FD00 = INIT_Timer1 equ 0FD00H</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0003 = X0_vector equ 0003H</p>
<p align="JUSTIFY"> 0013 = X1_vector equ 0013H</p>
<p align="JUSTIFY"> 000B = T0_vector equ 000BH</p>
<p align="JUSTIFY"> 001B = T1_vector equ 001BH</p>
<p align="JUSTIFY"> 0023 = S0_vector equ 0023H</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0000 0146 INIT: AJMP SETUP</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> ;Interrept Jump Table</p>
<p align="JUSTIFY"> 0003 ORG X0_vector</p>
<p align="JUSTIFY"> 0003 D2B2 INT_0: SETB P3.2</p>
<p align="JUSTIFY"> 0005 32 RETI ;int0 interrupt</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 000B ORG T0_vector</p>
<p align="JUSTIFY"> 000B 1178 T0INT: ACALL TIM0 ;timer0 interrupt</p>
<p align="JUSTIFY"> 000D 32 RETI</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0013 ORG X1_vector</p>
<p align="JUSTIFY"> 0013 D2B3 INT_1: SETB P3.3</p>
<p align="JUSTIFY"> 0015 32 RETI ;int1 interrupt</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 001B ORG T1_vector</p>
<p align="JUSTIFY"> 001B 1188 T1INT: ACALL TIM1 ;timer1 interrupt</p>
<p align="JUSTIFY"> 001D 32 RETI</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0023 ORG S0_vector</p>
<p align="JUSTIFY"> 0023 0174 AJMP SERIAL ;UART interrupt</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0025 54 68 69 DB 'This is demo program for MCS-51TM'</p>
<p align="JUSTIFY"> 0028 73 20 69 73 20 64 65 6D 6F 20</p>
<p align="JUSTIFY"> 0032 70 72 6F 67 72 61 6D 20 66 6F</p>
<p align="JUSTIFY"> 003C 72 20 4D 43 53 2D 35 31 54 4D</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0046 75815F SETUP: MOV SP,#5FH ;set sp point</p>
<p align="JUSTIFY"> 0049 758911 MOV TMOD,#11H ;set timer mode</p>
<p align="JUSTIFY"> 004C 758CFE MOV TH0,#HIGH(INIT_Timer0)</p>
<p align="JUSTIFY"> 004F 758A80 MOV TL0,#LOW(INIT_Timer0)</p>
<p align="JUSTIFY"> 0052 758DFD MOV TH1,#HIGH(INIT_Timer1)</p>
<p align="JUSTIFY"> 0055 758B00 MOV TL1,#LOW(INIT_Timer1)</p>
<p align="JUSTIFY"> 0058 D2A8 SETB EX0</p>
<p align="JUSTIFY"> 005A D2B8 SETB PX0</p>
<p align="JUSTIFY"> 005C D2AA SETB EX1</p>
<p align="JUSTIFY"> 005E C2BA CLR PX1</p>
<p align="JUSTIFY"> 0060 D2BB SETB PT1</p>
<p align="JUSTIFY"> 0062 D2A9 SETB ET0</p>
<p align="JUSTIFY"> 0064 D2AB SETB ET1</p>
<p align="JUSTIFY"> 0066 D28C SETB TR0</p>
<p align="JUSTIFY"> 0068 D28E SETB TR1</p>
<p align="JUSTIFY"> 006A D2AC SETB ES</p>
<p align="JUSTIFY"> 006C 759899 MOV SCON,#99H</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY">The Cybernetic Micro Systems 8051 Family Assembler, Version
3.03 Page 2</p>
<p align="JUSTIFY"> 08-25-96</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> </p>
<p align="JUSTIFY"> 006F D2AF SETB EA ;enable interrupt</p>
<p align="JUSTIFY"> 0071 00 WAIT: NOP</p>
<p align="JUSTIFY"> 0072 0171 AJMP WAIT ;wait</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0074 00 SERIAL: NOP ;serial interrupt process</p>
<p align="JUSTIFY"> 0075 C298 CLR RI</p>
<p align="JUSTIFY"> 0077 32 RETI</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0078 C28C TIM0: CLR TR0 ;timer0 interrupt process</p>
<p align="JUSTIFY"> 007A B200 CPL T0_flag</p>
<p align="JUSTIFY"> 007C 758A80 MOV TL0,#LOW(INIT_Timer0)</p>
<p align="JUSTIFY"> 007F 74FE MOV A,#HIGH(INIT_Timer0)</p>
<p align="JUSTIFY"> 0081 F58C MOV TH0,A</p>
<p align="JUSTIFY"> 0083 D28C SETB TR0</p>
<p align="JUSTIFY"> 0085 C2B3 CLR P3.3</p>
<p align="JUSTIFY"> 0087 22 RET</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> 0088 C28E TIM1: CLR TR1 ;timer1 interrupt process</p>
<p align="JUSTIFY"> 008A B201 CPL T1_flag</p>
<p align="JUSTIFY"> 008C 758B00 MOV TL1,#LOW(INIT_Timer1)</p>
<p align="JUSTIFY"> 008F 74FD MOV A,#HIGH(INIT_Timer1)</p>
<p align="JUSTIFY"> 0091 F58D MOV TH1,A</p>
<p align="JUSTIFY"> 0093 D28E SETB TR1</p>
<p align="JUSTIFY"> 0095 C2B2 CLR P3.2</p>
<p align="JUSTIFY"> 0097 22 RET</p>
<p align="JUSTIFY"> 0000 END</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY">The Cybernetic Micro Systems 8051 Family Assembler, Version
3.03 Page 3</p>
<p align="JUSTIFY"> 08-25-96</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> </p>
<p align="JUSTIFY"> </p>
<p align="JUSTIFY"> ;%T Symbol Name Type Value</p>
<p align="JUSTIFY"></p>
<p align="JUSTIFY"> INIT. . . . . . . . . . . . . . L 0000</p>
<p align="JUSTIFY"> INIT_TIMER0 . . . . . . . . . . I FE80</p>
<p align="JUSTIFY"> INIT_TIMER1 . . . . . . . . . . I FD00</p>
<p align="JUSTIFY"> INT_0 . . . . . . . . . . . . . L 0003</p>
<p align="JUSTIFY"> INT_1 . . . . . . . . . . . . . L 0013</p>
<p align="JUSTIFY"> S0_VECTOR . . . . . . . . . . . I 0023</p>
<p align="JUSTIFY"> SERIAL. . . . . . . . . . . . . L 0074</p>
<p align="JUSTIFY"> SETUP . . . . . . . . . . . . . L 0046</p>
<p align="JUSTIFY"> T0INT . . . . . . . . . . . . . L 000B</p>
<p align="JUSTIFY"> T0_FLAG . . . . . . . . . . . . B 0000</p>
<p align="JUSTIFY"> T0_VECTOR . . . . . . . . . . . I 000B</p>
<p align="JUSTIFY"> T1INT . . . . . . . . . . . . . L 001B</p>
<p align="JUSTIFY"> T1_FLAG . . . . . . . . . . . . B 0001</p>
<p align="JUSTIFY"> T1_VECTOR . . . . . . . . . . . I 001B</p>
<p align="JUSTIFY"> TIM0. . . . . . . . . . . . . . L 0078</p>
<p align="JUSTIFY"> TIM1. . . . . . . . . . . . . . L 0088</p>
<p align="JUSTIFY"> WAIT. . . . . . . . . . . . . . L 0071</p>
<p align="JUSTIFY"> X0_VECTOR . . . . . . . . . . . I 0003</p>
<p align="JUSTIFY"> X1_VECTOR . . . . . . . . . . . I 0013</p>
<p align="JUSTIFY"> ;%Z</p>
<p align="JUSTIFY"> 00 Errors (0000)</p>
</font></i><font face="宋体" lang="ZH-CN" size=3>
<p align="JUSTIFY">以上是DEMO51.LST文件。</p>
</font><i><font face="Arial" size=3>
<p align="JUSTIFY">:020000000146B7</p>
<p align="JUSTIFY">:03000300D2B23244</p>
<p align="JUSTIFY">:03000B0011783237</p>
<p align="JUSTIFY">:03001300D2B33233</p>
<p align="JUSTIFY">:03001B0011883217</p>
<p align="JUSTIFY">:0D0023000174546869732069732064656D71</p>
<p align="JUSTIFY">:100030006F2070726F6772616D20666F72204D4322</p>
<p align="JUSTIFY">:10004000532D3531544D75815F758911758CFE7551</p>
<p align="JUSTIFY">:100050008A80758DFD758B00D2A8D2B8D2AAC2BA9B</p>
<p align="JUSTIFY">:10006000D2BBD2A9D2ABD28CD28ED2AC759899D257</p>
<p align="JUSTIFY">:10007000AF00017100C29832C28CB200758A8074E0</p>
<p align="JUSTIFY">:10008000FEF58CD28CC2B322C28EB201758B007485</p>
<p align="JUSTIFY">:08009000FDF58DD28EC2B222F3</p>
</font></i>
<p align="JUSTIFY"><font face="Arial" size=3> </font><font face="宋体" lang="ZH-CN" size=3>以上是DEMO51.HEX文件。</font></p>
<p align="center"><a href="dpjjx.htm"><img src="back1.gif" width="43" height="55" border="0"></a></p>
<div align="center"><b> <font face="Arial" size=4></font><font face="黑体" lang="ZH-CN" size=4></font></b></div>
</ol>
</ol>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -