📄 initial.lst
字号:
1 000000 ;**********************************************
2 000000 ;Name :RAMInitial
3 000000 ;Function:clr bank0~bank1
4 000000 ;Input :
5 000000 ;Output :
6 000000 ;Register Used:
7 000000 ;***********************************************
8 000000 RAMInitial:
9 000000 mov a,#00h
10 000000 mov y,a
11 000000 mov a,#7fh
12 000000 b0mov z,a
13 000000 Clrbank0:
14 000000 clr @YZ ;Clear @YZ content
15 000000 decms Z ;z = z - 1 , skip next if z=0
16 000000 jmp Clrbank0
17 000000 clr @YZ ;Clear address 0x00
18 000000 ; mov a,#55h
19 000000 ; mov temp1,a ;抗干扰
20 000000 ; mov temp2,a
21 000000 ; mov temp3,a
22 000000 ret
23 000000 ;**********************************************
24 000000 ;Name :PortInitial
25 000000 ;Function:
26 000000 ;Input :
27 000000 ;Output :
28 000000 ;Register Used:
29 000000 ;***********************************************
30 000000 PortInitial:
31 000000 mov a,#00000111b ;p0.0 p0.1 p0.2 pull up
32 000000 mov p0ur,a
33 000000 mov a,#0ffh
34 000000 mov p5ur,a ;p5 all pull up
35 000000 mov a,#00000001b
36 000000 mov p1ur,a ;p1.0 pull up
37 000000 mov a,#0
38 000000 mov p2ur,a ;p2 all not pull up
39 000000
40 000000 mov a,#00000111b
41 000000 mov p0,a
42 000000 mov a,#0ffh
43 000000 mov p5,a
44 000000 mov a,#0
45 000000 mov p2,a
46 000000 mov a,#00000001b
47 000000 mov p1,a
48 000000
49 000000 mov a,#0 ;p0 all input
50 000000 b0mov p0m,a
51 000000 mov p5m,a ; p5 all input
52 000000 mov a,#11111110b ;p1.0 input
53 000000 mov p1m,a
54 000000 mov a,#0ffh ;p2 all output
55 000000 mov p2m,a
56 000000
57 000000 ret
58 000000
59 000000 ;**********************************************
60 000000 ;Name :SysInitial
61 000000 ;Function:
62 000000 ;Input :
63 000000 ;Output :
64 000000 ;Register Used:
65 000000 ;***********************************************
66 000000 SysInitial:
67 000000 mov a,#0
68 000000 mov oscm,a
69 000000 mov pflag,a
70 000000 clr inten
71 000000 clr intrq
72 000000 mov A,#01100100B ;//fto=fcpu/4
73 000000 b0mov TC1M,A
74 000000 mov A,#131 ;//0.5ms constant
75 000000 b0mov TC1C,A
76 000000 mov tc1r,a
77 000000 bclr ftc1irq ; CLEAR TIMER0 INTERRUPT FLAG
78 000000 bset FTC1IEN ; Enable T0 interrupt
79 000000 b0bset faload1
80 000000 b0bset FTC1ENB ; Enable TIMER0
81 000000
82 000000 b0bclr ft0irq ; disable t0 interrup
83 000000 b0bclr ft0ien
84 000000
85 000000
86 000000 mov a,#08h
87 000000 mov pedge,a ;rising edge
88 000000 b0bclr fp00irq ; Enable P00 interrup
89 000000 b0bclr fp00ien
90 000000
91 000000 b0bclr fp01irq ; disable p01 interrup
92 000000 b0bclr fp01ien
93 000000
94 000000 b0bset FGIE ;//enable Interrupt gain
95 000000 ret
96 000000
97 000000 ;**********************************************
98 000000 ;Name :Pdelay
99 000000 ;Function:
100 000000 ;Input :
101 000000 ;Output :
102 000000 ;Register Used:
103 000000 ;***********************************************
104 000000 Pdelay: ;20ms
105 000000 mov a,#20
106 000000 mov m,a
107 000000 loop10:
108 000000 mov a,#200
109 000000 mov n,a
110 000000 loop11:
111 000000 decms n
112 000000 jmp loop11
113 000000
114 000000 decms m
115 000000 jmp loop10
116 000000 ret
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -