新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 航模大賽小車程序

航模大賽小車程序

作者: 時間:2016-11-29 來源:網(wǎng)絡 收藏
//==延遲程序==================================
void delay1ms(int x)
{ int i,j;
for(i=0;ifor(j=0;j<120;j++) ;
}
//==方向向前==================================
void go()
{
//z=1;
m1zheng=1;
m1fu=0;
m2zheng=1;
m2fu=0;
keys=0;
}
//==方向向后==================================
void back()
{
// z=0;
m1zheng=0;
m1fu=1;
m2zheng=0;
m2fu=1;
keys=0;
}
//==左轉(zhuǎn)======================================
void turn_lef()
{
// z=0;
m1zheng=0;
m1fu=0;
m2zheng=1;
m2fu=0;
keys=0;
}
//==右轉(zhuǎn)======================================
void turn_rig()
{
// z=0;
m1zheng=1;
m1fu=0;
m2zheng=0;
m2fu=0;
keys=0;
}
//==停止程序==================================
void stop()
{
z=0;
m1zheng=0;
m1fu=0;
m2zheng=0;
m2fu=0;
keys=0;
}
//
void timer0() interrupt 1 using 1
{
TH0 = 0xfe;
TL0 = frq;
if(z==1)
{
SPK=~SPK;
}
else
{
SPK=1;
}
}
//
//==主程序===================================
void main()
{
EA=1;
EX0=1; //IE=0x81;
TMOD=0x01;
TR0=1;
IT0=1;//TCON=0x11;
ET0=1;// m1zheng=0;
//
frq = 0x00;
TH0 = 0x00;
TL0 = 0xff;
//
//wendu
// uint Temp_buff;
// uchar g;
//wendu
while(1)
{
//
frq++;
delayms(1);
//
switch(keys)
{
case ~0xBD: z=1; break;
case ~0xB9: go();break;
case ~0xEA: back();break;
case ~0xBB: turn_lef();break;
case ~0xBC: turn_rig();break;
case ~0xE7: inc();break;
case ~0xAD: dec();break;
case ~0xBF: stop();break;
case ~0xB5: z=0;break;
default:break;
} ///////wendu
Temp_buff=ReadTemperature(); /*讀取當前溫度*/
sled_data[5] = sled_mun_to_char[Temp_buff/100];
sled_data[6] = sled_mun_to_char[Temp_buff%100/10];
sled_data[7] = sled_mun_to_char[Temp_buff%10];
for(g=0;g<8;g++)
{
sled_wm_port = 0xff; /*關(guān)閉顯示*/
_Nop();
_Nop();
_Nop();
sled_dm_port = sled_data[g]; /*輸出段碼數(shù)據(jù)到數(shù)碼管*/
if(g==6) sled_dm_port = sled_dm_port&0x7f; /*顯示小數(shù)點*/
sled_wm_port = sled_bit_table[g]; /*輸出位碼數(shù)據(jù)到數(shù)碼管*/
delay_1ms(1);
}
///////wendu
}
}
上一頁 1 2 下一頁

關(guān)鍵詞: 航模大賽小車程

評論


技術(shù)專區(qū)

關(guān)閉