📄 mds-100-77e58.lst
字号:
207 3 Sent_Data_FC[4] = 0x00;
208 3 Sent_Data_FC[5] = 0x00;
209 3 Sent_Data_FC[6] = 0x00;
210 3 Sent_Data_FC[7] = 0x00;
211 3 Sent_Data_FC[8] = 0x00;
212 3
213 3 }
214 2
215 2 else if(RFC_Flag==0xFB)
216 2 {
217 3 RFC_Flag=0x00;
218 3 Send_UART1(Sent_Data_FC);
219 3 }
220 2
221 2 else
222 2 {
223 3 Sent_Data_FC[0] = Sent_Data_FC[0];
224 3 Sent_Data_FC[1] = Sent_Data_FC[1];
225 3 Sent_Data_FC[2] = Sent_Data_FC[2];
226 3 Sent_Data_FC[3] = Sent_Data_FC[3];
227 3 Sent_Data_FC[4] = Sent_Data_FC[4];
228 3 Sent_Data_FC[5] = Sent_Data_FC[5];
229 3 Sent_Data_FC[6] = Sent_Data_FC[6];
230 3 Sent_Data_FC[7] = Sent_Data_FC[7];
231 3 Sent_Data_FC[8] = Sent_Data_FC[8]; }
232 2
233 2
234 2
235 2 /******************判断车载的违规信息******************/
236 2
237 2 /**判断是否左脚踏地**/
238 2 if (LF_Flag==1)
239 2 {
240 3 LF_Flag=0;
241 3 Sent_Data_FC[0] = 0xFF;
C51 COMPILER V7.06 MDS_100_77E58 03/22/2006 19:49:08 PAGE 5
242 3 Sent_Data_FC[1] = 0x12;
243 3 Sent_Data_FC[2] = 0x11;
244 3 Sent_Data_FC[3] = 0x00;
245 3 Sent_Data_FC[4] = 0x00;
246 3 Sent_Data_FC[5] = 0x00;
247 3 Sent_Data_FC[6] = 0x02;
248 3 Sent_Data_FC[7] = 0x00;
249 3 Sent_Data_FC[8] = 0x00;
250 3
251 3 Send_UART1(Sent_Data_FC);
252 3
253 3 }
254 2
255 2 /**判断是否右脚踏地**/
256 2 else if (RG_Flag==1)
257 2 {
258 3 RG_Flag=0;
259 3 Sent_Data_FC[0] = 0xFF;
260 3 Sent_Data_FC[1] = 0x12;
261 3 Sent_Data_FC[2] = 0x11;
262 3 Sent_Data_FC[3] = 0x00;
263 3 Sent_Data_FC[4] = 0x00;
264 3 Sent_Data_FC[5] = 0x00;
265 3 Sent_Data_FC[6] = 0x01;
266 3 Sent_Data_FC[7] = 0x00;
267 3 Sent_Data_FC[8] = 0x00;
268 3
269 3 Send_UART1(Sent_Data_FC);
270 3
271 3 }
272 2
273 2 /**判断熄火信号**/
274 2 else if (SH_Flag==1)
275 2 {
276 3 SH_Flag=0;
277 3 Sent_Data_FC[0] = 0xFF;
278 3 Sent_Data_FC[1] = 0x12;
279 3 Sent_Data_FC[2] = 0x11;
280 3 Sent_Data_FC[3] = 0x00;
281 3 Sent_Data_FC[4] = 0x00;
282 3 Sent_Data_FC[5] = 0x00;
283 3 Sent_Data_FC[6] = 0x08;
284 3 Sent_Data_FC[7] = 0x00;
285 3 Sent_Data_FC[8] = 0x00;
286 3
287 3 Send_UART1(Sent_Data_FC);
288 3
289 3 }
290 2
291 2
292 2 /**如果没有车载信号则不做任何动作**/
293 2 else
294 2 {
295 3 Sent_Data_FC[0] = Sent_Data_FC[0];
296 3 Sent_Data_FC[1] = Sent_Data_FC[1];
297 3 Sent_Data_FC[2] = Sent_Data_FC[2];
298 3 Sent_Data_FC[3] = Sent_Data_FC[3];
299 3 Sent_Data_FC[4] = Sent_Data_FC[4];
300 3 Sent_Data_FC[5] = Sent_Data_FC[5];
301 3 Sent_Data_FC[6] = Sent_Data_FC[6];
302 3 Sent_Data_FC[7] = Sent_Data_FC[7];
303 3 Sent_Data_FC[8] = Sent_Data_FC[8]; }
C51 COMPILER V7.06 MDS_100_77E58 03/22/2006 19:49:08 PAGE 6
304 2
305 2 }
306 1 }
307
308 /**************************************************************************/
309 /** 函数名称: Main_Init() **/
310 /** 功能描述: 系统初始化子程序,定时器0,定时方式,工作方式1。 **/
311 /** 串口初始化子程序 其中串口0用定时器2,串口1用定时器1 **/
312 /** 输 入: 无 **/
313 /** 输 出: 无 **/
314
315 /** 作 者: Hunter **/
316 /** 日 期: 2006年03月 **/
317
318 /**************************************************************************/
319 /** 修 改 人: **/
320 /** 日 期: **/
321 /**************************************************************************/
322
323 void Main_Init()
324
325 {
326 1 EA=1; /**允许总中断**/
327 1
328 1 /**定时器0初始化:定时方式**/
329 1 TMOD=0x21; /**定时器1工作在模式2,定时器0工作模式1**/
330 1
331 1 TH0 =0x4C;
332 1 TL0 =0xF7; /**baud rate=9600**/
333 1
334 1 TR0=1; /**启动定时器0**/
335 1 ET0=1; /**定时器0中断允许**/
336 1
337 1 /**串口0设置:用定时器1做串口0的波特率发生器**/
338 1 TL1 =0xFD; /**baud rate=9600**/
339 1 TH1 =0xFD;
340 1 SCON0=0x50; /**工作在模式1,允许接收**/
341 1 PCON =0x00; /**SM0=0 SM1=1 在10位异步收发模式 SMOD=0 溢出速率/32 **/
342 1
343 1 ES=1; /**串口0中断允许**/
344 1 TR1=1; /**启动定时器1**/
345 1
346 1 PS0=1; /**串口0中断优先**/
347 1
348 1 /**串口1设置:用定时器2做串口1的波特率发生器**/
349 1
350 1 SCON1 =0x50; /**工作在模式1,接收允许**/
351 1 T2MOD =0x20; /**定时器2工作在模式1**/
352 1 T2CON =0x30; /**用定时器2做串口1的波特率发生器**/
353 1 RCAP2H=0xFF; /** 设置定时器2**/
354 1 RCAP2L=0xDC;
355 1
356 1 ES1=1; /**串口1中断允许**/
357 1 TR2=1; /**启动定时器2**/
358 1
359 1 }
360
361
362
363 /***********************************************************************/
364 /** 函数名称: Send_Data_Com0(unsigned char Onebit) **/
365 /** 功能描述: 串口发送一个数组给蓝牙模块Com0口 **/
C51 COMPILER V7.06 MDS_100_77E58 03/22/2006 19:49:08 PAGE 7
366 /** 输 入: **/
367 /** 输 出:无 **/
368
369 /** 作 者: Hunter **/
370 /** 日 期: 2006年03月 **/
371
372 /***********************************************************************/
373 /** 修 改 人: **/
374 /** 日 期: **/
375 /***********************************************************************/
376 void Send_UART0(unsigned char data *Send_Buf)
377 {
378 1 unsigned char SendSum,i;
379 1
380 1 ES=0; /**关闭串口0中断**/
381 1
382 1 BT_Tran=0;
383 1 SendSum=0; /**清校验和 **/
384 1 ES=0; /**关串口0中断**/
385 1
386 1 for(i=0;i<9;i++) /**发送数组的前9位数据**/
387 1 {
388 2 SBUF=Send_Buf[i];
389 2 SendSum+=Send_Buf[i];
390 2 while(TI==0);TI=0;
391 2 }
392 1 SBUF=SendSum; /**发送此帧数据校验和**/
393 1 while(TI==0);TI=0; /**等待数据发送出去**/
394 1
395 1 ES=1; /**串口0中断允许**/
396 1
397 1 BT_Tran=1;
398 1 }
399
400
401 /***********************************************************************/
402 /** 函数名称: Send_Data_Com1(unsigned char Onebit) **/
403 /** 功能描述: 串口发送一个数组给FC机Com1口 **/
404 /** 输 入: **/
405 /** 输 出:无 **/
406
407 /** 作 者: Hunter **/
408 /** 日 期: 2006年03月 **/
409
410 /***********************************************************************/
411 /** 修 改 人: **/
412 /** 日 期: **/
413 /***********************************************************************/
414 void Send_UART1(unsigned char data *Send_Buf)
415 {
416 1 unsigned char SendSum,i;
417 1
418 1 FC_Tran=0;
419 1 SendSum=0; /**清校验和 **/
420 1
421 1 ES1=0; /**关闭串口1中断*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -