This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Servo controlling program

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);
}

Parents
  • Don't everyone have a policy to use at least one goto/hour ;)

    I added the reference to replacing the CRTL with inlined goto designs to give a little bit of a hint that goto may not be the best invention in the world.

    I'm of the opinion that any repetition in code must be performed with looping constructs (for, while, do ... while), and that any goto construct may only jump forward. This also agrees with the built-in goto-like keywords "continue", "break" and "case".

Reply
  • Don't everyone have a policy to use at least one goto/hour ;)

    I added the reference to replacing the CRTL with inlined goto designs to give a little bit of a hint that goto may not be the best invention in the world.

    I'm of the opinion that any repetition in code must be performed with looping constructs (for, while, do ... while), and that any goto construct may only jump forward. This also agrees with the built-in goto-like keywords "continue", "break" and "case".

Children