.file "main.c" .arch msp430g2553 .cpu 430 .mpy none .text .p2align 1,0 .global delay_ms .type delay_ms,@function /*********************** * Function `delay_ms' ***********************/ delay_ms: jmp .L6 .L4: mov #2666, r14 .L__delay__9: dec r14 jnz .L__delay__9 add #llo(-1), r15 .L6: cmp #0, r15 jne .L4 ret .Lfe1: .size delay_ms,.Lfe1-delay_ms ;; End of function .p2align 1,0 .global pad_read .type pad_read,@function /*********************** * Function `pad_read' ***********************/ pad_read: sub #2, r1 mov #800, &__TA0CTL mov #llo(-7936), &__TA0CCTL1 bis.b #1, &__IE1 mov.b @r15, r14 rla r14 rla r14 mov ports(r14), r14 bic.b 1(r15), @r14 mov.b @r15, r14 rla r14 rla r14 add #ports+2, r14 mov @r14, r14 bis.b 1(r15), @r14 mov #23063, &__WDTCTL bis #4, &__TA0CTL bis #216, r2 xor #4096, &__TA0CCTL1 mov &__TA0CCR1, @r1 mov #23168, &__WDTCTL mov.b @r15, r14 rla r14 rla r14 mov ports(r14), r14 bic.b 1(r15), @r14 mov.b @r15, r14 rla r14 rla r14 add #ports+2, r14 mov @r14, r14 bic.b 1(r15), @r14 bis #4, &__TA0CTL mov @r1, r15 add #2, r1 ret .Lfe2: .size pad_read,.Lfe2-pad_read ;; End of function .p2align 1,0 .global pad_read2 .type pad_read2,@function /*********************** * Function `pad_read2' ***********************/ pad_read2: mov r15, r14 mov #1000, &__TA0CCR0 mov.b @r15, r15 rla r15 rla r15 mov ports(r15), r15 bic.b 1(r14), @r15 mov.b @r14, r15 rla r15 rla r15 add #ports+2, r15 mov @r15, r15 bis.b 1(r14), @r15 mov #788, &__TA0CTL and #llo(-2), &__TA0CTL mov &__TA0CTL, r15 and #1, r15 jne .L12 .L11: add #1, r15 bit #1,&__TA0CTL jeq .L11 .L10: and #llo(-17), &__TA0CTL mov.b @r14, r13 rla r13 rla r13 mov ports(r13), r13 bic.b 1(r14), @r13 mov.b @r14, r13 rla r13 rla r13 add #ports+2, r13 mov @r13, r13 bic.b 1(r14), @r13 ret .L12: mov #0, r15 jmp .L10 .Lfe3: .size pad_read2,.Lfe3-pad_read2 ;; End of function .p2align 1,0 .global send .type send,@function /*********************** * Function `send' ***********************/ send: mov.b r15, &__UCA0TXBUF .L15: mov.b &__IFG2, r15 and #2, r15 jeq .L15 ret .Lfe4: .size send,.Lfe4-send ;; End of function .section .init9,"ax",@progbits .p2align 1,0 .global main .type main,@function /*********************** * Function `main' ***********************/ main: mov #23168, &__WDTCTL mov.b &__CALBC1_8MHZ, &__BCSCTL1 mov.b &__CALDCO_8MHZ, &__DCOCTL bis.b #32, &__BCSCTL3 bis.b #8, &__P1REN bis.b #1, &__P1DIR and.b #llo(-9), &__P1OUT and.b #llo(-9), &__P1REN bis.b #llo(-128), &__UCA0CTL1 mov.b #69, &__UCA0BR0 mov.b #0, &__UCA0BR1 mov.b #llo(-86), &__UCA0MCTL mov.b #6, &__P1SEL mov.b #6, &__P1SEL2 mov.b #0, &__P1OUT bis.b #65, &__P1DIR and.b #63, &__P2SEL mov.b #0, &__P2OUT mov.b #llo(-1), &__P2DIR and.b #llo(-2), &__UCA0CTL1 bis.b #1, &__IE2 eint bis.b #1, &__P1OUT mov #500, r15 call #delay_ms and.b #llo(-2), &__P1OUT mov #0, r11 mov #3, r10 .L31: cmp.b #0, &enable jeq .L19 .L34: bis.b #1, &__P1OUT .L32: cmp.b #0, &enable jeq .L33 .L25: mov r11, r15 rla r15 add #pads, r15 call #pad_read mov.b r11, &__UCA0TXBUF .L21: mov.b &__IFG2, r14 and #2, r14 jeq .L21 mov r15, r14 swpb r14 mov.b r14, &__UCA0TXBUF .L22: mov.b &__IFG2, r14 and #2, r14 jeq .L22 mov.b r15, &__UCA0TXBUF .L23: mov.b &__IFG2, r15 and #2, r15 jeq .L23 add #1, r11 cmp r11, r10 jhs .L32 mov #0, r11 cmp.b #0, &enable jne .L25 .L33: and.b #llo(-2), &__P1OUT cmp.b #0, &enable jne .L34 .L19: bis #16, r2 jmp .L31 .Lfe5: .size main,.Lfe5-main ;; End of function .text .p2align 1,0 .global uart_rx_isr .type uart_rx_isr,@function /*********************** * Interrupt Vector 7 Service Routine `uart_rx_isr' ***********************/ uart_rx_isr: .global __isr_7 __isr_7: mov.b &__UCA0RXBUF, &recvbyte cmp.b #0, &enable jne .L36 cmp.b #llo(-127), &recvbyte jeq .L38 .L35: reti .L36: cmp.b #llo(-126), &recvbyte jne .L35 mov.b #0, &enable reti .L38: mov.b #1, &enable bic #208, @r1 reti .Lfe6: .size uart_rx_isr,.Lfe6-uart_rx_isr ;; End of function .p2align 1,0 .global watchdog_isr .type watchdog_isr,@function /*********************** * Interrupt Vector 10 Service Routine `watchdog_isr' ***********************/ watchdog_isr: .global __isr_10 __isr_10: bic #208, @r1 reti .Lfe7: .size watchdog_isr,.Lfe7-watchdog_isr ;; End of function .global ports .data .p2align 1,0 .type ports,@object .size ports,8 ports: .word __P1SEL .word __P1SEL2 .word __P2SEL .word __P2SEL2 .global pads .p2align 1,0 .type pads,@object .size pads,8 pads: .byte 0 .byte 64 .byte 1 .byte 32 .byte 1 .byte 16 .byte 1 .byte 8 .comm debug,40,2 .comm recvbyte,1 .comm enable,1