VFO-002

From Land Boards Wiki
Jump to navigation Jump to search

This is a work in process

VFO-002-652px.png

Features

  • 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
  • Si5351 Oscillator
    • 3 Outputs
    • 25/27 MHz crystal
    • I2C Interface
  • Power
    • MINI-360 DC/DC Buck regulator
    • 7-24 VDC
  • Fits in standard extruded enclosures

Schematic

Parts

Blue Pill Card

STM32F103C8T6-Blue-Pill-Pin-Layout.gif

  • 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

128x32 OLED

OLED128x32.PNG

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

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

Mini-360-power-regulator.jpg

Enclosure

Box-profile-697px.jpg

Mechanicals

VFO-002 Mechanicals.PNG

Libraries/Example Code

Videos

Assembly

VFO-003 Assembly