Advertisement
milanmetal

[RSDMK] Unesite svoje ime UART

Apr 3rd, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.27 KB | None | 0 0
  1. #include <c8051f340.h>        
  2. #include "time.h"
  3. #include "uart.h"
  4.  
  5. // tasteri i LED diode
  6. sbit K1 = P2^0;                    
  7. sbit K2 = P2^1;    
  8. sbit D2 = P2^2;
  9. sbit D3 = P2^3;
  10.  
  11. bit ispisano = 0;
  12.  
  13. char prijem;
  14.  
  15. void OSCILLATOR_Init (void);          
  16. void PORT_Init (void);
  17.  
  18. void main(void)
  19. {
  20.     bit dioda = 1;      //pomocna promenljiva za selekciju aktivne diode
  21.  
  22.     PCA0MD &= ~0x40;    // Watchdog tajmer iskljucen
  23.  
  24.     OSCILLATOR_Init();  // Inicijalizacija oscilatora (Fosc = 22.1184 MHz)
  25.     TIME_Init();        // Inicijalizacija sistemskog vremena (koristi se prekid tajmera 2)
  26.     PORT_Init();        // Inicijalizacija portova
  27.  
  28.     UART0_Init();
  29.  
  30.     D2 = D3 = 1;
  31.  
  32.     //test aplikacija:
  33.     while (1)
  34.     {
  35.        
  36.         //while(UART0_Available() == 0) {
  37.         if(ispisano == 0) {
  38.             UART0_PutString("\nUnesite svoje ime: \n");
  39.             ispisano = 1;
  40.         }
  41.  
  42.         if(UART0_Available() != 0) {
  43.             UART0_PutString("Zdravo, ");
  44.             UART0_GetString(&prijem);
  45.             delay_ms(500);
  46.             UART0_PutString(&prijem);
  47.         }
  48.        
  49.  
  50.     }                            
  51.  }
  52.  
  53. void PORT_Init (void)
  54. {
  55.    P2MDIN |= 0x0F;              // 4 najniza bita porta P2 -> digitalni
  56.    P2MDOUT = 0x0C;              // Pinovi za LED -> push-pull izlazi
  57.  
  58.    // Crossbar inicijalizacija
  59.    XBR1    = 0x40;              // Dozvola crossbar-a i slabih pull-up otpornika
  60. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement