|
我們那課設(shè)的作業(yè)
Altium Designer畫的小車走迷宮原理圖和PCB圖如下:(51hei附件中可下載工程文件)
0.png (47.15 KB, 下載次數(shù): 132)
下載附件
2017-9-5 02:11 上傳
0.png (49.06 KB, 下載次數(shù): 124)
下載附件
2017-9-5 02:12 上傳
原理圖和PCB的單片機(jī)源程序如下:
- #include <AT89X51.H> //包含51單片機(jī)相關(guān)的頭文件
- #include "mytest.h"
- void Delay(unsigned int DelayTime) //定義機(jī)器人調(diào)轉(zhuǎn)子時間子程序
- {
- while(DelayTime--); //機(jī)器人轉(zhuǎn)彎循環(huán)
- // SB1=!SB1; //蜂鳴器閃響
- return;
- }
- void ControlCar(unsigned char ConType) //定義電機(jī)控制子程序
- {
- switch(ConType){ //判斷用戶設(shè)定電機(jī)形式
- case FRONT: //前進(jìn) //判斷用戶是否選擇形式1
- M1B=0;
- M2B=0;
- M1A=1; //M1電機(jī)正轉(zhuǎn)
- M2A=1; //M2電機(jī)正轉(zhuǎn)
- break;
- case BACK: //后退 //判斷用戶是否選擇形式2
- M1A=0;
- M2A=0;
- M1B=1; //M1電機(jī)反轉(zhuǎn)
- M2B=1; //M2電機(jī)反轉(zhuǎn)
- break;
- case LEFT: //左轉(zhuǎn) //判斷用戶是否選擇形式3
- M2B=0;
- M1A=0;
- M1B=1; //M1電機(jī)反轉(zhuǎn)
- M2A=1; //M2電機(jī)正轉(zhuǎn)
- break;
- case RIGHT: //右轉(zhuǎn) //判斷用戶是否選擇形式4
- M2A=0;
- M1B=0;
- M1A=1; //M1電機(jī)正轉(zhuǎn)
- M2B=1; //M2電機(jī)反轉(zhuǎn)
- break;
- default: //停止 //判斷用戶是否選擇形式8
- M2A=0;
- M1B=0;
- M1A=0; //M1電機(jī)正轉(zhuǎn)
- M2B=0;
- break; //退出當(dāng)前選擇
-
- }
- }
- void main() //主程序入口
- {
- bit FrontFlag,LeftFlag,RightFlag;
- P1=0XFF;
- while(1){ //程序主循環(huán)
- LeftLed=LeftIR;
- LeftFlag=LeftIR;
- RightLed=RightIR;
- RightFlag=RightIR;
- FrontLed1=FrontIR;
- FrontLed2=FrontIR;
- FrontFlag=FrontIR;
-
- if((FrontFlag == OFF) && (LeftFlag == OFF) && (RightFlag == OFF)){
- ControlCar(FRONT);
- }
- if((FrontFlag == ON) && (LeftFlag == ON) && (RightFlag == ON)){
- ControlCar(BACK);
- }
- if(FrontFlag == ON){
- if(LeftFlag == ON){
- ControlCar(BACK);
- Delay(100);
- ControlCar(RIGHT);
- Delay(50000);
- Delay(20000);
- }
- else{
- Delay(100);
- ControlCar(LEFT);
- Delay(500);
- }
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復(fù)制代碼
所有資料51hei提供下載:
小車走迷宮電路及代碼.zip
(2.19 MB, 下載次數(shù): 30)
2017-9-4 23:31 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評分
-
查看全部評分
|