This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BOOSTXL-PGA460: PGA460 - Q1 necessary initialization steps

Part Number: BOOSTXL-PGA460
Other Parts Discussed in Thread: PGA460, ENERGIA

Sir what all initialization steps necessary to start communicating with PGA460 - Q1. I don't have Launchpad so i am trying to communicate PGA460 with development board. Is there any slave address of PGA460 so that i can communicate using I2C protocol. 

  • Hi Puneet,

    we will get back to you in about a day regarding your queries.

    Regards,

    Vaibhav
  • Puneet,

    PGA460 does not use I2C protocol for communication.

    The PGA460 device provides multiple IO protocols to communicate with the master controller. The device provides a time-command interface and one-wire UART on the VPWR reference IO pin. It also provides both synchronous and asynchronous USART on the TXD, RXD, and SCLK pins.

    Please refer to the section 7.3.6 Interface Description in PGA460 datasheet for detailed explanation on the communication protocols TCI & USART.
  • Bharat,

    Thank you for correcting me... Now i am using asynchronous UART (TXD & RXD). I read the section 7.3.6 and programming commands as well...

    7.5.1 UART and USART Communication Examples
    The following are some examples of UART and USART communication:
    Example1 – Read register 0x1B, where PGA460 address is 0x0:
    Master to PGA460: 0x55, 0x09, 0x1B, 0xDB …
    PGA460 to master: … 0xdiag, 0xdata, 0xchecksum
    Example2 – Write register 0x40, data 0x80, where PGA460 address is 0x0:
    Master to PGA460: 0x55, 0x0A, 0x40, 0x80, 0x35
    PGA460 to master:No response, idle (0xFF)
    Example3 – Execute command 0 (Burst/Listen Preset1) to detect 1 object, where PGA460 address is 0x0:
    Master to PGA460: 0x55, 0x00, 0x01, 0xFE
    PGA460 to master: No response, idle (0xFF)
    Example4 – Execute command 5 (ultrasonic measurement result), where PGA460 address is 0x0, assuming
    previous execution of Example3 where the master has commanded PGA460 to search for one object:
    Master to PGA460: 0x55, 0x05, 0xFA …
    PGA460 to master: … 0xdiag , 0xtime_of_flight_in_us_[MSB],
    0xtime_of_flight_in_us_[LSB], 0xtime_object_width_in_us, 0xpeak_amplidute_in_LSB, 0xchecksum

    I am unable to put these commands in my code and unable to communicate with PGA460.. Can you tell me how to use these commands in code so that i can transmit and receive data.

  • Hi Puneet

    Please see below to get started on writing code yourself for PGA460. See here for the downloadable Energia library

    The downloadable software-collateral we offer for the PGA460 includes:

    • PGA460 Software Development Guide:
    • PGA460 Energia Library and Code Example:
    • Library:
      • PGA460_USSC.cpp/h: contains all the functions for UART, SPI, TCI, or OWU communication with a master controller.
    • Code Examples:
      • GetDistance.ino: demonstrates how to extract the echo distance, width, amplitude, echo data dump, and diagnostic results. You can see this demo in action in the PGA460 EVM training video #1.2 at time 4:44-5:25 here:
      • BusDemo.ino: demonstrates how to place up to eight PGA460 devices on a single UART/OWU bus, and report the first distance result of each. See an implementation example here:
    • Triangulation.ino: Two PGA460 devices on a single UART bus to demonstrate a basic law of cosines implementation of triangulation/tracking of an object. 

    The software development guide provides a pseudo code description of the basic requirements and implementation to run the PGA460 through i.e. the GetDistance.ino sketch.

    Hope this helps you get started.

    Regards,


    Vaibhav