elektronek

Jan Konečný - přenos floatu přes Wire

Apr 3rd, 2021 (edited)
411
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.02 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdint.h>
  3.  
  4. // vysilani
  5. float proud=1.234;
  6. uint8_t* pf;
  7.  
  8. // pomocny - simulace prenosu
  9. uint8_t TXBUFF[5];
  10.  
  11. // prijem
  12. float proud1;
  13. uint8_t* pf1;
  14.  
  15. int main(void){
  16.         // Vysilani
  17.         pf=(uint8_t*)&proud;
  18.         printf("Proud je %3.3f\n",proud);
  19.         for (uint8_t a=0; a<sizeof(proud); a++)
  20.         {
  21.                 uint8_t cislo=*(pf+a);
  22.                 printf("%02u ",cislo);
  23.                 // Wire.write(cislo); // Pro i2c na arduinu
  24.                 TXBUFF[a]=cislo;
  25.         }
  26.         // Konec vysilani
  27.  
  28.         printf("\nOdeslano...\n");
  29.  
  30.         // Prijem
  31.         pf1=(uint8_t*)&proud1;
  32.         for (uint8_t a=0; a<sizeof(proud1); a++)
  33.         {
  34.                 printf("%02u ",TXBUFF[a]);
  35.                 /* Tady neco ve smyslu
  36.                     uint8_t a=0;
  37.                     while (Wire.available())
  38.                     {
  39.                         *(pf1+a)=TXBUFF[a];
  40.                         a++;
  41.                     }
  42.                 */
  43.                 *(pf1+a)=TXBUFF[a];
  44.         }
  45.         printf("\nProud je %3.3f\n",proud1);
  46.         // Konec prijmu
  47.         return 0;
  48. }
  49.  
Add Comment
Please, Sign In to add comment