WIP. Для отладки
This commit is contained in:
17
examples/gpio-interrupt.c
Executable file → Normal file
17
examples/gpio-interrupt.c
Executable file → Normal file
@@ -19,6 +19,14 @@
|
||||
#include <sys/time.h>
|
||||
#include <wiringPi.h>
|
||||
|
||||
/*
|
||||
жёлтый д0
|
||||
красный такт
|
||||
чёрный д1
|
||||
синий д2
|
||||
зелёный д3
|
||||
оранжевый - общий
|
||||
*/
|
||||
|
||||
unsigned int wr_pin = 27; /** Вывод для сигнала записи */
|
||||
unsigned int pins[] = { 21, 7, 6, 5, 25, 24, 23, 22 }; /** Выводы для данных */
|
||||
@@ -98,9 +106,9 @@ bool fifo_try_write(struct fifo *ff, char* buffer, size_t len) {
|
||||
|
||||
static struct fifo isr_ff;
|
||||
|
||||
|
||||
int c = 0;
|
||||
void isr_handle(void) {
|
||||
char byte_read = digitalReadPins(pins, sizeof pins / sizeof pins[0]);
|
||||
char byte_read = 0x0f & digitalReadPins(pins, sizeof pins / sizeof pins[0]);
|
||||
fifo_try_write(&isr_ff, &byte_read, 1);
|
||||
}
|
||||
|
||||
@@ -137,7 +145,10 @@ int main(void) {
|
||||
while (true) {
|
||||
bool is_read = fifo_try_read(&isr_ff, buffer, sizeof buffer);
|
||||
if (is_read) {
|
||||
fwrite(buffer, 1U, sizeof buffer, stdout);
|
||||
//fwrite(buffer, 1U, sizeof buffer, stdout);
|
||||
for (int i = 0; i < sizeof buffer; i ++) {
|
||||
printf("%02d: %02x\n", i, buffer[i]);
|
||||
}
|
||||
fflush(stdout);
|
||||
}
|
||||
else {
|
||||
|
||||
Reference in New Issue
Block a user