Sample code for most PIC18F4520 operations

From Mech
Revision as of 14:49, 16 January 2008 by LIMS (talk | contribs)
Jump to navigationJump to search

These will/should also have wiki pages for background and associated electronics:

  • DigitalIO Digital input and output bit-by-bit or byte-by-byte
  • AnalogInput Reading up to twelve Analog Inputs
  • Counter0 Counting pulses with Timer0
  • Counter1 Counting pulses with Timer1
  • MotorPWM PWM outputs for torque control of one or two DC motors; Timer 2
  • RS232com Serial RS232 communication between PIC and a text window
  • Interrupt0 Periodic servo cycles using interrupt routines, 10mS & slower; Timer 0
  • Interrupt2 Periodic servo cycles using interrupt routines; 10mS & faster; Timer 2
  • InterruptExternal Interrupts generated by an external pulse
  • RCservoSoft PWM output in software for position control of up to five RC servos; Timer 3
  • RCservoHard PWM output in hardware for position control of up to two RC servos; Timer 2
  • QuadratureSoft Quadrature decoder/counter in software for arbitarily many encoders; 1KHz max
  • QuadratureHard Quadrature decoder/counter in hardware for one arbitrarily fast encoder; Timers 0 and 1

    Not available yet:

  • AnalogOutputParallel Analog output using 8 digital lines
  • AnalogOutputI2C Analog output using I2C serial
  • Printing to a serial LCD
  • Printing to a parallel LCD
  • PIC-to-PIC communication
  • Zigbee radio communication
  • Modulated IR communication
  • Strobing LEDs or IREDs for better range and immunity to background light
  • I2C communication
  • CAN bus
  • Capturing data to Matlab
  • Running stepper motors