1)I have some basic doubts. How can i access each pins of PORTS on MSP430F135. Allthough i remember reading the PORTS to be bit addressable. The above task is imperative coz in i have got three output on the same port. when i try to output the first , the second and the third should not get affected.
2) the code below runs absolutely fine on the IAR debugger. I have an LED connected on P2.2. According to the code, it should toggle everytime the TRANSMIT routine is called. But it doesnt happen. I dont know where i am gng wrong.
Please advice on both issues.
;*******************************************************************************
.cdecls C,LIST,"msp430f1101.h"; Include device header file
;*******************************************************************************
.data ;defining variables
;*******************************************************************************
CLOCK .equ 020h ;P1.5 CLOCK
STROBE .equ 080h ;P1.7 STROBE
DATA .equ R4 ;contains a bye to be transfered serially
;*********************************************************************************
.text ;Program Start
;*******************************************************************************
RESET mov.w #200h,SP ; Initialize stackpointer
STOPWDT mov.w #WDTPW+WDTHOLD,&WDTCTL ; Stop WDT
CLEARP1 bic.b #000h,&P1OUT ; Clearing all the port pins
SETUPP1 mov.b #0E0h,&P1DIR ; CLOCK, STROBE, P1.6 as output
SETUPP2 mov.b #004h,&P2DIR ; P2.2 LED as output
SETUP mov.b #002h,&P1DIR ; P1.1 LED as output
mov.w #040h,DATA ; predefined data
REPEAT call #TRANSMIT
jmp REPEAT
;******************************************************************************
TRANSMIT ;shifting data out serially to 4094
;******************************************************************************
push.b DATA ; TOS = Save Data
mov.b #040h, R5
TX_loop mov.b R5,&P1OUT
CLOCK_1 bis.b #CLOCK,&P1OUT ; Clock Pulse On Period
CLOCK_0 bic.b #CLOCK,&P1OUT ; Clock Pulse Off Period
STROBE_1 bis.b #STROBE,&P1OUT ; Strobe Pulse On Period
STROBE_0 bic.b #STROBE,&P1OUT ; Strobe Pulse Off Period
xor.b #04h,&P2OUT
pop.b DATA ; Original data
ret ; Return from subroutine
***********************************************************************************
; Interrupt Vectors
;***********************************************************************************
.sect ".reset" ; MSP430 RESET Vector
.short RESET
.end