recv.c 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <stdint.h>
  5. #include "bus.h"
  6. #ifdef __linux__
  7. #define PIN_DATA 2
  8. #define PIN_CLK 3
  9. #define PIN_ACK 4
  10. int data[3]={0};
  11. #include "io.h"
  12. int main()
  13. {
  14. bus_t bus;
  15. pthread_t thread;
  16. FILE* file = NULL;
  17. setup_io();
  18. bus_init_recv(&bus, PIN_DATA, PIN_CLK, PIN_ACK);
  19. init_read_pin(PIN_DATA, PIN_CLK, PIN_ACK);
  20. pthread_create(&thread, NULL, bus_recv_thread, &bus);
  21. while(1)
  22. {
  23. uint32_t c;
  24. char buffer[16];
  25. bus_read(&bus, buffer, 5);
  26. buffer[5]=0;
  27. //file=fopen("data", "r+");
  28. printf("'%s'\n", buffer);
  29. //fprintf(file,"%u\n", c);
  30. //fclose(file);
  31. }
  32. /*printf("Strat\n");
  33. while(1)
  34. {
  35. int i;
  36. for(i=2; i<5; i++)
  37. {
  38. int a = read_pin(i);
  39. if(a!=data[i])
  40. {
  41. printf("pin[%d] : %d -> %d\n", i, data[i], a);
  42. data[i]=a;
  43. }else printf("pin[%d] : %d \n", i, a);
  44. }
  45. sleep(1);
  46. }*/
  47. free_fifo(PIN_DATA, PIN_CLK, PIN_ACK);
  48. /*int i;
  49. setup_io();
  50. INP_GPIO(2);
  51. INP_GPIO(3);
  52. while(1)
  53. {
  54. printf("%d ", GET_GPIO(2));
  55. printf("%d ", GET_GPIO(3));
  56. printf("\n");
  57. sleep(1);
  58. }*/
  59. }
  60. #endif