📄 main.lst
字号:
195 1 WdtCls();
196 1
197 1 */
198 1 /*------------------- 接收相机类型初始程序
199 1 if(!programFlyOff)
200 1 {
201 1 IntSet();
202 1 IntEnable();
203 1 TxdBaud9600();
204 1 T1Start();
205 1 x=0;
206 1 while(1)
207 1 {
208 1 WdtCls();
209 1
210 1 if(!cKeyCodeReceiveState) continue;
211 1
212 1 if(0xff!=cKeyCodeReceive)
213 1 {
214 1 cKeyCodeReceiveState=0;
215 1 continue; //首码错则结束 进 入 循 环
216 1 }
217 1
218 1 cKeyCodeReceiveState=0;
219 1 while(!cKeyCodeReceiveState) //读码等待
220 1 {
221 1 WdtCls();
222 1 }
223 1
224 1 x=cKeyCodeReceive;
225 1 cKeyCodeReceiveState=0;
226 1 cameraType=(unsigned char )x;
227 1
228 1 while(!cKeyCodeReceiveState) //读码等待
229 1 {
230 1 WdtCls();
231 1 }
232 1 x+=(cKeyCodeReceive<<8);
233 1 cKeyCodeReceiveState=0; //取走键盘码
234 1
235 1 switch(x)
236 1 {
237 1 case 0: TxdBaud2400();break;
238 1 case CAMERAMODEL+SONY: TxdBaud9600();break;
239 1 case 2: TxdBaud4800();break;
240 1 case 3: TxdBaud19200();break;
241 1 default: break;
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 5
242 1 }
243 1 break;
244 1 }
245 1
246 1 } //判断是否程度跑飞进行串口初始波特接着进行有关初始定位工作,直到定位完成将跑飞标志置位
247 1 -----------------------*/
248 1 /*---------------------------水平位检测部分-----------------
249 1
250 1 if(!programFlyOff)
251 1 {
252 1 IntDisable();
253 1 HIntSet();
254 1 HMotorOut(A3279INITATE) ;
255 1 //HMotorOut(SIN16[0]) ;
256 1
257 1 //HVolecity(-4000);
258 1 IntEnable();
259 1 //hRotationManner=STOPROTATION ;
260 1 //hRotationManner= SINGLEMOTION;
261 1 //hRotationManner=FREEMOTION;
262 1 //hRotationManner= DOUBLEMOTION ;
263 1 hRotationManner= MULMOTION ;
264 1 // hOrientFlag=-1;
265 1 haccDecFlag=ACCELERATION ;
266 1 //hRotationManner=TWOROTATION;
267 1 hPresetPosition1=0;
268 1 hPresetPosition2=1999;
269 1 hPresetPosition=hPresetPosition1;
270 1 hAbsolutionPosition=hPresetPosition2 ;
271 1
272 1 T2Start();
273 1
274 1
275 1 }
276 1 while(1)
277 1 WdtCls();
278 1
279 1
280 1 ------------------------------------*/
281 1 /*---------------------------垂直位检测部分-----------------
282 1
283 1 if(!programFlyOff)
284 1 {
285 1 IntDisable();
286 1 VIntSet();
287 1 VMotorOut(A3279INITATE) ;
288 1 //HMotorOut(SIN16[0]) ;
289 1
290 1 //HVolecity(-4000);
291 1 IntEnable();
292 1 //hRotationManner=STOPROTATION ;
293 1 //hRotationManner= SINGLEMOTION;
294 1 //vRotationManner=FREEMOTION;
295 1 // vRotationManner= DOUBLEMOTION ;
296 1 vRotationManner= MULMOTION ;
297 1 // vOrientFlag=-1;
298 1 vaccDecFlag=ACCELERATION ;
299 1 // vaccDecFlag=NORMALMOTION ;
300 1 //hRotationManner=TWOROTATION;
301 1 vPresetPosition1=0;
302 1 vPresetPosition2=1999;
303 1 vPresetPosition=hPresetPosition1;
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 6
304 1 vAbsolutionPosition=hPresetPosition2 ;
305 1
306 1 T0Start();
307 1
308 1
309 1 }
310 1 while(1)
311 1 WdtCls();
312 1 ------------------------------------*/
313 1 /*
314 1 if(!programFlyOff)
315 1 {
316 1 IntDisable();
317 1 HIntSet();
318 1 HMotorOut(A3279INITATE) ; //试验运动方向及停止
319 1 //GeneralHRotation(100) ;
320 1 HVolecity(-2000);
321 1 IntEnable();
322 1 T2Start();
323 1 }
324 1
325 1 Delay();
326 1 //vStopFlag=1;
327 1 T0Stop();
328 1 while(1)
329 1 WdtCls();
330 1
331 1 */
332 1 /*---------------------------垂直位检测部分---------------
333 1 if(!programFlyOff)
334 1 {
335 1 IntDisable();
336 1 VIntSet();
337 1 VMotorOut(A3279INITATE) ;
338 1
339 1 VVolecity(-200);
340 1 IntEnable();
341 1 T0Start();
342 1 }
343 1 while(1)
344 1 WdtCls();
345 1
346 1 ----------------------------------------------------------*/
347 1
348 1 HMotorOut(A3279INITATE) ;
349 1 HMotorOut(A3279INITATE) ;
350 1
351 1
352 1 while(1)
353 1 //for(y=0;y<50;++y)
354 1 {
355 2 for(count=0;count<4;count++)
356 2 {
357 3 for(x=0;x<10;x++)
358 3 WdtCls();
359 3 HMotorOut(SIN4[count]) ;
360 3 }
361 2 }
362 1 while(1)
363 1 WdtCls();
364 1 /*---------------------------步距角部分---------------
365 1 ----------------------------------------------------------*/
C51 COMPILER V8.01 MAIN 01/09/2009 17:53:57 PAGE 7
366 1
367 1
368 1 programFlyOff=1;//进入正常设置
369 1 IntSet();
370 1 cKeyCodeReceiveState=0; //复位接收状态
371 1 pKeyCode=sKeyCode; //接收码清零程序
372 1 for(x=0;x<5;x++) //预设20个字符
373 1 {
374 2 *pKeyCode =0;
375 2 ++pKeyCode ;
376 2 }
377 1 pKeyCode=sKeyCode; //重新指向代码
378 1 while(1)
379 1 WdtCls();
380 1 switch(cameraType) //与说明手册上控制位一致
381 1
382 1 {
383 2 default: goto ERRor;
384 2
385 2 case 0: //SONY
386 2 while(1)
387 2 {
388 3
389 3 WdtCls();
390 3 if(0!=cameraType) // 利用协议出错处理
391 3 goto ERRor;
392 3 if(!cKeyCodeReceiveState) continue;
393 3
394 3 if(0xff!=cKeyCodeReceive)
395 3 {
396 4 cKeyCodeReceiveState=0;
397 4 continue; //首码错则结束 进 入 循 环
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -