All Projects → F4GOJ → AD9850SPI

F4GOJ / AD9850SPI

Licence: Unlicense license
AD9850 SPI library for arduino

Programming Languages

C++
36643 projects - #6 most used programming language

Projects that are alternatives of or similar to AD9850SPI

Arduino-USBMIDI
Allows a microcontroller, with native USB capabilities, to appear as a MIDI device over USB to a connected computer
Stars: ✭ 98 (+390%)
Mutual labels:  arduino-library
TimerInterrupt
This library enables you to use Interrupt from Hardware Timers on an Arduino, such as Nano, UNO, Mega, etc. It now supports 16 ISR-based timers, while consuming only 1 hardware Timer. Timers' interval is very long (ulong millisecs). The most important feature is they're ISR-based timers. Therefore, their executions are not blocked by bad-behavin…
Stars: ✭ 76 (+280%)
Mutual labels:  arduino-library
ArduBadge
ArduBadge gives you GitHub Badges for you Arduino Libraries. The badge shows the latest version available and custom installation instructions.
Stars: ✭ 24 (+20%)
Mutual labels:  arduino-library
miniboot
🏗️ An I2C bootloader for Arduino.
Stars: ✭ 62 (+210%)
Mutual labels:  arduino-library
scd30
arduino esp8266 ESP8266 SCD30 SCD-30 ESP32
Stars: ✭ 38 (+90%)
Mutual labels:  arduino-library
asysbus
Arduino System Bus
Stars: ✭ 23 (+15%)
Mutual labels:  arduino-library
GSMSim
GSM Library for SIMCOM Modules on Arduino.
Stars: ✭ 99 (+395%)
Mutual labels:  arduino-library
Adafruit-MLX90614-Library
Arduino library for the MLX90614 sensors in the Adafruit shop
Stars: ✭ 113 (+465%)
Mutual labels:  arduino-library
Adafruit CAP1188 Library
Arduino library for the Adafruit CAP1188 8-Channel Capacitive Touch Sensor Breakout
Stars: ✭ 16 (-20%)
Mutual labels:  arduino-library
WiFiEspAT
Arduino networking library. Standard Arduino WiFi networking API over ESP8266 or ESP32 AT commands.
Stars: ✭ 178 (+790%)
Mutual labels:  arduino-library
Arduino
🚀 Proyectos de todo tipo para arduino utilizando sus sensores y actuadores. 🤖
Stars: ✭ 27 (+35%)
Mutual labels:  arduino-library
PalatisSoftPWM
Software PWM library for Arduino
Stars: ✭ 16 (-20%)
Mutual labels:  arduino-library
SparkFun AutoDriver Arduino Library
Arduino library support for the SparkFun AutoDriver board based on the ST Micro L6470 stepper driver.
Stars: ✭ 14 (-30%)
Mutual labels:  arduino-library
MCP CAN lib
MCP_CAN Library
Stars: ✭ 567 (+2735%)
Mutual labels:  arduino-library
sbus
Arduino and CMake library for communicating with SBUS receivers and servos.
Stars: ✭ 277 (+1285%)
Mutual labels:  arduino-library
ArduZ80
The first Z80 emulation library for Arduino
Stars: ✭ 44 (+120%)
Mutual labels:  arduino-library
Arduino-GPIO
General Purpose Input/Output (GPIO) library for Arduino
Stars: ✭ 43 (+115%)
Mutual labels:  arduino-library
Adafruit AMG88xx
AMG88xx Grid-EYE
Stars: ✭ 85 (+325%)
Mutual labels:  arduino-library
Adafruit MPL3115A2 Library
Arduino library for the MPL3115A2 sensors in the Adafruit shop
Stars: ✭ 41 (+105%)
Mutual labels:  arduino-library
Seeed Arduino Sketchbook
This library provides many Wio terminal demos and some other demo for seeed's product.
Stars: ✭ 64 (+220%)
Mutual labels:  arduino-library

Arduino SPI library for AD9850

F4GOJ Christophe [email protected]

August 2014

Upgrade to SPI F4GOH Anthony [email protected]

This library uses the Serial Peripheral Interface (SPI) to accelerate the update of the AD9850 from 700µs in software serial to 90µs (54µs for the deltaphase calculation and 36µs for the transfert)

AD9850 datasheet at http://www.analog.com/static/imported-files/data_sheets/AD9850.pdf

Use this library freely.

Installation

To use the AD9850SPI library:

  • Go to https://github.com/F4GOJ/AD9850SPI, click the Download ZIP button and save the ZIP file to a convenient location on your PC.
  • Uncompress the downloaded file. This will result in a folder containing all the files for the library, that has a name that includes the branch name, usually AD9850SPI-master.
  • Rename the folder to AD9850SPI.
  • Copy the renamed folder to the Arduino sketchbook\libraries folder.

Usage notes

The AD9850SPI library instantiates a DDS object, the user does not need to do this.

To use the AD9850SPI library, the SPI library must also be included.

#include <AD9850SPI.h> //http://github.com/F4GOJ/AD9850SPI
#include <SPI.h>       //http://arduino.cc/en/Reference/SPI (included with Arduino IDE)

Hardware connections :

ad9850ad9850_2

  • W_CLK -> D13 arduino UNO/NANO, D52 MEGA
  • FQ_UD -> any pin except 10 and 12 UNO/NANO, 50 and 53 MEGA
  • DATA/D7 -> D11 arduino UNO/NANO, D51 MEGA
  • RESET -> any pin except 10 and 12 UNO/NANO, 50 and 53 MEGA

Functions :

begin(int w_clk_pin, int fq_ud_pin, int reset_pin)

Description

Initialize the output pins and master reset the AD9850

Syntax

DDS.begin(w_clk, fq_ud, reset);

Parameters

w_clk : SPI SCK output pin (13 on a UNO/NANO, 52 on a MEGA) (int)
fq_ud : Frequency update pin, any pin except 10 and 12 UNO/NANO, 50 and 53 MEGA. (int)
reset : Reset output pin, any pin except 10 and 12 UNO/NANO, 50 and 53 MEGA. (int)

Returns

None.

Example
void setup(){
 DDS.begin(13, 8, 9);
}

calibrate(double trim_frequency)

Description

Compensation of crystal oscillator frequency.
Can be used at any time after initialization.

Syntax

DDS.calibrate(trim_freq);

Parameters

trim_freq : Adjust around 125000000 to match the real crystal oscillator frequency. (double)

Returns

None.

Example
void setup(){
 DDS.begin(13, 8, 9);
}

void loop(){
 DDS.calibrate(124999000);
}

setfreq(double frequency, int phase)

Description

Sets the output frequency of the AD9850 and the phase of the signal.

Syntax

DDS.setfreq(frequency, phase);

Parameters

frequency : Output frequency in Hz. (double)
phase : Sets the phase of the output signal, coded on 5 bits allows 32 phase steps of 11,25° each. (int)

Returns

None.

Example
double frequency = 10000000;
int phase = 0;
DDS.setfreq(frequency, phase);

down()

Description

Power down mode reducing the dissipated power from 380mW to 30mW at 5V

Syntax

DDS.down();

Parameters

None.

Returns

None.

Example
DDS.down();

up()

Description

Wakes-up the AD9850 from power down mode.

Syntax

DDS.up();

Parameters

None.

Returns

None.

Example
DDS.down(); // Entering power down mode

// some code doing something

...

DDS.up(); // WAKE-UP !!! :)
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].