The AD5790 is a single 20-bit, voltage out Dac that operates from a bipolar supply up to 33V. Reference buffers are also provided on-chip The AD5790 accepts a positive reference input in the range of 5V to VDD – 2.5V and a negative reference input in the range of VSS + 2.5v to 0V. The AD5790 offers a relative accuracy of +/-2 LSB's max and operation is guaranteed monotonic with a -1 LSB to +3 LSB's DNL specification. The part uses a versatile 3-wire serial interface that operates at clock rates up to 35 MHz and is compatible with standard SPI®, QSPI™, MICROWIRE™, and DSP interface standards. The part incorporates a power-on reset circuit that ensures the DAC output powers up to 0V and in a known output impedance state and remains in this state until a valid write to the device takes place. The part provides a disable feature that places the output in a defined load state.
The goal of this project (Microcontroller No-OS) is to be able to provide reference projects for lower end processors, which can't run Linux, or aren't running a specific operating system, to help those customers using microcontrollers with ADI parts. Here you can find a generic driver which can be used as a base for any microcontroller platform and also specific drivers for Renesas platforms.
HW Platform(s):
The driver contains two parts:
The Communication Driver has a standard interface, so the AD5790 driver can be used exactly as it is provided.
There are three functions which are called by the AD5790 driver:
SPI driver architecture
The following functions are implemented in this version of AD5790 driver:
Function | Description |
---|---|
unsigned char AD5790_Init(void) | Initialize the communication with the device. |
void AD5790_EnableOutput(unsigned char state) | The part is placed in normal mode or its output is clamped to the ground. |
void AD5790_SetRegisterValue(unsigned char registerAddress, unsigned long registerValue, unsigned char bytesNumber) | Writes data into a register. |
unsigned long AD5790_GetRegisterValue(unsigned char registerAddress, unsigned char bytesNumber) | Reads the value of a register. |
void AD5790_SetDacValue(unsigned long value) | Writes to the DAC register. |
void AD5790_SoftInstruction(unsigned char instructionBit) | Asserts RESET, CLR and LDAC in a software manner. |
void AD5790_Setup(unsigned long setupWord) | Writes to Control Register. |
This section contains a description of the steps required to run the AD5790 demonstration project on a Renesas RL78G13 platform.
An EVAL-AD5790SDZ has to be interfaced with the Renesas Demonstration Kit (RDK) for RL78G13:
EVAL-AD5790SDZ J3 connector Pin SYNC (CS) → YRDKRL78G13 J11 connector Pin 1 EVAL-AD5790SDZ J3 connector Pin SDIN (MOSI) → YRDKRL78G13 J11 connector Pin 2 EVAL-AD5790SDZ J3 connector Pin SDO (MISO) → YRDKRL78G13 J11 connector Pin 3 EVAL-AD5790SDZ J3 connector Pin SCLK (SCLK) → YRDKRL78G13 J11 connector Pin 4 EVAL-AD5790SDZ J3 connector Pin DGND (DGND) → YRDKRL78G13 J11 connector Pin 5 EVAL-AD5790SDZ J3 connector Pin LDAC (LDAC) → YRDKRL78G13 J11 connector Pin 9 EVAL-AD5790SDZ J3 connector Pin CLR (CLR) → YRDKRL78G13 J11 connector Pin 10 EVAL-AD5790SDZ J3 connector Pin RESET (Reset) → YRDKRL78G13 J18 connector Pin 30
With the Applilet3 for RL78G13 tool the following peripherals have to be configured:
Choose to generate the Transmit/receive function for the CSI10 and configure the interface with the following settings:
Configure TM00 as an interval timer:
Disable the watchdog timer:
The reference project initializes the device, reads the parts internal registers, displays them and then generates a triangle signal.
This section presents the steps for developing a software application that will run on the Renesas Demo Kit for RL78G13 for controlling and monitoring the operation of the ADI part.
Two software applications have to be used: Applilet3 for RL78G13 (a tool that automatically generates device drivers for MCU peripheral functions) and IAR Embedded Workbench for Renesas RL78 (the integrated development environment).
This section contains a description of the steps required to run the AD5790 demonstration project on a Renesas RX62N platform.
An EVAL-AD5790EBZ board has to be interfaced with the Renesas Demonstration Kit (RDK) for RX62N:
EVAL-AD5790SDZ J3 connector Pin SYNC (CS) → YRDKRX62N J8 connector Pin 15 EVAL-AD5790SDZ J3 connector Pin SDIN (MOSI) → YRDKRX62N J8 connector Pin 19 EVAL-AD5790SDZ J3 connector Pin SDO (MISO) → YRDKRX62N J8 connector Pin 22 EVAL-AD5790SDZ J3 connector Pin SCLK (SCLK) → YRDKRX62N J8 connector Pin 20 EVAL-AD5790SDZ J3 connector Pin DGND (DGND) → YRDKRX62N J8 connector Pin 4 EVAL-AD5790SDZ J3 connector Pin LDAC (LDAC) → YRDKRX62N J8 connector Pin 17 EVAL-AD5790SDZ J3 connector Pin CLR (CLR) → YRDKRX62N J8 connector Pin 25 EVAL-AD5790SDZ J3 connector Pin RESET (Reset) → YRDKRX62N J8 connector Pin 26
The reference project: The reference project initializes the device, reads the parts internal registers, displays them and then generates a triangle signal.
This section presents the steps for developing a software application that will run on the Renesas Demo Kit for RX62N for controlling and monitoring the operation of the ADI part.
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !