Funzioni di IO varie con seriale asincrona
Dependents: Nucleo_AsyncSerialIO
Fork of IOFuncLib by
IOFuncLib.h@12:0df187b0bfad, 2015-09-04 (annotated)
- 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?
User | Revision | Line number | New 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 |