Beispiel #1
0
int main (void)
{
    int pin = 7;
    char ch;
    int exit_flag = 0;
    printf("welcome to Lair Brew\n");

    if (wiringPiSetup() == -1) return(1);

    pinMode(pin, OUTPUT);
    printf("Brew on\n");
    digitalWrite(pin, 1);

    while( exit_flag  == 0 ) {
        printf("Wish to exit? (Y)\n");
        scanf(" %c", &ch );
        ch = toupper( ch );
        if((ch == 'Y')) {
            printf("\nBrew Off\n");
            digitalWrite(pin, 0);
            delay(250);
            printf("\nEnjoy Your Coffee, Sir!\n");
        }
        else {
            printf("\nType (y) to exit.\n");
            loopback();
        }

        if( ch == 'Y' ) exit_flag = 1;


    }

    return 0;
}
Beispiel #2
0
void test_extra_bytes(int repetitions) {
    uint8_t fake_data[4];
    for (uint32_t i = 0; i < repetitions; i++) {
        for (uint32_t j = 0; j < sizeof(fake_data); j++) {
            fake_data[j] = (uint8_t) (rand() & 0xFF);
        }
        for (uint32_t j = 0; j < 4; j++) {
            loopback(fake_data, sizeof(fake_data), &serial_tx);
            fifo_put(&serial_tx, fake_data, sizeof(fake_data));
        }
        while (depacketize_data(&serial_tx, &serial_rx));
        while (depacketize_data(&serial_rx, NULL));
    }
}
Beispiel #3
0
void test_loopback(int repetitions) {
    uint8_t fake_data[MAX_DATA_LENGTH];
    for (uint32_t i = 0; i < sizeof(fake_data); i++) {
        fake_data[i] = (uint8_t) i;
    }
    for (uint16_t i = 0; i < MAX_DATA_LENGTH; i++) {
        printf("Packet Length: %d\n", i);
        for (uint32_t j = 0; j < repetitions; j++) {
            loopback(fake_data, i, &serial_tx);
            if (!depacketize_data(&serial_tx, &serial_rx)) {
                printf("Error %d, %d!\n", i, j);
                exit(1);
            }
        }
    }
}
Beispiel #4
0
RET_CODE_E cmd_loopback_handler(command_t cmd, handle_t handle, uint8_t * payload, data_length_t length, fifo_t * resp_fifo) {
    loopback(payload, length, resp_fifo);
    return RET_OK;
}