North
W5HN
Texas
NTMS
Microwave
Society
An Arduino Controlled
1 Hz to 60 MHz Signal Generator
Greg McIntire, AA5C
AA5C@arrl.net
WWW.NTMS.ORG 1
North
W5HN
Texas
Objectives NTMS
Microwave
Society
• Build a standalone 60 MHz signal generator
based on the DDS-60 board.
• Originally controlled the DDS-60 via a PC
parallel printer port
– Not a standalone solution
– Readily available software was written for XP and
wouldn’t run in compatibility mode on the newer
operating systems
WWW.NTMS.ORG 2
North
W5HN
Texas
DDS-60 NTMS
Microwave
Society
• Originally designed for the QRP community
• http://midnightdesignsolutions.com/dds60/index.
html
• Based on the Analog Devices AD9851 DDS chip
• Current price is $45 plus shipping
WWW.NTMS.ORG 3
North
W5HN
Texas
DDS-60 Schematic NTMS
Microwave
Society
WWW.NTMS.ORG 4
North
W5HN
Texas
DDS-60 Back Side NTMS
Microwave
Society
AD8008 Output Amp 30 MHz Reference Crystal
WWW.NTMS.ORG 5
North
W5HN
Texas
DDS-60 Top Side NTMS
Microwave
Society
Filter
AD9851
WWW.NTMS.ORG 6
North
W5HN
Texas
Analog Devices AD9851 DDS NTMS
Microwave
Society
• 180 MHz Clock Rate with Selectable 6
Reference Clock
• Multiplier
• On-Chip High Performance 10-Bit
DAC and High Speed
• Comparator with Hysteresis
• SFDR >43 dB @ 70 MHz AOUT
• 32-Bit Frequency Tuning Word
• Simplifi ed Control Interface: Parallel
or Serial
• Asynchronous Loading Format
• 5-Bit Phase Modulation and Offset
Capability
• Comparator Jitter <80 ps p-p @ 20
MHz
• 2.7 V to 5.25 V Single-Supply
Operation
• Low Power: 555 mW @ 180 MHz
• Power-Down Function, 4 mW @ 2.7 V
• Ultrasmall 28-Lead SSOP Packaging
WWW.NTMS.ORG 7
North
W5HN
Texas
Caution NTMS
Microwave
Society
• Older DDS-60 documentation noted using
supply voltages up to 16 VDC.
– AD8008 op amp is supplied directly from the +Vin line
– AD8008 op amp maximum supply voltage is 12 VDC
– They blow with 13.8 VDC
– Recommend using a 9 VDC supply.
WWW.NTMS.ORG 8
North
W5HN
Arduino Uno Board Texas
NTMS
Microwave
Society
WWW.NTMS.ORG 9
North
W5HN
Texas
Atmel ATMega328P NTMS
Microwave
Society
• High Performance, Low Power Atmel® AVR® 8-Bit
Microcontroller Family
• Advanced RISC Architecture
– 131 Powerful Instructions – Most Single Clock Cycle
Execution
– 32 x 8 General Purpose Working Registers
– Fully Static Operation
– Up to 20 MIPS Throughput at 20MHz
– On-chip 2-cycle Multiplier
WWW.NTMS.ORG 10
North
W5HN
Texas
ATMega328P Memory NTMS
Microwave
Society
• 32KBytes of In-System Self-Programmable Flash
program memory
• 1KBytes EEPROM
• 2KBytes Internal SRAM
• Write/Erase Cycles: 10,000 Flash/100,000 EEPROM
• Data retention: 20 years at 85C/100 years at 25 C
• Optional Boot Code Section with Independent Lock Bits
– In-System Programming by On-chip Boot Program
– True Read-While-Write Operation
• Programming Lock for Software Security
WWW.NTMS.ORG 11
North
W5HN
Texas
ATMega328P Peripheral Features NTMS
Microwave
Society
– Two 8-bit Timer/Counters with Separate Prescaler and Compare
Mode
– One 16-bit Timer/Counter with Separate Prescaler, Compare
Mode, and Capture Mode
– Real Time Counter with Separate Oscillator
– Six PWM Channels
– 8-channel 10-bit ADC in TQFP and QFN/MLF package
– Temperature Measurement
– 6-channel 10-bit ADC in PDIP Package
– Temperature Measurement
– Programmable Serial USART
– Master/Slave SPI Serial Interface
– Byte-oriented 2-wire Serial Interface (Philips I2C compatible)
– Programmable Watchdog Timer with Separate On-chip
Oscillator
– On-chip Analog Comparator
– Interrupt and Wake-up on Pin Change
WWW.NTMS.ORG 12
North
W5HN
Software Development for the Texas
NTMS
Arduino Microwave
Society
• Open source Integrated Development
Environment (IDE)
– https://www.arduino.cc/en/Main/Software
• Many subroutines for hardware available
– LCD Display, Keypad, ……
• Long list of examples included with IDE
• Lots of open source code
• E.g., Arduino Uno makes a nice beacon keyer
WWW.NTMS.ORG 13
North
W5HN
Texas
Challenges and Solutions NTMS
Microwave
Society
• Setting 60,000,000 frequency settings
– Keypad
– Mechanical Encoder
• 100 KHz, 10 KHz, 1 KHz, 100 Hz, 10 Hz, and 1 Hz step sizes
selected with a push button switch
• Calibration
• Mode control
– Push button switch
WWW.NTMS.ORG 14
North
W5HN
Texas
KT1F Software NTMS
Microwave
Society
• Ross Keatinge, KT1F wrote software for controlling the DDS-60 with
an Arduino RBBB (really bare bones board).
• Code compiles and loads on the Arduino Uno and available
at http://www.theladderline.com/node/10
• Latest Version on web is version 1.4
• 34 pages when printed out!
• Modes
– Normal
– TX
– Memory
– QRSS
– Calibrate
– Silent
WWW.NTMS.ORG 15
North
W5HN
Arduino Controls and Connections Texas
NTMS
to the DDS-60 and LCD Microwave
Society
WWW.NTMS.ORG 16
North
W5HN
Texas
Software Modifications NTMS
Microwave
Society
• LCD Display
• Frequency range
• Pull-ups on button ports
WWW.NTMS.ORG 17
North
W5HN
Texas
Front Side NTMS
Microwave
Society
WWW.NTMS.ORG 18
North
W5HN
Texas
Interior NTMS
Microwave
Society
WWW.NTMS.ORG 19
North
W5HN
Texas
Future Plans NTMS
Microwave
Society
• Signal Generator
– Signal level to meter
– Automatic Level Control (ALC)
• Broadband transmitter/RX LO
– TX code not working right
WWW.NTMS.ORG 20