📄 ex2_utility.lst
字号:
Function: printf0
Source : D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources\ex2_utility.c
Options : -DRAM -Env"GENPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\cmd;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\prm;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\LIB;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\SRC;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"LIBPATH=C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"OBJPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Env"TEXTPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Lasm=%n.lst -ObjN="D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\S12_Ex2_Timer7_ICD_CW31_Data\Ram_Application\ObjectCode\ex2_utility.c.o" -Ol0
0000 3b PSHD
128: while((*str != '\r'))
0001 2010 BRA *+18 ;abs = 0013
129: {
130: tx_char0(*str);
0003 0700 BSR tx_char0
131: if(*str++=='\n')
0005 ee80 LDX 0,SP
0007 e630 LDAB 1,X+
0009 6e80 STX 0,SP
000b c10a CMPB #10
000d 2604 BNE *+6 ;abs = 0013
132: tx_char0('\r');
000f c60d LDAB #13
0011 0700 BSR tx_char0
0013 ee80 LDX 0,SP
0015 e600 LDAB 0,X
0017 c10d CMPB #13
0019 26e8 BNE *-22 ;abs = 0003
133: }
134: }
001b 3a PULD
001c 3d RTS
135:
136: /**********************************************
137: * eat time subroutine
138: ***********************************************/
139: void delay1()
140: {
Function: delay1
Source : D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources\ex2_utility.c
Options : -DRAM -Env"GENPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\cmd;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\prm;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\LIB;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\SRC;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"LIBPATH=C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"OBJPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Env"TEXTPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Lasm=%n.lst -ObjN="D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\S12_Ex2_Timer7_ICD_CW31_Data\Ram_Application\ObjectCode\ex2_utility.c.o" -Ol0
141: unsigned int data;
142:
143: data=0xffff;
0000 ccffff LDD #65535
0003 3b PSHD
144: while((data--)!=0);
0004 ee80 LDX 0,SP
0006 191f LEAY -1,X
0008 6d80 STY 0,SP
000a 0475f7 TBNE X,*-6 ;abs = 0004
145: }
000d 3a PULD
000e 3d RTS
146:
147: /*******************************************************************
148: * int_div subroutine
149: * Description : Integer Divide Subroutine
150: * :
151: * Example : N/A
152: * Input : Intger to be divide, Divider
153: * Output : .quot, .mem
154: * Modify : N/A
155: * Return : N/A
156: ********************************************************************/
157: div_t int_div( int num, int denum)
158: {
Function: int_div
Source : D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources\ex2_utility.c
Options : -DRAM -Env"GENPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\cmd;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\prm;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\LIB;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\SRC;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"LIBPATH=C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"OBJPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Env"TEXTPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Lasm=%n.lst -ObjN="D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\S12_Ex2_Timer7_ICD_CW31_Data\Ram_Application\ObjectCode\ex2_utility.c.o" -Ol0
0000 3b PSHD
159: div_t static result;
160:
161: result.quot = 0;
0001 c7 CLRB
0002 87 CLRA
0003 7c0000 STD result
162: while(num >= denum)
0006 200b BRA *+13 ;abs = 0013
163: {
164: num -= denum;
0008 a380 SUBD 0,SP
000a 6c84 STD 4,SP
165: result.quot++;
000c fe0000 LDX result
000f 08 INX
0010 7e0000 STX result
0013 ec84 LDD 4,SP
0015 ac80 CPD 0,SP
0017 2cef BGE *-15 ;abs = 0008
166: }
167: result.rem = num;
0019 7c0000 STD result:2
168: return(result);
001c ee86 LDX 6,SP
001e fc0000 LDD result
0021 6c00 STD 0,X
0023 fc0000 LDD result:2
0026 6c02 STD 2,X
169: }
0028 31 PULY
0029 3d RTS
170:
171: /*******************************************************************
172: * Convert HEX to DEC and send out ASCII subroutine
173: * Description : Convert hex to dec and send out via RS232
174: * :
175: * :
176: * Example : 0x32 <=> 50
177: * Input : 0x32 (cdata)
178: * Output : 5 0 (ascii)
179: * Modify : N/A
180: * Return : void
181: ********************************************************************/
182: void hex_clk_dec(unsigned char data)
183: {
Function: hex_clk_dec
Source : D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources\ex2_utility.c
Options : -DRAM -Env"GENPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\cmd;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\prm;D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\sources;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\LIB;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\SRC;C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"LIBPATH=C:\Program Files\Metrowerks\CodeWarrior CW12_V3.1\lib\HC12c\INCLUDE" -Env"OBJPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Env"TEXTPATH=D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\bin" -Lasm=%n.lst -ObjN="D:\Profiles\r63492.FSL\My Documents\Training document\培训教材\HCS12\S12 Ex2 Timer7 ICD CW31\S12_Ex2_Timer7_ICD_CW31_Data\Ram_Application\ObjectCode\ex2_utility.c.o" -Ol0
0000 37 PSHB
184: div_t static digit;
185:
186: digit=int_div((int)data,10);
0001 cc0000 LDD #digit
0004 3b PSHD
0005 e682 LDAB 2,SP
0007 87 CLRA
0008 3b PSHD
0009 c60a LDAB #10
000b 0700 BSR int_div
000d 1b84 LEAS 4,SP
187: tx_char0(digit.quot+'0');
000f f60000 LDAB digit:1
0012 cb30 ADDB #48
0014 0700 BSR tx_char0
188: tx_char0(digit.rem+'0');
0016 f60000 LDAB digit:3
0019 cb30 ADDB #48
001b 0700 BSR tx_char0
189: }
001d 32 PULA
001e 3d RTS
190:
191:
192:
193:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -