資料介紹
Table of Contents
AD7606 Mbed IIO Application
Introduction
This page gives an overview of using the ARM Mbed platform supported firmware example with Analog Devices AD7606 Evaluation board and SDP-K1 controller board. This example code leverage the ADI developed IIO (Industrial Input Output) ecosystem to evaluate the AD7606 family devices by providing a device debug and data capture support.
The overview of an entire system is shown below:
IIO oscilloscope is used as client application running on windows-os, which is ADI developed GUI for ADC data visualization and device debug. The interface used for communicating client application with firmware application (IIO device) is UART. The firmware application communicates with IIO device (AD7606) using ADI No-OS drivers and platform drivers low level software layers. SDP-K1 is used as controller board, on which IIO firmware application runs and using above software libraries, the IIO firmware communicates with AD7606 IIO device. The AD7606B eval board is used for development and testing of this application.
Useful links
Hardware Connections
SDP-K1:
- Connect the VIO_ADJUST jumper on the SDP-K1 board to 3.3V position to drive SDP-K1 GPIOs at 3.3V
EVAL-AD7606B-FMCZ:
- Make below jumper settings on the board. Refer EVAL-AD7606B-FMCZ User Manual for more details.
Arduino Connections:
The AD7606 device is configured in “Serial Software” mode in the firmware. AD7606 uses SPI communication for device register access and data capture.
SDP-K1 is powered through USB connection from the computer. SDP-K1 acts as a Serial device when connected to PC, which creates a COM Port to connect to IIO Oscilloscope GUI running on windows-os. The COM port assigned to a device can be seen through the device manager for windows based OS.
Software Downloads
Mbed Firmware
Latest firmware (Use below link):
Quick Start to use Mbed IIO Firmware
If you have some familiarity with the Mbed platform, the following is a basic list of steps required to start running the code, see below for more detail:
- Connect the AD7606 EVAL-board to the SDP-K1 controller board as specified in hardware connections section.
- Connect the SDP-K1 controller board to your computer over USB provided along with SDP-K1 board.
- Go to the link of the code provided above in the 'Downloads' section and import code into Mbed online compiler (Edit app_config.h file (defaults to AD7606B device) if evaluating any other device).
- Ensure SDP-K1 controller board is selected (top right of online-compiler page).
- Compile the code.
- After a successful compile a binary will be downloaded to your computer - store this on your drive.
- Drag and drop this binary to the USB drive hosted by your controller board.
Libiio: IIO Library
This library provides an abstracted library interface to communicate IIO device (AD7606) and IIO client application (IIO Oscilloscope) without worrying about the low level hardware details. Download and install below Libiio windows installer in your computer.
Libiio installer for Windows (Use below link):
IIO Oscilloscope (Client)
This is a GUI (Graphical User Interface) based IIO client application for data visualization and device configuration/debugging. The data from IIO devices (ADCs/DACs) is transmitted over Serial/Ethernet/USB link to IIO Oscilloscope client through the abstracted layer of “libiio”. Download and install below IIO Oscilloscope windows installer in your computer.
IIO Oscilloscope installer for Windows (Use below link):
Evaluating AD7606 Using IIO Ecosystem
Running IIO Oscilloscope (Client)
Open the IIO Oscilloscope application from start menu and configure the serial (UART) settings as shown below. Click on refresh button and AD7606 device should pop-up in IIO devices list.
Click 'Connect' and select the AD7606 device from the drop down menu list of 'Device Selection'. It should display below screen after selecting available device.
Configure/Access Device Attributes (Parameters)
The IIO Oscilloscope allows user to access and configure different device parameters, called as 'Device Attributes“. There are 2 types of attributes:
- Device Attributes (Global): Access/Configure common device parameters e.g. oversampling rate, operating mode
- Channel Attributes (Specific to channels): Access/Configure channel specific device parameters e.g. channel range, offset, calibration, open circuit detection, etc.
How to read and write attribute:
- To 'Read' an attribute, simply select the attribute from a list or press 'Read' button on left side.
- To 'Write' an attribute, write a attribute value in the 'value field' and press 'Write' button. The value to be written corresponds to expected bit-field for that parameter, specified in the datasheet. For example, below figure shows how to write a “Oversampling” value.
Using DMM Tab to Read DC Voltage on Input Channels
DMM tab can be used read the instantaneous voltage applied on analog input channels. Simply select the device and channels to read and press start button.
*Note: The voltage is just instantaneous, so it is not possible to get RMS AC voltage or averaged DC voltage. Also, when using DMM tab, it is not encouraged to use Data Capture or Debug tab as this could impact data capturing.
Data Capture from IIO Device
To capture the data from AD7606 IIO device, simply select the device and channels to read/capture data. The data is plotted as “ADC Raw Value” Vs “Number of Samples” and is just used for Visualization. The data is read as is from device without any processing. If user wants to process the data, it must be done externally by capturing data from the Serial link on controller board.
*Note: It is not encouraged to use DMM or Debug tab when capturing data as this could impact data capturing.
More info here: https://wiki.analog.com/resources/tools-software/product-support-software/data-capture-using-iio-app
Calibrating AD7606B/C Devices
ADC Gain Calibration:
ADC gain calibration can be done in 3 easy steps as mentioned below. The gain calibration needs to be done for selected gain filter register as specified in the datasheet (refer 'System Gain Calibration' section from the AD7606B/C datasheet). The gain calibration can be done for each channel depending upon the filter resistor placed in series with each channel analog input.
Reference: File: iio_ad7606.c, Function: get_chn_calibrate_adc_gain()
ADC Offset Calibration:
ADC offset calibration should only be done when ADC input is 0V. The purpose is to reduce any offset error from the input when analog input is at 0V level. The ADC offset calibration can be done for each input channel.
To perform ADC offset calibration, select the 'calibrate_adc_offset' attribute. It should automatically perform the calibration. Also, if 'Read' button is pressed, the calibration should happen one more time.
Reference: File: iio_ad7606.c, Function: get_chn_calibrate_adc_offset()
Open Circuit Detection on AD7606B Device
AD7606B device provides an open circuit detection feature for detecting the open circuit on each analog input channel of ADC.
There are 2 modes to detect open circuit on analog inputs (Refer AD7606B datasheet for more details):
- Manual Mode
- Auto Mode
Manual Mode Open Circuit Detect:
The manual open circuit detection needs 'Rpd' to be placed at analog input as shown in figure below. The firmware is written to perform the open circuit detection @50Kohm of Rpd value. The common mode change threshold has been defined as 15 ADC count in the firmware at above specified configurations (as specified in the datasheet).
Reference: File: iio_ad7606.c, Function: get_chn_open_circuit_detect_manual()
Auto Mode Open Circuit Detect:
The auto open circuit detection on each individual ADC channel can be done by performing 3 easy steps mentioned in below screenshot.
Reference: File: iio_ad7606.c, Function: get_chn_open_circuit_detect_auto()
Diagnostic Multiplexer on AD7606B/C Devices
Using diagnostic multiplexer on AD7606B/C devices, the internal analog inputs can be sampled to provide a diagnostic voltages and parameters on IIO client application such as reference voltage (vref), DLO voltage (ALDO/DLDO), temperature and drive voltage (vdrive).
*Note: The diagnostic mux control must operate when input range is +/-10V
Modifying Firmware
app_config.h
This file can be used to:
- Select the 'Active Device' to evaluate by changing '#define DEV_AD7606B' macro. Default active device is AD7606B.
- Configure the pin mapping of AD7606 w.r.t Arduino Header on Controller Board.
ad7606_user_config.c
This file defines the user configurations for the AD7606, such as SPI parameters (frequency, mode, etc) and other init parameters used by No-OS drivers to initialize AD7606 device (e.g. required GPIOs, software/hardware mode, etc). These are the parameters loaded into device when device is powered-up or power-cycled.
iio_ad7606.c
This file defines getter/setter functions for all the device and channel specific attributes (related to AD7606 devices) to read/write the device parameters. The majority of device specific functionality is present in this module.
No-OS Drivers for AD7606
The no-os drivers provide the high level abstracted layer for digital interface of AD7606 devices. The complete digital interface (to access memory map and perform data read) is done in integration with platform drivers.
The functionality related with no-os drivers is covered in below 2 files:
- ad7606.c
- ad7606.h
- 基于STM32的AD7606的數據采集例程 136次下載
- AD7606應用筆記
- AD7606 IBIS型號
- AD7606 IIO多通道同步采樣ADC Linux驅動程序
- AD7606 IBIS型號
- AD7606系列軟件型號
- AD7606參考代碼
- AD7606 Family Software Model
- AD7606系列評估板的用戶手冊免費下載 2次下載
- AD7606的參考程序和源文件及相關資料與資源說明 66次下載
- 針對上電時電源緩慢上升條件配置 AD7606/AD7607 4次下載
- AD7606_7606-6_7606-4 8次下載
- 基于AD7606同步采樣ADC的智能電網方案設計 45次下載
- AD7606中文電路描述 35次下載
- AD7606中文資料pdf 171次下載
- 【從0開始創建AWTK應用程序】創建應用程序并在模擬器運行 357次閱讀
- SEW-MOVIPRO啟動應用程序配置程序 606次閱讀
- PreEmptiveProtection:全面的移動應用程序保護 530次閱讀
- AN-2011: AD7606B:在軟件模式下啟用的高級特性和系統級優勢 3500次閱讀
- 怎么使用uboot引導應用程序? 1362次閱讀
- 聊聊PHP的web應用程序開發框架存在的漏洞有哪些 1562次閱讀
- DPU編譯應用程序的不同方法 1579次閱讀
- 淺談RAM 執行應用程序 3062次閱讀
- HarmonyOS應用程序Ability的作用 2391次閱讀
- 基于AD7606系列器件在電力線監測及保護產品設計中的應用 2421次閱讀
- 應用程序安全怎樣來提供保障 1146次閱讀
- ARM公司低調升級Mbed_為物聯網應用做準備 2728次閱讀
- ad7606與stm32連接電路介紹 1.8w次閱讀
- ad7606中文資料匯總(ad7606引腳圖及功能_內部結構及應用電路) 8.2w次閱讀
- mbed軟件開發平臺入門學習基礎 1.2w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1491次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 4次下載 | 免費
- 8基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537793次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多