Directly driving a 7-segment LED display with the STM32

Seven segment LEDs are an extremely cost effective way to add a large, bright and very readable numeric display to your project. Displays similar to the one pictured above can be had for as little as 50 cents each on ebay in the common heights of 0.56″, 0.36″ and 0.28″. You...

Nanocounter is an accurate frequency counter using an FPGA, STM32 and a bluetooth android app

Here we have a good example of how a requirement for a simple tool spirals out of control and spawns a project that takes months to complete and ends up dwarfing the project that it was originally expected to facilitate. You see, some time ago I was fiddling around with a project, something to do with data logging, probably, I’ve actually forgotten what I was up to. Said project would have used an MCU to acquire and timestamp data over an extended period of time and I quickly realised that the oscillators and quartz crystals used to generate the clock tree inside an MCU are not accurate enough to track wall-clock time over extended...

USB HID device development on the STM32 F042

The STM23 F042 series is ST’s cheapest route into USB device programming for the F0 series of STM32 microcontrollers. In hacker-friendly units of one you can buy an STM32F042F6P6 (48Mhz, 32Kb flash, 6Kb SRAM, TSSOP20) for £1.47 at Farnell today. STM32F042 TSSOP20 0.65mm pitch...

From zero to a C++ STM32 development environment

It’s been a while since I wrote an article about my stm32plus C++ library for the STM32 series of MCUs so I thought I’d combine a long overdue catchup with a step-by-step tutorial that will show you how to set up a completely free and unrestricted STM32 development environment from...

Arduino Uno R3 graphics accelerator shield uses no pins

Hello and welcome to another in my series of unique hardware projects designed to bring you something useful that you’ve hopefully never seen before and at a price point that any hobbyist can afford. This project brings together the knowledge that I’ve gained over the last few years to bring you a graphics accelerator for the Arduino Uno R3 based on an ARM Cortex M0 core attached to a 640×360 LCD from the Sony U5 Vivaz cellphone. In previous articles you’ve seen how I’ve reverse engineered the Sony LCD and then used it in reflow oven and FPGA graphics accelerator projects. Introduction TFT LCD shields for the...

An FPGA sprite graphics accelerator with a 180MHz STM32F429 controller and 640 x 360 LCD

A very warm welcome to my most ambitious project to date. In this project I’m going to attempt to design and build a sprite-based graphics accelerator that will function as a co-processor to an MCU. Using cheap off-the-shelf components I’m hoping to achieve a level of gaming performance that compares well to popular commercial hand-held gaming consoles. I’m hoping that I’ll learn a few new tricks along the way, and, if the ideas currently zinging around inside my head all land the right way up and in the right order then I should be able to write a demo or two, maybe even a small game as a proof of concept. Naturally...

An open-source Cortex-M0 halogen reflow oven controller with TFT LCD

Introduction It’s been so long since I had the idea for this project that I can’t remember why I had the idea in the first place. At least I blame it on the passage of time although this engineer is getting on a bit now so it could easily be memory rot on my part. So here we are then, a reflow oven controller. Let’s quickly recap what a reflow oven is for those that are new around here. The two main processes used in industry to build printed circuit boards are wave soldering and reflow using a very large industrial oven that you probably can’t afford and if you could afford to buy it you probably couldn’t...

stm32plus 3.2.0: Supporting the STM32F0 Cortex M0

A few months ago I made the decision to start supporting the lower priced, hobbyist friendly STM32 devices in my stm32plus C++ library. These lower-end devices come in lower pin-count, smaller packages that are easier to work with and they have reduced clock speeds that make for fewer PCB...