Spi mode simulator logic analyzer

Thread Starter

RJ_QWE

Joined Mar 24, 2011
1
HELLO EVERYONE

I AM TRYING TO WRITE A PROGRAM FOR PIC18F6520 TO FEED THE DATA IN AD9954 (DDS). I HAVE USED SPI TRANSFER MODE.

WHEN I USE DEBUGGER AS MPLAB SIM AND SEE THE LOGIC ANALYZER OUTPUT FOR SDO PORT AND CLK PORT NOTHING COMES OUT.

PLEASE HELP ME.
HERE IS MY PROGRAM

Rich (BB code):
    LIST P=18F6520        ;directive to define processor
    #include <P18F6520.INC>    ;processor specific variable definitions

;******************************************************************************
;Configuration bits

 CONFIG OSC = EC
 CONFIG OSCS = OFF
 CONFIG WDT = OFF
 CONFIG LVP = OFF
 CONFIG DEBUG = ON

;******************************************************************************
;Variable definitions
; These variables are only needed if low priority interrupts are used. 
; More variables may be needed to store other special function registers used
; in the interrupt routines.

        CBLOCK    0x060
        WREG_TEMP    ;variable used for context saving 
        STATUS_TEMP    ;variable used for context saving
        BSR_TEMP    ;variable used for context saving
        ENDC

        CBLOCK    0x000
        EXAMPLE        ;example of a variable in access RAM
        ENDC

;******************************************************************************
;EEPROM data
; Data to be programmed into the Data EEPROM is defined here

        ORG    0xf00000

        DE    "Test Data",0,1,2,3,4,5

;******************************************************************************
;Reset vector
; This code will start executing when a reset occurs.

        ORG    0x0000

        goto    Main        ;go to start of main code


;******************************************************************************
;Start of main program

Main:

X EQU 0X07

 clrf PIR1
 
 MOVLW 0X08
 MOVWF PIE1
 
 MOVLW 0X10
 MOVWF TRISC

 MOVLW 0X00
 MOVWF SSPSTAT

 MOVLW 0X20
 MOVWF SSPCON1
 ;---------------------------------------------------------------- 

 movlw 0x00                  
 movwf SSPBUF                
 call CHECK                  
 
 movlw 0x00                   
 movwf SSPBUF                 
 call CHECK 
 
 movlw 0x00                    
 movwf SSPBUF                
 call CHECK 
 
 movlw 0x22                   
 movwf SSPBUF                
 call CHECK 
 
 movlw 0x00                    
 movwf SSPBUF                 
 call CHECK
 
;--------------------------------------------
 
 movlw 0x01                   
 movwf SSPBUF                 
 CALL CHECK                   
 
 movlw 0x00                   
 movwf SSPBUF                 
 call CHECK 
 
 movlw 0x00                    
 movwf SSPBUF                  
 call CHECK 
 
 movlw 0x00                    
 movwf SSPBUF                 
 call CHECK 
  
;----------------------------------------------------------------


 movlw 0x04                    
 movwf SSPBUF                  
 call CHECK                    
 
 movlw 0x33                   
 movwf SSPBUF                 
 call CHECK 
 
 movlw 0x33                  
 movwf SSPBUF                 
 call CHECK 
 
 movlw 0x33                    
 movwf SSPBUF                  
 call CHECK 
 
 movlw 0x33                    
 movwf SSPBUF                  
 call CHECK 
;----------------------------------------------------------------
 CALL DELAY1
 BSF PORTC,7
 CALL DELAY1
 BCF PORTC,7
 CALL DELAY1
 
FIN
 GOTO FIN
 
  ;*******************SPI output subroutine***********************
CHECK 
 BTFSS PIR1,3                
 BRA CHECK                   
 BCF PIR1,3                  
 RETURN          
  
  ;*******************DELAY subroutine***********************
DELAY1
 MOVLW D'05'
 MOVWF X
DELAY2     
 DECFSZ X,F                
 BRA DELAY2                   
 RETURN         
;---------------------------------------------s


;******************************************************************************
;End of program

        END
 
Last edited by a moderator:
Top