Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- short unsigned pin = 10;
- float curr = 0;
- void stat() {
- Serial.print("Set pin ");
- Serial.print(pin);
- Serial.print(" to ");
- Serial.print(5.0/255*curr);
- Serial.print(" Volt (");
- Serial.print(curr);
- Serial.println(")");
- }
- void setup() {
- Serial.begin(9600);
- pinMode(pin, OUTPUT);
- Serial.println("Welcome on SV's Teensy 2.0\n-------------------------\nh=turn on the pin\nl=turn off the pin\nf=fade\nnXX=change the pin to XX\npXXX=turn on the pin with the XXX power\nt=sleep for 100 milliseconds\nT=sleep for 1 second\n|text|=prints 'text'\n-------------------------\nSet pin 10\n");
- }
- boolean pipe = false;
- boolean led = 0;
- short p = -2;
- short n = -2;
- int vals[3];
- int vals_n[2];
- long previousMillis;
- int ledState;
- int interval=500;
- void loop() {
- unsigned long currentMillis = millis();
- if(currentMillis - previousMillis > interval) {
- previousMillis = currentMillis;
- if (ledState == LOW)
- ledState = HIGH;
- else
- ledState = LOW;
- digitalWrite(11, ledState);
- }
- if(Serial.available()) {
- char c = Serial.read();
- if(c=='|') {
- pipe=!pipe;
- } else if(c=='h' && !pipe) {
- digitalWrite(pin, HIGH);
- curr = 255;
- stat();
- } else if(c=='l' && !pipe) {
- digitalWrite(pin, LOW);
- curr = 0;
- stat();
- } else if(c=='f' && !pipe) {
- int i;
- for(i=0; i<=255; i++) {
- analogWrite(pin, i);
- delay(10);
- }
- for(i=255; i>=0; i--) {
- analogWrite(pin, i);
- delay(10);
- }
- } else if(c=='+') {
- curr+=5;
- stat();
- analogWrite(pin, curr);
- } else if(c=='-') {
- curr-=5;
- stat();
- analogWrite(pin, curr);
- } else if(p>=0 && !pipe) {
- if(c<'0' || c>'9') {Serial.println("Sintassi errata"); p=-2;}
- vals[p]=c;
- p--;
- if (p==-1) {
- int val = (vals[0]-'0') + (vals[1]-'0')*10 + (vals[2]-'0')*100;
- if(val>255) {val=255;}
- curr=val;
- analogWrite(pin, val);
- stat();
- p = -2;
- }
- } else if(c=='p' && !pipe) {
- p = 2;
- } else if(n>=0 && !pipe) {
- if(c<'0' || c>'9') {Serial.println("Sintassi errata"); n=-2;}
- vals_n[n]=c;
- n--;
- if (n==-1) {
- int val_n = (vals_n[0]-'0') + (vals_n[1]-'0')*10;
- Serial.print("Changed pin from ");
- Serial.print(pin);
- Serial.print(" to ");
- Serial.println(val_n);
- pin = val_n;
- n = -2;
- }
- } else if(c=='n' && !pipe) {
- n = 1;
- } else if(c=='t' && !pipe) {
- Serial.print("Waiting 100 ms...");
- delay(100);
- Serial.println("OK");
- } else if(c=='T' && !pipe) {
- Serial.print("Waiting 1 s...");
- delay(1000);
- Serial.println("OK");
- } else if(pipe) {
- Serial.print(c);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement