Skip to content
Extraits de code Groupes Projets
uart.cpp 1,07 ko
Newer Older
  • Learn to ignore specific revisions
  • #include <stdio.h>
    #include <stdlib.h>
    #include <stdbool.h>
    
    #include <wiringSerial.h>
    #include <wiringPi.h>
    
    #include <iostream>
    
    using namespace std;
    
    const char TURN_ON[]  = "Turn Led On";
    const char TURN_OFF[] = "Turn Led Off";
    
    int main(int argc, char const *argv[])
    {
        int fd = serialOpen("/dev/ttyS0", 9600);
    
        if (fd == -1 || wiringPiSetup() == -1) {
            printf("UART PAS OK\n");
            exit(EXIT_FAILURE);
        }
    
        serialPrintf(fd, TURN_ON);
        delay(1000);
        int response;
    
        while (true) {
            if (serialDataAvail(fd)) {
                response = serialGetchar(fd);
                break;
            }
        }
        
        cout << response << endl;
        printf("%c\n", response);
        serialPrintf(fd, TURN_OFF);
    
        delay(200);    
    
        while (true) {
            if (serialDataAvail(fd) > 0) {
                cout << serialDataAvail(fd) << endl;
                for (int i = 0; i < serialDataAvail(fd); i++)
                {
                    response = serialGetchar(fd);
                }
                break;
            }
        }
    
        cout << response << endl;
    
        serialClose(fd);
        
        return 0;
    }