00001 #include "led_and_switch.h"
00002
00003 static short red_led_pin, grn_led_pin, reset_switch_pin, mode_switch_pin;
00004
00005 int initializeLedAndSwitch(int r_led_pin, int g_led_pin, int reset_pin, int mode_pin) {
00006 red_led_pin = r_led_pin;
00007 grn_led_pin = g_led_pin;
00008 reset_switch_pin = reset_pin;
00009 mode_switch_pin = mode_pin;
00010
00011 INPUT(reset_switch_pin);
00012 INPUT(mode_switch_pin);
00013
00014 OUTPUT(red_led_pin);
00015 OUTPUT(grn_led_pin);
00016
00017 HIGH(red_led_pin);
00018 HIGH(grn_led_pin);
00019
00020 WAIT(1);
00021
00022 if(!IN(red_led_pin) || !IN(grn_led_pin)) {
00023 INPUT(red_led_pin);
00024 INPUT(grn_led_pin);
00025 return -1;
00026 } else {
00027 LOW(grn_led_pin);
00028 return 0;
00029 }
00030 }
00031
00032
00033 int getLedRedState() {
00034 return IN(red_led_pin);
00035 }
00036
00037
00038 int getLedGreenState() {
00039 return IN(grn_led_pin);
00040 }
00041
00042
00043 int setLedRedState(int red) {
00044 if(red) {
00045 HIGH(red_led_pin);
00046 } else {
00047 LOW(red_led_pin);
00048 }
00049 return IN(red_led_pin);
00050 }
00051
00052
00053 int setLedGreenState(int green) {
00054 if(green) {
00055 HIGH(grn_led_pin);
00056 } else {
00057 LOW(grn_led_pin);
00058 }
00059 return IN(grn_led_pin);
00060 }
00061
00062
00063 int getResetSwitch() {
00064 return IN(reset_switch_pin);
00065 }
00066
00067
00068 int getModeSwitch() {
00069 return IN(mode_switch_pin);
00070 }