?? main.lst
字號:
1 .file "main.c"
2 .arch atmega16
3 __SREG__ = 0x3f
4 __SP_H__ = 0x3e
5 __SP_L__ = 0x3d
6 __tmp_reg__ = 0
7 __zero_reg__ = 1
8 .global __do_copy_data
9 .global __do_clear_bss
11 .text
12 .Ltext0:
73 .data
74 .LC0:
75 0000 5451 5420 .string "TQT input words!"
75 696E 7075
75 7420 776F
75 7264 7321
75 00
76 .LC1:
77 0011 6B65 6E3A .string "ken:"
77 00
78 .text
80 .global main
82 main:
1:main.c **** /*
2:main.c **** * PS2 PC鍵盤掃描實驗程序,PD2連接PSDAT,PD6連接PSCLK
3:main.c **** * EasyAVR-M16 開發板例程
4:main.c **** * CopyRights @ TQT
5:main.c **** * Author:ken
6:main.c **** * Date:2007-8-18
7:main.c **** */
8:main.c ****
9:main.c **** // CLOCK: 7.3728MHZ
10:main.c ****
11:main.c ****
12:main.c **** #include <avr/io.h>
13:main.c **** #include "lcm1602.h"
14:main.c **** //#include "declare.h"
15:main.c **** #include "kb.h"
16:main.c **** #include "type.h"
17:main.c ****
18:main.c **** int main(void)
19:main.c **** {
84 .LM1:
85 /* prologue: frame size=5 */
86 0000 C0E0 ldi r28,lo8(__stack - 5)
87 0002 D0E0 ldi r29,hi8(__stack - 5)
88 0004 DEBF out __SP_H__,r29
89 0006 CDBF out __SP_L__,r28
90 /* prologue end (size=4) */
20:main.c **** char *str1,*str2;
21:main.c **** str1="TQT input words!";
92 .LM2:
93 0008 80E0 ldi r24,lo8(.LC0)
94 000a 90E0 ldi r25,hi8(.LC0)
95 000c 9A83 std Y+2,r25
96 000e 8983 std Y+1,r24
22:main.c **** str2="ken:";
98 .LM3:
99 0010 80E0 ldi r24,lo8(.LC1)
100 0012 90E0 ldi r25,hi8(.LC1)
101 0014 9C83 std Y+4,r25
102 0016 8B83 std Y+3,r24
23:main.c ****
24:main.c ****
25:main.c **** GICR= (1<<INT0); // 使能外部中斷INT0,GICR通用中斷控制寄存器,0x40
104 .LM4:
105 0018 80E4 ldi r24,lo8(64)
106 001a 8093 5B00 sts 91,r24
26:main.c ****
27:main.c **** InitKeyBoard(); // 鍵盤初始化
108 .LM5:
109 001e 0E94 0000 call InitKeyBoard
28:main.c **** LCM1602Init(); // lcm1602初始化
111 .LM6:
112 0022 0E94 0000 call LCM1602Init
29:main.c ****
30:main.c ****
31:main.c ****
32:main.c **** LCM1602Write_String(0,0,str1);
114 .LM7:
115 0026 4981 ldd r20,Y+1
116 0028 5A81 ldd r21,Y+2
117 002a 60E0 ldi r22,lo8(0)
118 002c 80E0 ldi r24,lo8(0)
119 002e 0E94 0000 call LCM1602Write_String
33:main.c **** LCM1602Write_String(0,1,str2);
121 .LM8:
122 0032 4B81 ldd r20,Y+3
123 0034 5C81 ldd r21,Y+4
124 0036 61E0 ldi r22,lo8(1)
125 0038 80E0 ldi r24,lo8(0)
126 003a 0E94 0000 call LCM1602Write_String
127 .L2:
128 .LBB2:
34:main.c ****
35:main.c **** while(1)
36:main.c **** {
37:main.c ****
38:main.c **** uchar key = getchar_kb();
130 .LM9:
131 003e 0E94 0000 call getchar_kb
132 0042 8D83 std Y+5,r24
39:main.c **** if(key=='*')
134 .LM10:
135 0044 8D81 ldd r24,Y+5
136 0046 8A32 cpi r24,lo8(42)
137 0048 89F4 brne .L4
40:main.c **** {
41:main.c **** LCM1602WriteCommand(0x01,1); //如果鍵盤輸入*,清屏
139 .LM11:
140 004a 61E0 ldi r22,lo8(1)
141 004c 81E0 ldi r24,lo8(1)
142 004e 0E94 0000 call LCM1602WriteCommand
42:main.c **** LCM1602Write_String(0,0,str1);
144 .LM12:
145 0052 4981 ldd r20,Y+1
146 0054 5A81 ldd r21,Y+2
147 0056 60E0 ldi r22,lo8(0)
148 0058 80E0 ldi r24,lo8(0)
149 005a 0E94 0000 call LCM1602Write_String
43:main.c **** LCM1602Write_String(0,1,str2);
151 .LM13:
152 005e 4B81 ldd r20,Y+3
153 0060 5C81 ldd r21,Y+4
154 0062 61E0 ldi r22,lo8(1)
155 0064 80E0 ldi r24,lo8(0)
156 0066 0E94 0000 call LCM1602Write_String
157 006a E9CF rjmp .L2
158 .L4:
44:main.c **** }
45:main.c **** else LCM1602WriteData(key);
160 .LM14:
161 006c 8D81 ldd r24,Y+5
162 006e 0E94 0000 call LCM1602WriteData
163 .LBE2:
164 0072 E5CF rjmp .L2
165 /* epilogue: frame size=5 */
166 /* epilogue: noreturn */
167 /* epilogue end (size=0) */
168 /* function main size 58 (54) */
177 .Lscope0:
178 .text
180 Letext:
181 /* File "main.c": code 58 = 0x003a ( 54), prologues 4, epilogues 0 */
DEFINED SYMBOLS
*ABS*:00000000 main.c
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:3 *ABS*:0000003f __SREG__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:4 *ABS*:0000003e __SP_H__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:5 *ABS*:0000003d __SP_L__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:6 *ABS*:00000000 __tmp_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:7 *ABS*:00000001 __zero_reg__
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:82 .text:00000000 main
C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp/ccsDbaaa.s:180 .text:00000074 Letext
UNDEFINED SYMBOLS
__do_copy_data
__do_clear_bss
__stack
InitKeyBoard
LCM1602Init
LCM1602Write_String
getchar_kb
LCM1602WriteCommand
LCM1602WriteData
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -