We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I've written this program for AT89S52 to control a servo.The signal pin of the servo is connected to the P1_0 of the chips and a LED is connected to the P2_7 of the chip.When I turned the circuit on the servo had no response and only the LED have lit up.Please help me to check if there is any mistake in my program.
#include<AT89X52.h> unsigned int PWMHIGH; sbit PWM=P1^0; void timer0 () interrupt 1 { TL0 = (65536- 20000) & 0xFF; //20ms TH0 = ((65536-20000) & 0xFF00) >> 8; TL1 = (65536-PWMHIGH) & 0xFF; //1.5ms TH1 = ((65536-PWMHIGH) & 0xFF00)>>8; PWM = 1; TR1 = 1; } void timer1 () interrupt 3 { PWM = 0; TR1 = 0; } void main() { P2_7=0; IE = 0x8A; // EA, Timer0, Timer 1 // Timer0 , Timer1 Mode1 TMOD= 0x11; PWMHIGH = 1000; // on time //timer turn on TR0 = 1; TF0 = 1; while(1); }
A former (female) lecturer (she was a gorgeous babe by the way, not that it matters here. 50% of the class was drooling during classes, including me :-) ) once told us poor students that she has to give an "F" to two other students that handed in a paper in which they replaced the entire contents of a C++ program with a macro called "I love C much more".