• AVR Freaks

Hot!I2C Code example for ASM30

Author
Gee1
New Member
  • Total Posts : 6
  • Reward points : 0
  • Joined: 2018/02/19 05:36:49
  • Location: 0
  • Status: offline
2020/11/13 04:34:53 (permalink)
0

I2C Code example for ASM30

Hey,  i use an DSPIC33CK256MP505 and i want to initialice a TAS5558 via I2C.
 
my code is the following:
 
bset    I2C1CONL,#0    ; START            ; internal factory trim
            mov    #0x68,W0    ; (0x34 write)
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x12,W0
            mov    W0,I2C1TRN
            nop
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2    
            bset    I2C1CONL,#2    ; STOP
         
            call    wait_ss            ; Exit Shutdown
            bset    I2C1CONL,#0    ; START        
            mov    #0x68,W0    ; (0x34 write)
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x03,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0xA0,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2    
            bset    I2C1CONL,#2    ; STOP
            
            call    wait_ss
            bset    I2C1CONL,#0    ; START        
            mov    #0x68,W0    ; (0x34 write)
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0xD9,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2                
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x02,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x45,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2    
            bset    I2C1CONL,#2    ; STOP
            
            call    wait_ss
            bset    I2C1CONL,#0    ; START        
            mov    #0x68,W0    ; (0x34 write)
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0xE0,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x00,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2            
            mov    #0x04,W0
            mov    W0,I2C1TRN
            nop
            btsc    I2C1STAT,#14
            BRA $-2    
            bset    I2C1CONL,#2    ; STOP
 
 
but it dosnt work.. I2C itself is initialiced correctly (veryfied with osci)
 
whats wrong?
#1

1 Reply Related Threads

    ric
    Super Member
    • Total Posts : 29870
    • Reward points : 0
    • Joined: 2003/11/07 12:41:26
    • Location: Australia, Melbourne
    • Status: online
    Re: I2C Code example for ASM30 2020/11/13 04:39:32 (permalink)
    +1 (1)
    You should check if you received an ACK after each transmission. If the slave doesn't ACK the first byte, there's no point sending the rest.

    I also post at: PicForum
    Links to useful PIC information: http://picforum.ric323.co...opic.php?f=59&t=15
    NEW USERS: Posting images, links and code - workaround for restrictions.
    To get a useful answer, always state which PIC you are using!
    #2
    Jump to:
    © 2021 APG vNext Commercial Version 4.5