Classes | Defines | Variables

C:/Documents and Settings/gw/My Documents/Other projects/flightos/Modules/fastservo.h File Reference

Go to the source code of this file.

Classes

class  FastServo

Defines

#define MAKENAME(n)   const char fastServoNames##n[] PROGMEM = "FastServo."#n
 High speed PWM output.
#define MAKEARRAY(s)
#define MAKENAME(s, n)   const char fastServo##s##n[] PROGMEM = "FastServo."#n"."#s
 High speed PWM output.
#define US2CLKS   ((F_CPU / 8)/1000000)
#define sbi(reg, bit)   reg |= _BV(bit)
#define cbi(reg, bit)   reg &= ~(_BV(bit));

Variables

const char fastServoNames1[] PROGMEM = "1"
FastServo g_FastServo

Define Documentation

#define cbi (   reg,
  bit 
)    reg &= ~(_BV(bit));
#define MAKEARRAY (   s  ) 
Value:
static const char* s[] = {\
    s##1,s##2,s##3,s##4,s##5,s##6};
#define MAKENAME (   n  )     const char fastServoNames##n[] PROGMEM = "FastServo."#n

High speed PWM output.

Uses AtMega hardware PWM

Sockets exposed:

FastServo.n This is the output in the range -1 to +1. N denotes the servo number. If you define two fast servos then you will get FastServo.0 and FastServo.1.
FastServo.n.Min Minimum pulse width to output in us (normally 1000)
FastServo.n.Max Maximum pulse width to output in us (normally 2000)
FastServo.n.Gain Scale factor. Use 500 for full range pulse width output
FastServo.n.Offset Zero offset in us. Use 1500 for normal -1 to +1 servo range

For a throttle output use a gain of 1000 and a zero offset of 1000



external sockets expected: None

#define MAKENAME (   s,
  n 
)    const char fastServo##s##n[] PROGMEM = "FastServo."#n"."#s

High speed PWM output.

Uses AtMega hardware PWM

Sockets exposed:

FastServo.n This is the output in the range -1 to +1. N denotes the servo number. If you define two fast servos then you will get FastServo.0 and FastServo.1.
FastServo.n.Min Minimum pulse width to output in us (normally 1000)
FastServo.n.Max Maximum pulse width to output in us (normally 2000)
FastServo.n.Gain Scale factor. Use 500 for full range pulse width output
FastServo.n.Offset Zero offset in us. Use 1500 for normal -1 to +1 servo range

For a throttle output use a gain of 1000 and a zero offset of 1000



external sockets expected: None

#define sbi (   reg,
  bit 
)    reg |= _BV(bit)
#define US2CLKS   ((F_CPU / 8)/1000000)

Variable Documentation

const char fastServoOffset6 [] PROGMEM = "1"
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Defines