Funzioni di IO varie con seriale asincrona

Dependents:   Nucleo_AsyncSerialIO

Fork of IOFuncLib by Max Scordamaglia

Committer:
MaxScorda
Date:
Fri Sep 04 22:13:56 2015 +0000
Revision:
12:0df187b0bfad
Parent:
5:0dd768073f59
Child:
13:7871bb60d370
Async

Who changed what in which revision?

UserRevisionLine numberNew contents of line
MaxScorda 0:f401aa69861a 1 #ifndef IOFUNCLIB_H
MaxScorda 0:f401aa69861a 2 #define IOFUNCLIB_H
MaxScorda 3:6c6446382bb2 3 #include <string>
MaxScorda 12:0df187b0bfad 4 #include "BufferedSerial.h"
MaxScorda 1:58f3784ad68e 5
MaxScorda 0:f401aa69861a 6 #include "mbed.h"
MaxScorda 1:58f3784ad68e 7
MaxScorda 1:58f3784ad68e 8 class Flasher
MaxScorda 1:58f3784ad68e 9 {
MaxScorda 0:f401aa69861a 10 public:
MaxScorda 0:f401aa69861a 11 Flasher(PinName pin);
MaxScorda 0:f401aa69861a 12 void flash(int n);
MaxScorda 0:f401aa69861a 13 void onOff(bool n);
MaxScorda 0:f401aa69861a 14 void notPin();
MaxScorda 1:58f3784ad68e 15
MaxScorda 1:58f3784ad68e 16 private:
MaxScorda 0:f401aa69861a 17 DigitalOut _pin;
MaxScorda 0:f401aa69861a 18 };
MaxScorda 1:58f3784ad68e 19
MaxScorda 1:58f3784ad68e 20
MaxScorda 1:58f3784ad68e 21 class Screen
MaxScorda 1:58f3784ad68e 22 {
MaxScorda 1:58f3784ad68e 23 public:
MaxScorda 1:58f3784ad68e 24 Screen(Serial* ps);
MaxScorda 12:0df187b0bfad 25
MaxScorda 1:58f3784ad68e 26 void banner();
MaxScorda 1:58f3784ad68e 27 void pressed();
MaxScorda 2:8e723d99838e 28 //vettore schermo
MaxScorda 2:8e723d99838e 29 void commitScreen();
MaxScorda 2:8e723d99838e 30 void emptyFrame();
MaxScorda 2:8e723d99838e 31 void clearScreen(char upperx, char uppery, char loverx, char lowery);
MaxScorda 4:eae942db86db 32 void writeScreen(char sstr[], char xx, char yy, int padb=0);
MaxScorda 2:8e723d99838e 33
MaxScorda 1:58f3784ad68e 34 private:
MaxScorda 1:58f3784ad68e 35 /**
MaxScorda 1:58f3784ad68e 36 * Receive bytes from the serial port and store it into the receive queue.
MaxScorda 1:58f3784ad68e 37 */
MaxScorda 1:58f3784ad68e 38 Serial* _ps;
MaxScorda 2:8e723d99838e 39 // vettore schermo
MaxScorda 2:8e723d99838e 40 char svec[80][24] ;
MaxScorda 1:58f3784ad68e 41 };
MaxScorda 1:58f3784ad68e 42
MaxScorda 12:0df187b0bfad 43
MaxScorda 12:0df187b0bfad 44 class ScreenAsync : public Screen
MaxScorda 12:0df187b0bfad 45 {
MaxScorda 12:0df187b0bfad 46 public:
MaxScorda 12:0df187b0bfad 47 ScreenAsync(BufferedSerial* bps);
MaxScorda 12:0df187b0bfad 48
MaxScorda 12:0df187b0bfad 49 private:
MaxScorda 12:0df187b0bfad 50 BufferedSerial* _bps;
MaxScorda 12:0df187b0bfad 51 };
MaxScorda 12:0df187b0bfad 52
MaxScorda 3:6c6446382bb2 53 class genFunctions
MaxScorda 3:6c6446382bb2 54 {
MaxScorda 3:6c6446382bb2 55 public:
MaxScorda 3:6c6446382bb2 56 //genFunctions();
MaxScorda 4:eae942db86db 57 char* subchar(char* arr, int begin, int len);
MaxScorda 4:eae942db86db 58 string padstr(string sttde, int maxlen, char fillchar);
MaxScorda 3:6c6446382bb2 59 string addEOS(string sttde) ;
MaxScorda 3:6c6446382bb2 60 string subEOS(string sttde) ;
MaxScorda 3:6c6446382bb2 61 char* string2char(string sttde);
MaxScorda 5:0dd768073f59 62 int constrain(int amt, int low, int high);
MaxScorda 5:0dd768073f59 63 int min(int a, int b);
MaxScorda 5:0dd768073f59 64 int max(int a, int b);
MaxScorda 5:0dd768073f59 65 int abs(int x);
MaxScorda 5:0dd768073f59 66
MaxScorda 3:6c6446382bb2 67 private:
MaxScorda 3:6c6446382bb2 68 };
MaxScorda 3:6c6446382bb2 69
MaxScorda 0:f401aa69861a 70 #endif