Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <c8051f340.h>
- #include "time.h"
- // tasteri i LED diode
- sbit K1 = P2^0;
- sbit K2 = P2^1;
- sbit D2 = P2^2;
- sbit D3 = P2^3;
- void OSCILLATOR_Init (void);
- void PORT_Init (void);
- void main(void)
- {
- bit dioda = 1; //pomocna promenljiva za selekciju aktivne diode
- PCA0MD &= ~0x40; // Watchdog tajmer iskljucen
- OSCILLATOR_Init(); // Inicijalizacija oscilatora (Fosc = 22.1184 MHz)
- TIME_Init(); // Inicijalizacija sistemskog vremena (koristi se prekid tajmera 2)
- PORT_Init(); // Inicijalizacija portova
- D2 = D3 = 1;
- //test aplikacija:
- while (1)
- {
- if ((K1 == 0 && K2 == 1) || (K1 == 1 && K2 == 0)){ //pritisnut taster K1
- dioda = 1;
- } else {
- dioda = 0;
- }
- //if (K2 == 0) //pritisnut taster K2
- //dioda = 0;
- if (dioda)
- {
- //blink dode D2
- D2 = 1;
- D3 = 0;
- //delay_ms(200);
- //D2 = 0;
- //delay_ms(200);
- }
- else
- {
- //blink dode D3
- D3 = 1;
- D2 = 0;
- // delay_ms(200);
- // D3 = 0;
- // delay_ms(200);
- }
- }
- }
- void PORT_Init (void)
- {
- P2MDIN |= 0x0F; // 4 najniza bita porta P2 -> digitalni
- P2MDOUT = 0x0C; // Pinovi za LED -> push-pull izlazi
- // Crossbar inicijalizacija
- XBR1 = 0x40; // Dozvola crossbar-a i slabih pull-up otpornika
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement