Advertisement
milanmetal

[RSDMK] Ptica vozi / main.c

May 21st, 2018
193
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.10 KB | None | 0 0
  1. #include <c8051f340.h>
  2. #include <math.h>
  3. #include <stdlib.h>        
  4. #include "time.h"
  5. #include "TFT.h"
  6. #include "bitmap.h"
  7.  
  8. #define Y_OFFSET_MAX 32
  9. #define STEP 5
  10. unsigned int *ptice[4] = {bird1, bird2, bird3, bird4};
  11.  
  12. void OSCILLATOR_Init (void);          
  13.  
  14. void main(void)
  15. {
  16.     int i = 0;
  17.     int y_offset = 0;
  18.     bit smer = 0;       // 1 - dole, 0 - gore
  19.     PCA0MD &= ~0x40;    // Watchdog tajmer iskljucen
  20.  
  21.     OSCILLATOR_Init();  // Inicijalizacija oscilatora (Fosc = 22.1184 MHz)
  22.     TIME_Init();        // Inicijalizacija sistemskog vremena (koristi se prekid tajmera 2)
  23.     TFT_Init();         // Inicijalizacija displeja
  24.  
  25.     TFT_setBackColor(255, 255, 255);
  26.  
  27.  
  28.     TFT_clrScr();
  29.     TFT_fillScr(255, 255, 255);
  30.  
  31.  
  32.     while(1) {
  33.         for(i = 0; i < 4; i++) {
  34.            
  35.             TFT_fillRect(32, 32 + y_offset + 58, 32+64, 32 + y_offset + 70);
  36.             if(smer) {
  37.                 if(y_offset < Y_OFFSET_MAX) {
  38.                     y_offset += STEP;
  39.                 } else smer = 0;   
  40.             }   else {
  41.                 if(y_offset > -Y_OFFSET_MAX) {
  42.                     y_offset -= STEP;
  43.                 } else smer = 1;   
  44.             }
  45.            
  46.             TFT_drawBitmap(32, 32 + y_offset , 64, 64, ptice[i], 1);
  47.             delay_ms(50);
  48.         }
  49.     }
  50.    
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement