52 lines
1.4 KiB
C
52 lines
1.4 KiB
C
#ifndef REFLECTANCE_H
|
|
#define REFLECTANCE_H
|
|
|
|
#include <stdint.h>
|
|
|
|
// ------------Reflectance_Init------------
|
|
// Initialize the GPIO pins associated with the QTR-8RC
|
|
// reflectance sensor. Infrared illumination LEDs are
|
|
// initially off.
|
|
// Input: none
|
|
// Output: none
|
|
void ReflectanceInit(void);
|
|
|
|
// ------------Reflectance_Read------------
|
|
// Read the eight sensors
|
|
// Turn on the 8 IR LEDs
|
|
// Pulse the 8 sensors high for 10 us
|
|
// Make the sensor pins input
|
|
// wait t us
|
|
// Read sensors
|
|
// Turn off the 8 IR LEDs
|
|
// Input: time to wait in usec
|
|
// Output: sensor readings
|
|
// Assumes: Reflectance_Init() has been called
|
|
uint8_t ReflectanceRead(uint32_t time);
|
|
|
|
// Perform sensor integration
|
|
// Input: data is 8-bit result from line sensor
|
|
// Output: position in 0.1mm relative to center of line
|
|
int32_t ReflectancePosition(uint8_t line_sensor_data);
|
|
|
|
// ------------Reflectance_Start------------
|
|
// Begin the process of reading the eight sensors
|
|
// Turn on the 8 IR LEDs
|
|
// Pulse the 8 sensors high for 10 us
|
|
// Make the sensor pins input
|
|
// Input: none
|
|
// Output: none
|
|
// Assumes: Reflectance_Init() has been called
|
|
void ReflectanceStart(void);
|
|
|
|
// ------------Reflectance_End------------
|
|
// Finish reading the eight sensors
|
|
// Read sensors
|
|
// Turn off the 8 IR LEDs
|
|
// Input: none
|
|
// Output: sensor readings
|
|
// Assumes: Reflectance_Init() has been called
|
|
// Assumes: Reflectance_Start() was called 1 ms ago
|
|
uint8_t ReflectanceEnd(void);
|
|
|
|
#endif /* REFLECTANCE_H */ |