91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

這是用加強(qiáng)型單片機(jī)stc12c5a60s2為控制核心制作的迷宮小吃,本車?yán)们胺轿鍌€紅外傳感器進(jìn)行黑線循跡,采用右手法則和底部兩個光電傳感器進(jìn)行拐彎。

資源截圖

代碼片段和文件信息

#include
#include
#define?uchar?unsigned?char
#define?uint?unsigned?int
#define?LEFTPMW?0x40
#define?RIGHTPWM?0x43
#define?TURNL1PWM?0x33
#define?TURNR1PWM?0x36
#define?TURNL2PWM?0x25
#define?TURNR2PWM?0x28
/*stc12c5a60s2相關(guān)宏定義*/
sfr?AUXR ?=?0X8E;
sfr?CCON?????=?0xD8;?//PCA控制寄存器
sfr?CMOD?????=?0xD9;?//PCA模式寄存器
sfr?CCAPM0???=?0xDA;?//PCA模塊0模式寄存器????
sfr?CCAPM1???=?0xDB;?//PCA模塊1模式寄存器?
sfr?CL???????=?0xE9;?//PCA?定時(shí)寄存器?低位
sfr?CH???????=?0xF9;?//PCA?定時(shí)寄存器?高位
sfr?CCAP0L???=?0xEA;?//PCA模塊0的?捕獲寄存器?低位
sfr?CCAP0H???=?0xFA;?//PCA模塊0的?捕獲寄存器?高位
sfr?CCAP1L???=?0xEB;?//PCA模塊1的?捕獲寄存器?低位
sfr?CCAP1H???=?0xFB;?//PCA模塊1的?捕獲寄存器?高位
sfr?PCA_PWM0?=?0xF2;?//PCA?PWM?模式輔助寄存器0
sfr?PCA_PWM1?=?0xF3;?//PCA?PWM?模式輔助寄存器1

sbit?CF??????=?0xDF;????//PCA計(jì)數(shù)溢出標(biāo)志位
sbit?CR??????=?0xDE;????//PCA計(jì)數(shù)器?運(yùn)行控制位
sbit?CCF1????=?0xD9;????//PCA模塊1中斷標(biāo)志
sbit?CCF0????=?0xD8;????//PCA模塊0中斷標(biāo)志

/*電機(jī)控制口以及紅外傳感器控制口*/
sbit?p20zuo?=?P2^0;
sbit?p21zuo?=?P2^1;
sbit?p22you?=?P2^2;
sbit?p23you?=?P2^3;
sbit?youhong1?=?P0^0;
sbit?youhong2?=?P0^1;
sbit?zhonghong?=?P0^2;
sbit?zuohong2?=?P0^3;
sbit?zuohong1?=?P0^4;


/*變量定義*/
uint?speed1?=?0;
uint?speed2?=?0;
bit?flag1?=?0;
bit?flag2?=?0;
uchar?stopnum?=?0;
uchar?turnflag?=?0;
uchar?temp?=?0;

void?delay(uchar?a)
{
uchar?b;
while(a--)
{
for(b=0;b<=115;b++)
{;}
}
}

/*芯片初始化,開中斷允許*/
void?init()
{
EA=1;
EX0=1;
EX1=1;
IT0=1;
IT1=1;
ET0=1;????????????????????????
TMOD=0x01;????????????
TH0=(65535-50000)/256;
TL0=(65535-50000)%256;??????????
}

/*初始化pwn控制器*/
void?pwn_init()?
{
CMOD?=?0x0a;
CL?=?0;
CH?=?0;
CCAP0L?=?CCAP0H?=?LEFTPMW;?//控制左電機(jī)的PCA模塊
CCAPM0?=?0x42;
CCAP1L?=?CCAP1H?=?RIGHTPWM;?//控制右電機(jī)的PCA模塊
CCAPM1?=?0X42;
CR?=?1; ?//啟動計(jì)數(shù)器
}

/*小車行走功能函數(shù)*/
/*到達(dá)迷宮出口*/
void?stopforever()
{
p20zuo?=?1;
p21zuo?=?1;
p22you?=?1;
p23you?=?1;
while(1)
{}
}
/*小車短暫停頓為拐彎做準(zhǔn)備*/
void?stop()
{
p20zuo?=?1;
p21zuo?=?1;
p22you?=?1;
p23you?=?1;
TR0?=?1;
while(1)
{
if(stopnum==10)
{
stopnum?=?0;
TR0?=?0;
break;
}
}
}

/*直走調(diào)速函數(shù)*/
/*直線行走,左加速*/
void?speed_regulation1(uint?condition)
{
if(condition==2)
{

CCAP0L?=?CCAP0H?=?TURNL2PWM;
p22you?=?1;
delay(3);
p22you?=?0;
CCAP0L?=?CCAP0H?=?LEFTPMW;
}
else
{
if(condition==6)
{
CCAP0L?=?CCAP0H?=?TURNL1PWM;
delay(20);
CCAP0L?=?CCAP0H?=?LEFTPMW;
}
}
}

/*直線行走,右加速*/
void?speed_regulation2(uint?condition)
{
if(condition==12)
{
CCAP1L?=?CCAP1H?=?TURNR1PWM;
delay(20);
CCAP1L?=?CCAP1H?=?RIGHTPWM;

}
else
{
if(condition==8)
{
CCAP1L?=?CCAP1H?=?TURNR2PWM;
p20zuo?=?1;
????delay(3);
p20zuo?=?0;
CCAP1L?=?CCAP1H?=?RIGHTPWM;

}
}
}

/*直線行走,保持原速*/
void?speed_regulation3()
{
CCAP0L?=?CCAP0H?=?LEFTPMW;
CCAP1L?=?CCAP1H?=?RIGHTPWM;
delay(30);
}

void?gostraight(uint?condition)
{
switch(condition)
{
case?2:speed_regulation1(condition);break;??//直線行走,

評論

共有 條評論

相關(guān)資源