Advertisement
milanmetal

[RSDMK] UART 2. toUpperCase()

Apr 22nd, 2018
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.05 KB | None | 0 0
  1. #include <c8051f340.h>        
  2. #include "time.h"
  3. #include "uart.h"
  4.  
  5. bit ispisano = 0;
  6.  
  7. char prijem[64];
  8.  
  9. void OSCILLATOR_Init (void);          
  10. void PORT_Init (void);
  11. void toUpperCase(char *prijem);
  12.  
  13. void main(void)
  14. {
  15.     OSCILLATOR_Init();  // Inicijalizacija oscilatora (Fosc = 22.1184 MHz)
  16.     TIME_Init();        // Inicijalizacija sistemskog vremena (koristi se prekid tajmera 2)
  17.  
  18.     UART0_Init();
  19.     while (1)
  20.     {
  21.        
  22.         if(ispisano == 0) {
  23.             UART0_PutString("\nUnesite svoje cenjeno ime: \n");
  24.             ispisano = 1;
  25.         }
  26.  
  27.         // cekaj prijem
  28.         while(UART0_Available() == 0);
  29.        
  30.         // ako je primljeno...
  31.         if(UART0_Available() > 0) {
  32.             delay_ms(100);
  33.             UART0_GetString(prijem);
  34.         }
  35.        
  36.         UART0_PutString("\nZdravo, ");
  37.         toUpperCase(prijem);       
  38.         UART0_PutString(prijem);
  39.  
  40.         // dozvola ponovljenog unosa/ispisa
  41.         ispisano = 0;
  42.     }                            
  43.  }
  44.  
  45. void toUpperCase(char *prijem) {
  46.     while(*prijem){
  47.         if(*prijem >= 'a' && *prijem <= 'z') {
  48.             *prijem -= 32;
  49.         }
  50.  
  51.         prijem++;
  52.  
  53.     }
  54. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement