📄 main.lst
字号:
183 3 memset(&cRecvBuff[cRecvBuffPtr][0],0x00,RECV_LENGTH);
184 3 cRecvBuffPtr = (cRecvBuffPtr + 1) % RECV_GRUOP;
185 3 cRecvBuffCnt --;
186 3 }
187 2 else
188 2 os_wait(K_TMO, T10MS, 0x00);
189 2 }
190 1
191 1 }
192 /*===============================================================
193 功能:
194 参数:
195 返回:
196 说明:
197 ===============================================================*/
198 void Led1_Delay_Task(void) _task_ LED1DELAY_TASK_ID
199 {
200 1 CALL_IN1_LED = 0;
201 1 AUDIO_C1 = TURN_ON;
202 1 Set_Vfd_Brightless(8);
203 1 os_wait2(K_TMO, T1S);
204 1 AUDIO_C1 = TURN_OFF;
205 1 os_wait2(K_TMO, T1S);
206 1 os_wait2(K_TMO, T1S);
207 1 os_wait2(K_TMO, T1S);
208 1 CALL_IN1_LED = 1;
209 1 AUDIO_C1 = TURN_OFF;
210 1 Set_Vfd_Brightless(1);
211 1 os_delete_task(LED1DELAY_TASK_ID);
212 1 }
213
214 /*===============================================================
215 功能:
216 参数:
217 返回:
218 说明:
219 ===============================================================*/
220 void Led2_Delay_Task(void) _task_ LED2DELAY_TASK_ID
221 {
222 1 CALL_IN2_LED = 0;
223 1 AUDIO_C2 = TURN_ON;
224 1 Set_Vfd_Brightless(8);
225 1 os_wait2(K_TMO, T1S);
226 1 AUDIO_C2 = TURN_OFF;
227 1 os_wait2(K_TMO, T1S);
228 1 os_wait2(K_TMO, T1S);
229 1 os_wait2(K_TMO, T1S);
230 1 CALL_IN2_LED = 1;
231 1 AUDIO_C2 = TURN_OFF;
232 1 Set_Vfd_Brightless(1);
233 1 os_delete_task(LED2DELAY_TASK_ID);
234 1 }
235 /*===============================================================
236 功能:判断是否有音频
237 参数:
238 返回:
239 说明:
240 ===============================================================*/
241 void Information_Task(void) _task_ INFO_TASK_ID
C51 COMPILER V7.10 MAIN 11/09/2006 11:10:16 PAGE 5
242 {
243 1 static uchar cAudioCnt1 = 0,cAudioCnt2 = 0;
244 1 static uchar cNoAudioCnt1 = 0,cNoAudioCnt2 = 0;
245 1
246 1 os_wait(K_TMO, T1S, 0x00);
247 1
248 1 while(1)
249 1 {
250 2 os_wait(K_TMO, T10MS, 0x00);
251 2 //判断第一通道
252 2 if(!SPK_D1)
253 2 cAudioCnt1++;
254 2 else
255 2 cNoAudioCnt1++;
256 2 if(cNoAudioCnt1 > 40)
257 2 {
258 3 cAudioCnt1 = 0x00;
259 3 cNoAudioCnt1 = 0x00;
260 3 }
261 2 if(cAudioCnt1 >= 1)
262 2 {
263 3 cAudioCnt1 = 0x00;
264 3 cNoAudioCnt1 = 0x00;
265 3 os_delete_task(LED1DELAY_TASK_ID);
266 3 os_create_task(LED1DELAY_TASK_ID);
267 3 }
268 2 //判断第二通道
269 2 if(!SPK_D2)
270 2 cAudioCnt2++;
271 2 else
272 2 cNoAudioCnt2++;
273 2 if(cNoAudioCnt2 > 40)
274 2 {
275 3 cAudioCnt2 = 0x00;
276 3 cNoAudioCnt2 = 0x00;
277 3 }
278 2 if(cAudioCnt2 >= 1)
279 2 {
280 3 cAudioCnt2 = 0x00;
281 3 cNoAudioCnt2 = 0x00;
282 3 os_delete_task(LED2DELAY_TASK_ID);
283 3 os_create_task(LED2DELAY_TASK_ID);
284 3 }
285 2 }
286 1 }
287 /*===============================================================
288 功能:复位CPU
289 参数:
290 返回:
291 说明:
292 ===============================================================*/
293 void Restart_Cpu(void)
294 {
295 1 WDKEY = 0xAE;
296 1 WDRST = 0x01;
297 1 while(1);
298 1 }
299 /*===============================================================
300 功能:完成定时操作
301 参数:
302 返回:
303 说明:10毫秒内判断一次I2C总线,若一秒中内有80次总线忙则
C51 COMPILER V7.10 MAIN 11/09/2006 11:10:16 PAGE 6
304 复位总线
305 ===============================================================*/
306 void Timer_Task(void) _task_ TIMER_TASK_ID
307 {
308 1 static uchar xdata _ui = 0x00;
309 1
310 1 while(1)
311 1 {
312 2 os_wait(K_TMO, T10MS, 0x00);
313 2 WDRST = 0x00; //喂狗
314 2 _ui++;
315 2
316 2 if(_ui == 50)
317 2 {
318 3 LED_RUN ^= 1;
319 3 _ui = 0x00;
320 3 }
321 2 }
322 1 }
323
324 /*===============================================================
325 功能:调用初始化函数并启动所有任务
326 参数:无
327 返回:无
328 说明:系统时间间隔为10ms
329 ===============================================================*/
330 void Init_Task(void) _task_ INIT_TASK_ID
331 {
332 1 Init_System();
333 1
334 1 //os_create_task(SRECV_TASK_ID);
335 1 os_create_task(STRAN_TASK_ID);
336 1 os_create_task(CMMD_TASK_ID);
337 1 os_create_task(INFO_TASK_ID);
338 1 os_create_task(TIMER_TASK_ID);
339 1 os_create_task(DEBUG_TASK_ID);
340 1 os_delete_task(INIT_TASK_ID);
341 1 }
342 /*===============================================================
343 功能:主函数,启动任务
344 参数:无
345 返回:无
346 说明:
347 ===============================================================*/
348 void main(void)
349 {
350 1 os_start_system(INIT_TASK_ID);
351 1 }
352 /*===============================================================
353 功能:
354 参数:
355 返回:
356 说明:
357 ===============================================================*/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 1671 ----
CONSTANT SIZE = 874 ----
XDATA SIZE = 30 ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
C51 COMPILER V7.10 MAIN 11/09/2006 11:10:16 PAGE 7
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -