Member #369860

Member Since: October 15, 2012

Country: United States

  • I want to read and write registers of L6470. Do i need to make the Flag pin high or low? another question is i cannot read any register , i cannot read signal no MISO line ? any suggestions?

  • I am using SPi bus in the following way to read and write L6470 registers. it would be nice if someone could tell me what mistake i am doing. I cannot get signal on SDO pin when i try to read any register

    void spic_init_config_L6470() { PORTC.DIRSET = SPIC_CS ; PORTC.DIRSET = SPIC_MOSI ; PORTC.DIRSET = SPIC_SCK ;
    // Configuration of SPI bus for port C
    SPIC_CTRL |= SPI_ENABLE_bm |SPI_MASTER_bm ; // Set Enable bit in control register using bit mask and SPI in master mode SPIC_CTRL |= SPI_MODE_3_gc; // Set SPI mode. //SPIC_CTRL |= SPI_PRESCALER_DIV4_gc; // Choosing the freq, we have chosen the max freq

    //SPIC_CTRL |= SPI_PRESCALER_DIV16_gc;                           // Choosing the freq, we have chosen the max freq
    SPIC_CTRL |= SPI_PRESCALER_DIV64_gc;                           // Choosing the freq, we have chosen the max freq
    //SPIC_CTRL |= SPI_CLK2X_bm;                                    // Doubling the SPI speed (SCK freq) in Master Mode      
    SPIC_INTCTRL |= SPI_INTLVL_OFF_gc ;                           // Disabling the interrupt 
    SPIC_STATUS  |=0;  


    dSPIN_rx_data =dSPIN_Get_Param(dSPIN_ACC);

    uint32_t dSPIN_Get_Param(dSPIN_Registers_TypeDef param) { uint32_t temp = 0; uint32_t rx = 0;

    /* Send GetParam operation code to dSPIN */
    temp = dSPIN_Write_Byte(dSPIN_GET_PARAM | param);         // param is the respective register address listed in table 12 of data sheet 
    /* MSB which should be 0 */
    temp = temp 
  • I am using L6470 chip and trying to read and write any register.if i want to write ACC register, i need to send three bytes. First byte is the command byte and then following are two bytes to write the value on register. My question is do i need to make the chip select pin high after i write each byte ? or i should write all three bytes and then make the chip select pin high? i use actually both ways and tried to write the value and then i tried to read it , i could not get any signal on SDO line. I can only see CS.CK and MOSI pins. I am using Atxmega 1283

No public wish lists :(