![]() |
Linduino
1.3.0
Linear Technology Arduino-Compatible Demonstration Board
|
Linear Technology DC2197 Demonstration Board. More...
Linear Technology DC2197 Demonstration Board.
LTC2645 Quad 12-/10-/8-Bit PWM to VOUT DACs with 10ppm/C Reference
NOTES Setup: Set the terminal baud rate to 115200 and select the newline terminator. Equipment required is a precision voltage source (null box) and a precision voltmeter (to monitor voltage source). No external power supply is required. Ensure JP1 is installed in the default position from the factory. USER INPUT DATA FORMAT: decimal : 1024 hex : 0x400 octal : 02000 (leading 0 "zero") binary : B10000000000 float : 1024.0
http://www.linear.com/product/LTC2645
http://www.linear.com/product/LTC2645
Copyright 2018(c) Analog Devices, Inc.
All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Definition in file DC2197.ino.
Go to the source code of this file.
Functions | |
static void | print_title () |
Prints the title block when program first starts. More... | |
static void | print_prompt () |
static void | init_16_bit_PWM () |
Initializes Pin 9 and 10 for 16-bit PWM. More... | |
static void | pwm_16_bit (uint8_t pin, uint16_t duty) |
Sets duty cycle for 16-bit PWM. More... | |
static void | menu_1_select_dac (int16_t *selected_dac) |
static void | menu_2_set_duty (int8_t selected_dac) |
Sets the duty cycle for the DAC. More... | |
static uint16_t | LTC2645_voltage_to_pwm_code (float dac_voltage, float fullScaleVoltage, int8_t pwmBitResolution) |
Calculate a LTC2645 duty code given the desired output voltage. More... | |
static void | python_program () |
Used to interact with the corresponding python program. More... | |
static int16_t | prompt_voltage_or_code () |
Prompt user to enter a voltage or digital code to send to DAC. More... | |
static uint16_t | get_voltage (float fullScaleVoltage, int8_t pwmBitResolution) |
Get voltage from user input, calculate DAC code based on full scale voltage and PWM bit resolution. More... | |
static uint16_t | get_code () |
Get code to send to DAC directly, in decimal, hex, or binary. More... | |
static void | test () |
static void | setup () |
Initialize Linduino. More... | |
static void | loop () |
Repeats Linduino loop. More... | |
static void | print_prompt (int16_t selected_dac) |
Prints main menu. More... | |
static void | menu_1_select_dac (int8_t *selected_dac) |
Select which DAC to operate on. More... | |
Enumerations | |
enum | { PROMPT_VOLTAGE = 0, PROMPT_CODE = 1 } |
Used to keep track to print voltage or print code. More... | |
Variables | |
const uint8_t | DAC_A = 9 |
const uint8_t | DAC_B = 10 |
const uint8_t | DAC_C = 5 |
const uint8_t | DAC_D = 6 |
static float | fullScale = 2.5 |
static float | percentDutyCycle [4] = {0.0,0.0,0.0,0.0} |
Full Scale Voltage. More... | |
|
static |
Get code to send to DAC directly, in decimal, hex, or binary.
Definition at line 374 of file DC2197.ino.
|
static |
Get voltage from user input, calculate DAC code based on full scale voltage and PWM bit resolution.
Definition at line 360 of file DC2197.ino.
|
static |
Initializes Pin 9 and 10 for 16-bit PWM.
Definition at line 202 of file DC2197.ino.
|
static |
Repeats Linduino loop.
Definition at line 136 of file DC2197.ino.
|
static |
Calculate a LTC2645 duty code given the desired output voltage.
Definition at line 327 of file DC2197.ino.
|
static |
|
static |
Select which DAC to operate on.
Definition at line 243 of file DC2197.ino.
|
static |
Sets the duty cycle for the DAC.
Definition at line 254 of file DC2197.ino.
|
static |
|
static |
Prints main menu.
Definition at line 186 of file DC2197.ino.
|
static |
Prints the title block when program first starts.
Definition at line 170 of file DC2197.ino.
|
static |
Prompt user to enter a voltage or digital code to send to DAC.
Definition at line 343 of file DC2197.ino.
|
static |
Sets duty cycle for 16-bit PWM.
Definition at line 234 of file DC2197.ino.
|
static |
Used to interact with the corresponding python program.
Accepts Serial strings to control the DAC output i.e.: Set DAC A (16 bit pwm) to 50% duty cycle -> 32767A
Definition at line 290 of file DC2197.ino.
|
static |
Initialize Linduino.
Definition at line 106 of file DC2197.ino.
|
static |
Definition at line 387 of file DC2197.ino.
anonymous enum |
Used to keep track to print voltage or print code.
Enumerator | |
---|---|
PROMPT_VOLTAGE | 0 |
PROMPT_CODE | 1 |
Definition at line 98 of file DC2197.ino.
const uint8_t DAC_A = 9 |
Definition at line 73 of file DC2197.ino.
const uint8_t DAC_B = 10 |
Definition at line 74 of file DC2197.ino.
const uint8_t DAC_C = 5 |
Definition at line 75 of file DC2197.ino.
const uint8_t DAC_D = 6 |
Definition at line 76 of file DC2197.ino.
|
static |
Definition at line 94 of file DC2197.ino.
|
static |
Full Scale Voltage.
Definition at line 95 of file DC2197.ino.