Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
;*******************************************************************************
; MSP430x1xx Demo - Software Toggle P1.0
;
; Description; Toggle P1.0 by xor'ing P1.0 inside of a software loop.
; ACLK = n/a, MCLK = SMCLK = default DCO
;
; MSP430x2xx
; -----------------
; /|\| XIN|-
; | | |
; --|RST XOUT|-
; | |
; | P1.0|-->LED
;
; A. Dannenberg
; Texas Instruments, Inc
; January 2006
; Built with IAR Embedded Workbench Version: 3.40A
;*******************************************************************************
#include "msp430x20x1.h"
;-------------------------------------------------------------------------------
ORG 0FC00h ; Progam Start (1K Flash device)
;-------------------------------------------------------------------------------
RESET mov.w #0280h,SP ; Set stackpointer (128B RAM device)
StopWDT mov.w #WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog timer
SetupP1 bis.b #001h,&P1DIR ; Set P1.0 to output direction
;
Mainloop mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ;SET P1.0
call #tire
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ;SET P1.0
call #tire
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ;SET P1.0
call #tire
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ;SET P1.0
call #tire
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #001h,&P1OUT ; SET P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
mov.b #000h,&P1OUT ; clear P1.0
call #tochka
jmp Mainloop ; Again
;---------------------------------------
tochka ; Delay to R15
mov.w #2,R14
L mov.w #050000,R15
L1 dec.w R15 ; Decrement R15
jnz L1 ; Delay over?
dec.w R14
jnz L
ret
;
;---------------------------------------
tire mov.w #6,R14
K mov.w #050000,R15
K1 dec.w R15 ; Decrement R15
jnz K1 ; Delay over?
dec.w R14
jnz K
ret
;-------------------------------------------------------------------------------
; Interrupt Vectors
;-------------------------------------------------------------------------------
ORG 0FFFEh ; MSP430 RESET Vector
DW RESET ;
END