diff options
author | lonkaars <loek@pipeframe.xyz> | 2022-05-26 17:41:26 +0200 |
---|---|---|
committer | lonkaars <loek@pipeframe.xyz> | 2022-05-26 17:41:26 +0200 |
commit | 6a1c9853402f623ef9eba76556a9a0213f04d3c8 (patch) | |
tree | 1aa57562958f0d87bafc7bf4ae1dcfc595f0306b /robot/io.c | |
parent | 8995e8b1f29f9c5da4d8c08fafcba53c58ee7947 (diff) | |
parent | 0b314c2ea19f0ae33a1b6c47f8b1140f22e78d2a (diff) |
Merge branch 'HoodieJeansJordans-master'
Diffstat (limited to 'robot/io.c')
-rw-r--r-- | robot/io.c | 51 |
1 files changed, 50 insertions, 1 deletions
@@ -1,3 +1,52 @@ #include "io.h" +#include <pololu/orangutan.h> -void w2_io_main() {} + +w2_io_all global; + +void w2_io_main() { + global.button[0] = get_single_debounced_button_press(BUTTON_A); + global.button[1] = get_single_debounced_button_press(BUTTON_B); + global.button[2] = get_single_debounced_button_press(BUTTON_C); + global.button[3] = get_single_debounced_button_press(TOP_BUTTON); + global.button[4] = get_single_debounced_button_press(BOTTOM_BUTTON); + unsigned int sensor_values[5]; + qtr_read(sensor_values, QTR_EMITTERS_ON); + for(int i = 0; i <5; i++){ + global.qtrSensor[i] = sensor_values[i]; + } + // TODO average voltage over mutiple samples sensor + global.batteryLevel = analog_read(BATTERY_PIN); + global.frontDetection = analog_read(FRONT_SENSOR_PIN); + global.sideDetection = analog_read(SIDE_SENSOR_PIN); + + set_motors(global.motor_left, global.motor_right); + red_led(global.led_red); + green_led(global.led_green); + print_character(global.lcd); +}; + +void w2_io_init(){ + pololu_3pi_init(2000): + + for(counter=0;counter<80;counter++) + { + if(counter < 20 || counter >= 60) + { + global.motor_left=40; + global.motor_right=-40; + } + else + { + global.motor_left=-40; + global.motor_right=40; + } + + calibrate_ + line_sensors(IR_EMITTERS_ON); + + delay_ms(20); + } + global.motor_left=0; + global.motor_right=0; +}
\ No newline at end of file |