Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "msp430x14x.h"
- #define B1 BIT4&P4IN //B1 - P4.4
- #define STATUS_LED_ON P2OUT &= ~BIT1 //STATUS_LED - P2.1
- #define STATUS_LED_OFF P2OUT |= BIT1 //STATUS_LED - P2.1
- void InitPorts(void)
- {
- P1SEL = 0; //
- P1OUT = 0; //
- P1DIR = BIT5 | BIT6; //enable only Relay outputs
- P2SEL = 0;
- P2OUT = 0;
- P2DIR = ~BIT0; //only P2.0 is input
- P3SEL |= BIT4 | BIT5; //enable UART0
- P3DIR |= BIT4; //enable TXD0 as output
- P3DIR &= ~BIT5; //enable RXD0 as input
- P4SEL = 0;
- P4OUT = 0;
- P4DIR = BIT2 | BIT3; //only buzzer pins are outputs
- P6SEL = 0x80;
- P6OUT = 0;
- P6DIR = 0x00; // all output
- }
- /*//1...
- int main( void )
- {
- InitPorts();
- WDTCTL = WDTPW + WDTTMSEL;
- IE1=WDTIFG;
- P1DIR=BIT0+BIT6;
- P1OUT=BIT0;
- _EINT(); //enable interupts
- BCSCTL2=DIVS_2; //clock and interval
- while(1){}
- }
- */
- //2...
- int main( void )
- {
- InitPorts();
- WDTCTL = WDTPW + WDTHOLD;
- IE1=WDTIFG;
- P1DIR=BIT0+BIT6;
- P1OUT=BIT0;
- _EINT(); //enable interupts
- BCSCTL2=DIVS_3;
- while(1)
- {
- if((B1) == 0){
- WDTCTL = WDTPW + WDTTMSEL;
- }
- }
- }
- #pragma vector=WDT_VECTOR
- __interrupt void wdttimer(void)
- {
- P1OUT^=BIT0+BIT6;
- IFG1&=~WDTIFG; //czyszczenie flagi timera
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement