熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2020-4-20 13:00
正文摘要:C206 missing function-prototype #include<reg52.h> #include<intrins.h> #define uchar unsigned char static unsigned char table[6]={0,0,0,0,0,0}; //Declare functions uchar Busy_Check() ... |
/********************引腳定義*********************/ #include "reg51.h" typedef unsigned int uint; typedef unsigned char uchar; #define Duty_cycle 35 //占空間 #define Cycle 100 //PWM周期 sbit sensor_1 = P1^1; //紅外檢測(cè) sbit sensor_2 = P1^1; sbit sensor_3 = P1^3; sbit Motor_1H = P2^0; //電機(jī)驅(qū)動(dòng)控制信號(hào) sbit Motor_1L = P2^1; sbit Motor_2H = P2^2; sbit Motor_2L = P2^3; sbit En_pwm1 = P2^4; //使能信號(hào)(RWM) sbit En_pwm2 = P2^5; uchar timer1; //定義變量 /***************主函數(shù)*********************/ void mian( ) { TimelConfig();//定時(shí)器初始化 while(1) { if(Sensor_1==0 && Sensor_2==1 && Semsor_3==0) //狀態(tài):軌跡居中 Go_Straight(); //向前 else if(Sensor_1==0 && Sensor_2==0 && Semsor_3==1) //偏左 Turn_Right(); //右轉(zhuǎn) else if(Sensor_1==1 && Sensor_2==0 && Semsor_3==0) //偏右 Turn_left(); //左轉(zhuǎn) else if(Sensor_1==0 && Sensor_2==0 && Semsor_3==0) //偏離軌道 Go_Back(); //后退 else Go_Straight( ); //前進(jìn) } } /**************設(shè)置定時(shí)器***********/ void Time1Config() { TMOD|= 0x10; //設(shè)置定時(shí)計(jì)數(shù)器T1工作在模式1 /***定時(shí)器賦初始值, 12MHZ下定時(shí)0.5ms***/ TH1 = 0xFE; TL1 = 0x0c; ET1 = 1; //開啟定時(shí)器1中斷 EA = 1; TR1 = 1; //開啟定時(shí)器 } /********************定時(shí)器1的中斷函數(shù)********************/ void Time1(void) interrupt 3 //3 為定時(shí)器1的中斷號(hào) { timer1++; if(timer1>Cyc1e) //PWM周期為100*0.5ms { timer1=0; } if(timer1 < Duty_cyc1e) //改變Duty_cyc1e這個(gè)值可以改變直流電機(jī)的速度 { En_pwm1=1; En_pwm2=1; } e1se { En_pwm1=0; En_pwm2=0; } TH1 = 0xFE; //重新賦初值 TL1 = 0x0c; } |
write_add()函數(shù)在第12行被注釋掉了但在第138行被調(diào)用。 |
錯(cuò)誤太多,程序結(jié)構(gòu)都有問題。 |
Powered by 單片機(jī)教程網(wǎng)