diff --git a/ard/example/analog_input.c b/ard/example/analog_input.c new file mode 100644 index 0000000..56a5bd3 --- /dev/null +++ b/ard/example/analog_input.c @@ -0,0 +1,38 @@ +#include +#include +#include "ard/serial.h" +#include "ard/pins.h" +#include "ard/util.h" + +void prepare(); +void loop(); + +int main(){ + prepare(); + + while(1){ + loop(); + } +} + +void prepare(){ + // enable global interrupts and serial port + pins_init(); + serial_init(9600); + + pin_mode(A1, INPUT); + pin_mode(A2, INPUT); +} + +unsigned char pwm = 0; + +void loop(){ + int analog1 = analog_read(A1); + int analog2 = analog_read(A2); + + char out[15]; + sprintf(out, "%d %d", analog1, analog2); + serial_write(out, 15); + + _delay_ms(25); +} diff --git a/ard/example/analog_output.c b/ard/example/analog_output.c new file mode 100644 index 0000000..9c7b9e7 --- /dev/null +++ b/ard/example/analog_output.c @@ -0,0 +1,43 @@ +#include +#include "ard/serial.h" +#include "ard/pins.h" +#include "ard/util.h" + +void prepare(); +void loop(); + +int main(){ + prepare(); + + while(1){ + loop(); + } +} + +void prepare(){ + // enable global interrupts and serial port + pins_init(); + serial_init(9600); + + pin_mode(A1, INPUT); + pin_mode(6, OUTPUT); + pin_mode(11, OUTPUT); +} + +unsigned char pwm = 0; + +void loop(){ + int analog = map(analog_read(A1), 0, 1023, 0, 255); + analog_write(11, analog); + + if(analog < 128){ + digital_write(6, HIGH); + } + else{ + digital_write(6, LOW); + } + + char out[15]; + sprintf(out, "%d", analog); + serial_write(out, 15); +} diff --git a/ard/example/digital.c b/ard/example/digital.c new file mode 100644 index 0000000..f3463ad --- /dev/null +++ b/ard/example/digital.c @@ -0,0 +1,39 @@ +#include +#include +#include "ard/serial.h" +#include "ard/pins.h" +#include "ard/util.h" + +void prepare(); +void loop(); + +int main(){ + prepare(); + + while(1){ + loop(); + } +} + +void prepare(){ + // enable global interrupts and serial port + pins_init(); + serial_init(9600); + + pin_mode(11, OUTPUT); + pin_mode(10, INPUT); + pin_mode(8, INPUT); +} + +unsigned char pwm = 0; + +void loop(){ + if(digital_read(10) && digital_read(8)){ + digital_write(11, HIGH); + } + else{ + digital_write(11, LOW); + } + + _delay_ms(25); +} diff --git a/main.c b/main.c index d850804..9c7b9e7 100644 --- a/main.c +++ b/main.c @@ -1,4 +1,3 @@ -//#include #include #include "ard/serial.h" #include "ard/pins.h" @@ -20,16 +19,6 @@ void prepare(){ pins_init(); serial_init(9600); - // digital input/output example - /*pin_mode(11, OUTPUT); - pin_mode(10, INPUT); - pin_mode(8, INPUT);*/ - - // anlog input example - /*pin_mode(A1, INPUT); - pin_mode(A2, INPUT);*/ - - // PWM example pin_mode(A1, INPUT); pin_mode(6, OUTPUT); pin_mode(11, OUTPUT); @@ -38,23 +27,6 @@ void prepare(){ unsigned char pwm = 0; void loop(){ - // digital input/output example - /*if(digital_read(10) && digital_read(8)){ - digital_write(11, HIGH); - } - else{ - digital_write(11, LOW); - }*/ - - // anlog input example - /*int analog1 = analog_read(A1); - int analog2 = analog_read(A2); - - char out[15]; - sprintf(out, "%d %d", analog1, analog2); - serial_write(out, 15);*/ - - // PWM example int analog = map(analog_read(A1), 0, 1023, 0, 255); analog_write(11, analog); @@ -68,6 +40,4 @@ void loop(){ char out[15]; sprintf(out, "%d", analog); serial_write(out, 15); - - //_delay_ms(25); }