📄 asc0.lst
字号:
C166 COMPILER V6.04, ASC0 07/02/2007 15:03:31 PAGE 1
C166 COMPILER V6.04, COMPILATION OF MODULE ASC0
OBJECT MODULE PLACED IN ASC0.OBJ
COMPILER INVOKED BY: C:\Keil\C166\BIN\C166.EXE ASC0.C MODV2 BROWSE MODV2 DEBUG
stmt lvl source
1 //****************************************************************************
2 // @Module Asynchronous/Synchronous Serial Interface (ASC0)
3 // @Filename ASC0.C
4 // @Project svm.dav
5 //----------------------------------------------------------------------------
6 // @Controller Infineon XC167CI-16F40
7 //
8 // @Compiler Keil
9 //
10 // @Codegenerator 2.1
11 //
12 // @Description This file contains functions that use the ASC0 module.
13 //
14 //----------------------------------------------------------------------------
15 // @Date 19.12.2003 11:31:19
16 //
17 //****************************************************************************
18
19 // USER CODE BEGIN (ASC0_General,1)
20
21 // USER CODE END
22
23
24
25 //****************************************************************************
26 // @Project Includes
27 //****************************************************************************
28
29 #include "MAIN.H"
30
31 // USER CODE BEGIN (ASC0_General,2)
32
33 // USER CODE END
34
35
36 //****************************************************************************
37 // @Macros
38 //****************************************************************************
39
40 // USER CODE BEGIN (ASC0_General,3)
41
42 // USER CODE END
43
44
45 //****************************************************************************
46 // @Defines
47 //****************************************************************************
48
49 // USER CODE BEGIN (ASC0_General,4)
50
51 // USER CODE END
52
53
54 //****************************************************************************
55 // @Typedefs
C166 COMPILER V6.04, ASC0 07/02/2007 15:03:31 PAGE 2
56 //****************************************************************************
57
58 // USER CODE BEGIN (ASC0_General,5)
59
60 // USER CODE END
61
62
63 //****************************************************************************
64 // @Imported Global Variables
65 //****************************************************************************
66
67 // USER CODE BEGIN (ASC0_General,6)
68
69 // USER CODE END
70
71
72 //****************************************************************************
73 // @Global Variables
74 //****************************************************************************
75
76 // USER CODE BEGIN (ASC0_General,7)
77
78 // USER CODE END
79
80
81 //****************************************************************************
82 // @External Prototypes
83 //****************************************************************************
84
85 // USER CODE BEGIN (ASC0_General,8)
86
87 // USER CODE END
88
89
90 //****************************************************************************
91 // @Prototypes Of Local Functions
92 //****************************************************************************
93
94 // USER CODE BEGIN (ASC0_General,9)
95
96 // USER CODE END
97
98
99 //****************************************************************************
100 // @Function void ASC0_vInit(void)
101 //
102 //----------------------------------------------------------------------------
103 // @Description This is the initialization function of the ASC0 function
104 // library. It is assumed that the SFRs used by this library
105 // are in its reset state.
106 //
107 //----------------------------------------------------------------------------
108 // @Returnvalue None
109 //
110 //----------------------------------------------------------------------------
111 // @Parameters None
112 //
113 //----------------------------------------------------------------------------
114 // @Date 19.12.2003
115 //
116 //****************************************************************************
117
C166 COMPILER V6.04, ASC0 07/02/2007 15:03:31 PAGE 3
118 // USER CODE BEGIN (Init,1)
119
120 // USER CODE END
121
122 void ASC0_vInit(void)
123 {
124 1 // USER CODE BEGIN (Init,2)
125 1
126 1 // USER CODE END
127 1
128 1 /// -----------------------------------------------------------------------
129 1 /// Configuration of the ASC0 Baudrate Generator:
130 1 /// -----------------------------------------------------------------------
131 1 /// - additionally reduce serial clock to 2
132 1 /// - required baud rate = 9,600 kbaud
133 1 /// - real baud rate = 9,615 kbaud
134 1 /// - deviation = 0,160 %
135 1
136 1 //ASC0_BG = 0x0081; // load ASC0 baud rate time reload register
137 1
138 1 /// -----------------------------------------------------------------------
139 1 /// Configuration of the ASC0 Operation Mode:
140 1 /// -----------------------------------------------------------------------
141 1 /// - 8-bit data asychronous operation with one stop bit
142 1 /// - receiver is enabled
143 1
144 1 //ASC0_CON = 0x0011; // load ASC0 control register
145 1
146 1 /// -----------------------------------------------------------------------
147 1 /// FIFO Configuration:
148 1 /// -----------------------------------------------------------------------
149 1 /// - receive FIFO is disabled
150 1 /// - transmit FIFO is disabled
151 1
152 1 //ASC0_RXFCON = 0x0102; // load ASC0 receive FIFO control register
153 1 //ASC0_TXFCON = 0x0102; // load ASC0 transmit FIFO control register
154 1
155 1 /// -----------------------------------------------------------------------
156 1 /// Configuration of the used ASC0 Port Pins:
157 1 /// -----------------------------------------------------------------------
158 1 /// - P3.10 is used for ASC Transmit Data Output (TxDA0)
159 1 /// - P3.11 is used for ASC0 Receive data Input (RxDA0)
160 1
161 1 //ALTSEL0P3 |= 0x0400; // select alternate output function
162 1 //P3 = (P3 & ~(uword)0x0400) | 0x0400; //set data register
163 1 //DP3 = (DP3 & ~(uword)0x0400) | 0x0400; //set direction register
164 1
165 1 /// -----------------------------------------------------------------------
166 1 /// Configuration of the used ASC0 Interrupts:
167 1 /// -----------------------------------------------------------------------
168 1
169 1 // USER CODE BEGIN (ASC0_Function,3)
170 1 //ASC0_TIC_IR=1;
171 1 // USER CODE END
172 1
173 1 //ASC0_CON |= 0x8000; // enable baud rate generator
174 1 ASC0_CON = 0x8811; // load ASC0 control register
175 1 ASC0_BG = 0x000E; // load ASC0 baud rate time reload register 38400
176 1 ASC0_FDV = 0x0076;
177 1 ASC0_RXFCON = 0x0102; // load ASC0 receive FIFO control register
178 1 ASC0_TXFCON = 0x0102; // load ASC0 transmit FIFO control register
179 1 ASC1_CON = 0x8811; // load ASC1 control register
C166 COMPILER V6.04, ASC0 07/02/2007 15:03:31 PAGE 4
180 1 ASC1_BG = 0x000E; // load ASC1 baud rate time reload register 38400
181 1 ASC1_FDV = 0x0076;
182 1 ASC1_RXFCON = 0x0102; // load ASC1 receive FIFO control register
183 1 ASC1_TXFCON = 0x0102; // load ASC1 transmit FIFO control register
184 1 ALTSEL0P3 |= 0x0420; // 10bit-1,5bit-1: select alternate output function XC164需要配置
185 1 P3 |= 0x0400; // 10bit-1: set data register
186 1 DP3 = (DP3 & ~(unsigned int)0x0802) | 0x0420; // 11bit-0,10bit-1,5bit-1,1bit-0: set dir
-ection register
187 1
188 1 } // End of function ASC0_vInit
189
190
191 //****************************************************************************
192 // @Function void ASC0_vSendData(uword uwData)
193 //
194 //----------------------------------------------------------------------------
195 // @Description This function writes a send data initialization word into
196 // the transmit buffer register.
197 //
198 // Note:
199 // In a multiprocessor system the master with this function
200 // has the possibility to send data to the selected slave. To
201 // achieve this, the 9th bit must set on zero.
202 //
203 //----------------------------------------------------------------------------
204 // @Returnvalue None
205 //
206 //----------------------------------------------------------------------------
207 // @Parameters uwData:
208 // Data to be send
209 //
210 //----------------------------------------------------------------------------
211 // @Date 19.12.2003
212 //
213 //****************************************************************************
214
215 // USER CODE BEGIN (SendData,1)
216
217 // USER CODE END
218
219 void ASC0_vSendData(uword uwData)
220 {
221 1 ASC0_TBIC_IR = 0; // reset transmit buffer interrupt request
222 1 ASC0_TBUF = uwData; // load transmit buffer register
223 1
224 1 } // End of function ASC0_vSendData
225
226
227 //****************************************************************************
228 // @Function uword ASC0_uwGetData(void)
229 //
230 //----------------------------------------------------------------------------
231 // @Description This function reads out the content of the receive buffer
232 // register which contains the received data.
233 //
234 //----------------------------------------------------------------------------
235 // @Returnvalue data that has been received
236 //
237 //----------------------------------------------------------------------------
238 // @Parameters None
239 //
240 //----------------------------------------------------------------------------
C166 COMPILER V6.04, ASC0 07/02/2007 15:03:31 PAGE 5
241 // @Date 19.12.2003
242 //
243 //****************************************************************************
244
245 // USER CODE BEGIN (GetData,1)
246
247 // USER CODE END
248
249 uword ASC0_uwGetData(void)
250 {
251 1 ASC0_RIC_IR = 0; // reset receive interrupt request
252 1 return(ASC0_RBUF); // return receive buffer register
253 1
254 1 } // End of function ASC0_uwGetData
255
256
257
258
259 // USER CODE BEGIN (ASC0_General,10)
260
261 // USER CODE END
262
MODULE INFORMATION: INITIALIZED UNINITIALIZED
CODE SIZE = 88 --------
NEAR-CONST SIZE = -------- --------
FAR-CONST SIZE = -------- --------
HUGE-CONST SIZE = -------- --------
XHUGE-CONST SIZE = -------- --------
NEAR-DATA SIZE = -------- --------
FAR-DATA SIZE = -------- --------
XHUGE-DATA SIZE = -------- --------
IDATA-DATA SIZE = -------- --------
SDATA-DATA SIZE = -------- --------
BDATA-DATA SIZE = -------- --------
HUGE-DATA SIZE = -------- --------
BIT SIZE = -------- --------
INIT'L SIZE = -------- --------
END OF MODULE INFORMATION.
C166 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -