Difference between revisions of "VFO-002"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) |
Blwikiadmin (talk | contribs) |
||
(12 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | ''' | + | '''Abandoned for Arduino Pro Mini based design [[VFO-003]]''' |
− | [[File:VFO-002- | + | [[File:VFO-002-2.png]] |
== Features == | == Features == | ||
+ | * Software controlled VFO | ||
* Blue Pill Microprocessor | * Blue Pill Microprocessor | ||
** STM32F103 32-but ARM RISC CPU | ** STM32F103 32-but ARM RISC CPU | ||
Line 13: | Line 14: | ||
*** I2C Interface | *** I2C Interface | ||
** Controls frequencies with rotary encoder | ** Controls frequencies with rotary encoder | ||
− | ** 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps | + | ** 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable |
− | * | + | * Si5351A Oscillator |
** 3 Outputs | ** 3 Outputs | ||
− | ** 25 | + | ** 25 or 27 MHz crystal |
** I2C Interface | ** I2C Interface | ||
* Power | * Power | ||
Line 22: | Line 23: | ||
** 7-24 VDC | ** 7-24 VDC | ||
* Fits in standard extruded enclosures | * Fits in standard extruded enclosures | ||
− | |||
− | |||
== Parts == | == Parts == | ||
Line 43: | Line 42: | ||
* Arduino IDE | * Arduino IDE | ||
− | === 128x32 OLED === | + | === OLED === |
+ | |||
+ | ==== 128x32 OLED ==== | ||
* [https://www.ebay.com/itm/2pcs-0-91-128x32-IIC-I2C-White-OLED-LCD-Display-DIY-Module-For-Arduino/293688288048?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649 Ebay] | * [https://www.ebay.com/itm/2pcs-0-91-128x32-IIC-I2C-White-OLED-LCD-Display-DIY-Module-For-Arduino/293688288048?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649 Ebay] | ||
[[File:OLED128x32.PNG]] | [[File:OLED128x32.PNG]] | ||
+ | |||
+ | ==== 128x64 OLED ==== | ||
+ | |||
+ | * Rotated | ||
==== Arduino Library for OLED ==== | ==== Arduino Library for OLED ==== | ||
Line 108: | Line 113: | ||
== Enclosure == | == Enclosure == | ||
− | == | + | == 100x76x35mm Black Aluminum Enclosure === |
− | * [https://www.ebay.com/ | + | * [https://www.ebay.com/sch/i.html?_from=R40&_trksid=p2386202.m570.l1313&_nkw=100x76x35mm+Aluminum&_sacat=0 ebay search term] |
− | [[File: | + | [[File:box-100x76x30-Mechs.png]] |
− | == | + | == Schematic == |
− | |||
− | |||
== Mechanicals == | == Mechanicals == | ||
Line 150: | Line 153: | ||
== Assembly == | == Assembly == | ||
− | [[VFO- | + | [[VFO-002 Assembly]] |
Latest revision as of 16:57, 10 March 2021
Abandoned for Arduino Pro Mini based design VFO-003
Contents
Features
- Software controlled VFO
- Blue Pill Microprocessor
- STM32F103 32-but ARM RISC CPU
- Arduino compatible
- 3.3V I/O
- Detachable Rotary Encoder/OLED card
- SSD1306 OLED Display
- I2C Interface
- Controls frequencies with rotary encoder
- 100 Hz, 1 KHz, 10 KHz, 100 KHz, 1 MHz, 10 MHz steps (software controllable
- SSD1306 OLED Display
- Si5351A Oscillator
- 3 Outputs
- 25 or 27 MHz crystal
- I2C Interface
- Power
- MINI-360 DC/DC Buck regulator
- 7-24 VDC
- Fits in standard extruded enclosures
Parts
Blue Pill Card
- 3.3V operation work without level shifters for I2C
- OLED can run from 3.3V
- Si5351 can only run from 3.3V
- Used right angle headers and Dupont cables
- Replaced BOOT 0,1 jumpers
- Jumper on BOOT1
- Switch on BOOT0 - easier to download code
- Download via serial
- Arduino IDE
OLED
128x32 OLED
128x64 OLED
- Rotated
Arduino Library for OLED
U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // STM32, Ebay OLED
u8g2.setFont(u8g2_font_ncenB14_tr);
Hello World Code
U8G2_SSD1306_128X32_UNIVISION_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // STM32, Ebay OLED void setup(void) { u8g2.begin(); } void loop(void) { u8g2.clearBuffer(); // clear the internal memory u8g2.setFont(u8g2_font_ncenB08_tr); // choose a suitable font u8g2.drawStr(0,10,"Hello World!"); // write something to the internal memory u8g2.sendBuffer(); // transfer internal memory to the display delay(1000); }
Rotary Encoder
- Includes pushbutton Switch
- Includes Pull-Up resistors
- Needs R/C filter on output for debounce
- Reading Rotary Encoders - Arduino reference
- Simple Rotary Encoder Arduino library
- Library for the Arduino environment for using a rotary encoder as an input
Si5351 Frequency Generator
- I2C Daisy-chain connector
- 3 outputs
- Tx
- Rx (may not need to use separate output)
- BFO - could be adjusted
Mini-360 Buck Converter
- Power from 7-23 VDC in
- 5V out
Enclosure
100x76x35mm Black Aluminum Enclosure =
Schematic
Mechanicals
Libraries/Example Code
- Land Boards Application
- VFO and BFO with Si5351A, OLED and Arduino
- U8g2: Library for monochrome displays, version 2
- Si5351 Library for Arduino
- Universal Digital VFO Si570/Si5351
- Adafruit_Si5351
- Si5351 Library for avr-gcc
- vk3hn_VFO_controller
- Simple BFO with si5351 controlled by Arduino
Videos