Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
resources:tools-software:product-support-software:ltc268x [27 Dec 2022 09:26] Janani Sunilresources:tools-software:product-support-software:ltc268x [27 Dec 2022 11:05] (current) – [LTC268X Mbed Firmware] Mahesh Phalke
Line 1: Line 1:
-====== LTC268X Console Example======+====== LTC268X Console Application======
  
 ===== Introduction ===== ===== Introduction =====
  
-The LTC2686/8 are  8/16-channel, 16-bit, ±15 V digital-to-analog converters (DAC) with an integrated precision reference. The LTC268X Mbed example software can be used as a starting point for developing your own code for Analog Devices DC2873A-B or DC2904A board in your own environment utilizing the benefits of the Mbed platform. This guide will focus interfacing the [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/DC2873A.html | DC2873A-B]] or [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/DC2904A.html | DC2904A-B]] evaluation board with Analog Devices [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/sdp-k1.html | SDP-K1]] controller board or any an MBED-Enabled board.+The LTC2686/8 are 8/16-channel, 16-bit, ±15 V digital-to-analog converters (DAC) with an integrated precision reference. The LTC268X Mbed example software can be used as a starting point for developing your own code for Analog Devices DC2873A-B or DC2904A board in your own environment utilizing the benefits of the Mbed platform. This guide will focus interfacing the [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/DC2873A.html | DC2873A-B]] or [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/DC2904A.html | DC2904A-B]] evaluation board with Analog Devices [[adi>en/design-center/evaluation-hardware-and-software/evaluation-boards-kits/sdp-k1.html | SDP-K1]] controller board or any an MBED-Enabled board.
  
 The firmware example comprises 3 layers of software (from top to bottom): Console Application Layer, Device No-OS Layer and Platform Drivers (Mbed-OS) layer. The firmware example comprises 3 layers of software (from top to bottom): Console Application Layer, Device No-OS Layer and Platform Drivers (Mbed-OS) layer.
 {{ :resources:tools-software:product-support-software:ltc2688_software_layers.jpg?200 |}} {{ :resources:tools-software:product-support-software:ltc2688_software_layers.jpg?200 |}}
  
-The application layer uses the ADI Console Libraries to create console based User Interactive (UI). The middle layer of No-OS device library have device specific APIs to interface with LTC2686/8 devices. These APIs allows direct access to device register map in order to read/write device registers. The bottom layer of Platform Drivers is responsible for Low Level Interface. The platform drivers uses mbed-os libraries to access low level peripheral (like GPIOs, SPI, I2C, etc). The devices from LTC2686/8 family use SPI communication interfaces respectively.+The application layer uses the ADI Console Libraries to create console-based User Interactive (UI). The middle layer of No-OS device library has device specific APIs to interface with LTC2686/8 devices. These APIs allows direct access to device register map in order to read/write device registers. The bottom layer of Platform Drivers is responsible for Low Level Interface. The platform drivers use mbed-os libraries to access low level peripheral (like GPIOs, SPI, I2C, etc). The devices from LTC2686/8 family use SPI communication interfaces respectively.
  
-At this time Analog Devices supports Mbed code development only on the [[https://www.keil.arm.com/mbed/|Keil Studio Cloud]]. See [[https://developer.arm.com/documentation/102497/1-5/Prerequisites/Access-Keil-Studio | here]] for instructions on setting up an account and using the Keil Studio. This guide focuses on the SDP-K1, connected to the DC2873A-B or DC2904A-B board, but it should be general enough to cover any compatible controller board (the controller board should be Mbed-enabled, and expose at least SPI or I2C and some GPIO's). The Mbed Platform simplifies the overall software development process by providing the low level driver support. This reduces the hardware dependency as any Mbed enabled board can be used with same firmware with little modifications (changing a pin mapping).+At this time Analog Devices supports Mbed code development only on the [[https://www.keil.arm.com/mbed/|Keil Studio Cloud]]. See [[https://developer.arm.com/documentation/102497/1-5/Prerequisites/Access-Keil-Studio | here]] for instructions on setting up an account and using the Keil Studio. This guide focuses on the SDP-K1, connected to the DC2873A-B or DC2904A-B board, but it should be general enough to cover any compatible controller board (the controller board should be Mbed-enabled, and expose at least SPI or I2C and some GPIO's). The Mbed Platform simplifies the overall software development process by providing the low-level driver support. This reduces the hardware dependency as any Mbed enabled board can be used with same firmware with little modifications (changing a pin mapping).
  
 The software described below allows for an Mbed enabled controller board to be connected with an Analog Devices evaluation board. Unmodified, the code will communicate over any serial terminal emulator (CoolTerm, putty, etc) using the UART provided by the controller board over USB. The software described below allows for an Mbed enabled controller board to be connected with an Analog Devices evaluation board. Unmodified, the code will communicate over any serial terminal emulator (CoolTerm, putty, etc) using the UART provided by the controller board over USB.
  
-===== Interface Diagram ===== +====== Useful Links ====== 
-{{ :resources:tools-software:product-support-software:ltc2688_interface_diagram.jpg?900 |}} +{{section>resources/tools-software/product-support-software/useful_links#Useful Link&showfooter=nofooter}} 
-The DC2873A-B/DC2904A-B evaluation board is connected to SDP-K1 using the Arduino Headers and jumper wiresThe DC2873A-B/DC2904A-B evaluation board VCC and IOVCC can be can be powered-up through a SDP-K1 USB supply or from external DC supply using the turrets connection. The SDP-K1 is connected to PC through an USB cable. The firmware (binary executable) can be loaded into SDP-K1 board through this USB interface from the PC. The SDP-K1 acts as a Serial Device (UART) and firmware loaded into it interacts with any serial terminal (like Teraterm, Putty, Coolterm, etc) by configuring terminal for proper serial settings (COM Port, Baud Rate, data bits, etc).+  * [[adi>en/products/ltc2686.html|LTC2686]] 
 +  * [[adi>en/products/ltc2688.html|LTC2688]]
  
 ===== Hardware Connection ===== ===== Hardware Connection =====
Line 42: Line 43:
 | GND      |  GND | | GND      |  GND |
  
-====== Useful Links ====== +===== Interface Diagram ===== 
-[[https://ide.mbed.com/compiler|Online Compiler Mbed]] +{{ :resources:tools-software:product-support-software:ltc2688_interface_diagram.jpg?900 |}} 
- +The DC2873A-B/DC2904A-B evaluation board is connected to SDP-K1 using the Arduino Headers and jumper wires. The DC2873A-B/DC2904A-B evaluation board VCC and IOVCC can be powered-up through a SDP-K1 USB supply or from external DC supply using the turrets connectionThe SDP-K1 is connected to PC through an USB cableThe firmware (binary executable) can be loaded into SDP-K1 board through this USB interface from the PCThe SDP-K1 acts as a Serial Device (UART) and firmware loaded into it interacts with any serial terminal (like Teraterm, Putty, Coolterm, etc) by configuring terminal for proper serial settings (COM Port, Baud Rate, data bits, etc).
-[[https://os.mbed.com/platforms/SDP_K1/|SDP-K1 on Mbed]] +
- +
-[[https://os.mbed.com/teams/AnalogDevices/code/|ADI's code on Mbed]] +
  
 ===== LTC268X Mbed Firmware ===== ===== LTC268X Mbed Firmware =====
 +For developing firmware code for controller boards on the Mbed platform visit the link below.
  
-==== Downloads ====+<WRAP round download> 
 +Source code is hosted here: 
 +  * [[repo>precision-converters-firmware]]
  
-<WRAP round download> +Build Guide for Precision Converters MBED firmware (Use below link): 
-Latest firmware (Use below link): +  * [[:resources:tools-software:product-support-software:pcg-fw-mbed-build-guide|Precision Converters MBED Firmware]] 
-  * [[https://os.mbed.com/teams/AnalogDevices/code/LTC2688/ LTC268X Mbed Firmware Example]]+
 </WRAP> </WRAP>
  
Line 66: Line 65:
   * Connect all the power supplies to the evaluation board as instructed in the hardware connection section.   * Connect all the power supplies to the evaluation board as instructed in the hardware connection section.
   * Connect the controller board to your computer over USB. (Make sure that the VIO_ADJUST is set to 3.3 volts)   * Connect the controller board to your computer over USB. (Make sure that the VIO_ADJUST is set to 3.3 volts)
-  * Go to the link of the code provided above in the 'Downloads' section+  * Go to the [[:resources:tools-software:product-support-software:pcg-fw-mbed-build-guide|link]] provided above in the 'Build Guide' section to import and build firmware in Keil Studio. For more details visit this [[https://developer.arm.com/documentation/102497/1-5/Create-or-import-a-project/Import-an-Mbed-project-from-a-URL | page]]
-  * Select the "Import into Keil Studio" option under the "Repository toolbox" section. Wait for Keil Studio to import the firmware into the work space. For more details visit this [[https://developer.arm.com/documentation/102497/1-5/Create-or-import-a-project/Import-an-Mbed-project-from-a-URL | page ]]+
   * Ensure your controller board is selected (top right of online-compiler page)   * Ensure your controller board is selected (top right of online-compiler page)
   * Compile the code.   * Compile the code.
Line 79: Line 77:
  
 ===== Using the Software ===== ===== Using the Software =====
-The firmware is delivered as a basic, text-based user-interface that operates through a UART on the controller board using the same USB cable that is used to flash the firmware to the boards. Any terminal-emulator should work, but it is not possible for Analog Devices to test every one. It is necessary to connect a serial terminal-emulator to interact with the running firmware.+The firmware is delivered as a basic, text-based user-interface that operates through a UART on the controller board using the same USB cable that is used to flash the firmware to the boards. Any terminal-emulator should work, but it is not possible for Analog Devices to test everyone. It is necessary to connect a serial terminal-emulator to interact with the running firmware.
  
 Here [[https://osdn.net/projects/ttssh2/wiki/TeraTerm|TeraTerm]] is used as an example, Analog Devices does not endorse any particular program for this, but TeraTerm works well and is made freely available, other terminals such as CoolTerm, or PuTTY will work.  Here [[https://osdn.net/projects/ttssh2/wiki/TeraTerm|TeraTerm]] is used as an example, Analog Devices does not endorse any particular program for this, but TeraTerm works well and is made freely available, other terminals such as CoolTerm, or PuTTY will work. 
Line 88: Line 86:
 {{ :resources:tools-software:product-support-software:ltc2688_main_menu.jpg?nolink&600 |}} {{ :resources:tools-software:product-support-software:ltc2688_main_menu.jpg?nolink&600 |}}
  
-The software is designed to be straight forward to useand requires little explanation. The main menu provide two options:+The software is designed to be straight forward to use and requires little explanation. The main menu provides two options:
   - DAC Configuration: This option lets to configure various DAC parameters such as active channel, span and toggle/dither selection.   - DAC Configuration: This option lets to configure various DAC parameters such as active channel, span and toggle/dither selection.
   - DAC Data Operation: This option lets you set the output voltage for DAC channels.   - DAC Data Operation: This option lets you set the output voltage for DAC channels.
resources/tools-software/product-support-software/ltc268x.txt · Last modified: 27 Dec 2022 11:05 by Mahesh Phalke