// extern6f.h // some of these might be for future experiments // external prototypes // digital routines -- also put in digi6f.h without "extern" extern unsigned get_port(void); extern int ConfigureOutput(int arraynumber, int portselect); extern int SetLast(int arraynumber); extern int TurnOn(int arraynumber); extern int TurnOff(int arraynumber); extern int is_closure(int input); extern void set_up_ppi(int mode); extern void btoa(void); extern void motor(long on, long off); extern void motor2(long on, long off); extern void portaon(void); extern void portaoff(void); extern void portbon(void); extern void portboff(void); extern void portcon(void); extern void portcoff(void); // timer routines -- also put in timer.h without "extern" extern double get_frequency(void); extern double get_mintime(void); extern double get_maxtime(void); extern long get_timer_counter(void); extern int set_up_new_timer(double freq); extern void wait(double seconds); extern void restore_old_timer(void); extern int pwm(int arraynumber, int type, int ForwardPortNumber, int ReversePortNumber, int DirectionPortNumber, int BrakePortNumber, double ForwardOnTime, double ForwardOffTime, double ReverseOnTime, double ReverseOffTime, int StartDirection); // set up a uni-directioanl pwm channel extern int UniPwm(int arraynumber, int ForwardPortNumber, double ForwardOnTime, double ForwardOffTime); // set up a uni-directioanl pwm channel using duty cycle extern int UniPwmDuty(int arraynumber, int ForwardPortNumber, double ForwardDutycycle); // set up a dual pwm channel using duty cycle extern int DualPwmDuty(int arraynumber, int StartDirection, int ForwardPortNumber, double ForwardDutycycle, int ReversePortNumber, double ReverseDutycycle); // set up a channel with a pwm line and a direction line -- no brake // using duty cycle extern int PwmAndDirectionDuty(int arraynumber, int StartDirection, int PwmPortNumber, int DirectionPortNumber, double ForwardDutycycle, double ReverseDutycycle); // set up an L289 extern int L289PwmDuty(int arraynumber, int StartDirection, int PwmPortNumber, double ForwardDutycycle, double ReverseDutycycle, int Direction1Port, int Direction2Port); // go forward extern int Forward(int arraynumber); // go in reverse extern int Reverse(int arraynumber); // stop extern int Stop(int arraynumber); // brake a dual pwm channel // taking both lines high brakes extern int BrakeDualPwm(int arraynumber); // brake an L298 extern int BrakeL298(int arraynumber); extern Blink(int arraynumber, int BlinkPort, double BlinkOnTime, double BlinkOffTime); extern void showall(void); extern void show(int location); // end extern6f.h