Running LEDs on MSP-EXP430FR5739 FRAM board

In this part, we are going to create a simple project for the MSP-EXP430FR5739 FRAM board. As development tools, we will use Code Composer Studio, which is free to up to 16KB Flash code size. MSP430FR5739 microcontroller has exactly 16KB of FRAM memory to use it all with no hustle. Download Code Composer Studio (CCS) and install it on your PC. Then start the application and go to the workbench. It is an Eclipse-based IDE, so it should be no problem if you have used Eclipse before.

Continue reading

Building STK500 AVR ISP programmer with USB

A programmer adapter is one of the first things to get when starting with microcontrollers. Luckily, it is not hard to build a working programmer almost for any microcontroller, as there are tons of open-source projects. I decided to make my own stk500 compatible programmer, which is taken from tuxgraphics.com. I did not look for the same parts as in the original schematics but used what is on the desk. As a result, I got a mix of through-hole and SMD PCB, which does the job. Short info about STK500 V2 programmer This STK500 V2 adapter is a clone of the original AVR STK500 programmer. It works on all leading platforms, including Windows, Linux, BSD, and macOS X. This is mainly because USB to serial converter  –  FT232RL chip has full driver support. The main reason to build it is that the programmer works in AVRstudio, where microcontrollers can be programmed fluently from the same IDE. Besides, it works fine with AVRDude – which would be the primary application for Linux users. This clone gained quite significant popularity so that you can find many variations – mostly different PCB versions. Therefore, mine is yet another PCB.

Continue reading

Using analog joystick in AVR projects

joystick

In many cases, the joystick manipulator is the best choice for user input. Whether it is a game, robot, or flying machine – a joystick is the most intuitive way of controlling them. You can actually find them in gaming controllers like PlayStation or XBOX. The one we are going to the interface is Thumb Joystick I purchased some time ago from SparkFun. They are really cheap, and as users report, it is practically the same as in XBOX 360, which can be replaced if one is broken. I didn’t bother making a PCB for it – I just used a breakout board for it, which also can be found on SparkFun. Simply speaking, this joystick is nothing more than two potentiometers and one pushbutton. It is designed so that potentiometers are oriented perpendicular and thus moving stick; you can have X and Y-axis control. The push-button is simply an action button that can be activated by pressing the joystick down. So controlling joystick is a matter of analog read of both potentiometers with microcontroller ADC inputs.

Continue reading

Adapting graphical LCD with touch screen to ChipKIT UNO32

ChipKIT is an excellent substitution board for Arduino. It offers better performance as it is based on a PIC32MX320F128 microcontroller based on 32-bit architecture. The microcontroller has 128K of Flash and 16K of SRAM onboard. Having Arduino Uno shape factor, ChipKIT offers more than 42 programmable pins. ChipKIT, like Arduino, can be programmed with a bootloader that communicates to the PC through USB-to-USART converter chip FT232RQ. Digilent has developed an STK500v2 based bootloader that works on PIC, so it is easy to program using the AVRDUDE tool. Besides that, they adapted an Arduino environment to work with ChipKIT boards. It’s called Mpide. It also supports Arduino boards, but it aims to program ChipKIT boards. Programming experience is pretty the same as for Arduino, and even most of the examples written for Arduino work on ChipKIT. This is true since there are no specific hardware elements touched like program memory or EEPROM. As you know, Arduino is rich in hardware support libraries as all shields are designed for Arduino. Latecomers like ChipKIT, even if they are hardware compatible, may have some difficulties with library integration due to the different architecture.

Continue reading

Driving LED – things everyone needs to know

Light Emitting Diodes, more frequently known as LEDs, are semiconductor devices that convert electricity into light. It was hard to find a gadget or other device that doesn’t use LEDs. They are cheap, they are simple to use, and they are small. LEDs can emit different light colors depending on other chemical compound material in a semiconductor. LED symbol One and universal LED symbol is as standard diodes but with a couple of arrows indicating that it emits light:

Continue reading

Zener – one diode for many uses

Zener diodes are specially designed diodes (heavily doped) that have low reverse voltage breakdown. Due to this characteristic, Zener diodes are connected backward to regular operation. If Zener is forward biased, it acts as an ordinary diode with a forward voltage drop at 0.6V. Zener diode backward voltage breakdowns may range from 2.4V up to 100V. Honestly speaking, if you need like 1.2V, then probably you need to connect two forward-biased diodes in series for 0.6V+0.6V = 1.2V drop.

Continue reading

Rethinking AVR DDS3 signal generator project

These things happen all the time. When you start a new project but from the beginning start feeling that it’s not what you wanted. Usually, they end up collecting dust. I think there is nothing shameful because it is better to fail than do nothing. There are thousands of examples where people start new projects with enthusiasm, but they never reach the daylight. But without those efforts, we wouldn’t see other great projects and products. Not all of them are made from the first try. It’s been over a year since the announcement of the AVR DDS3 signal generator. As you have noticed, there is no progress so far on it. And I am going to give up on it for a couple of reasons. From the beginning, I didn’t feel comfortable with it.

Continue reading

Understanding 1-wire interface

1-wire devices. DS18B20 and iButtons

1-wire devices are commonly used in many applications. You probably are familiar with the famous DS18B20 digital temperature sensor in the TO92 package. They can be powered and interfaced using the same single data line plus the ground return, of course. 1-wire originally was designed by Dallas Semiconductors Corp., which is also a major provider of 1-wire devices like temperature sensors, timers, real-time clocks, memory, and the well-known iButton. 1-wire interface is a bidirectional, half-duplex slow serial communication standard. It doesn’t use any clock signal. When talking of speed, the standard data rate is 15.4kbps. But there is possible to overdrive 1-wire communication to up to 125kbps.

Continue reading

Thermoelectric effect and modules

thermoelectric cooler

Thermoelectric devices are seen very often in various appliances: small refrigerators, semiconductor chip coolers, medical chillers. The thermoelectric effect works in both directions – it can generate temperature difference when current flows, or it can induce current when the temperature difference is applied. About thermoelectric effect It is known for more than 100 years. Several scientists discovered this effect in one or another way. Probably you’ve heard the Peltier effect. Jean Charles Athanase Peltier discovered that if you apply an electrical current to two materials’ junction, it gets cold or hot (depending on current direction).

Continue reading

Did I just increase DS1022CD bandwidth four times?

Probably you are already familiar with the famous DS1052E hack where guys were able to double and even triple bandwidth. It happens that on my table is DS1022CD scope with 25MHz analog bandwidth. And this hack doesn’t apply to my model. We all know that the same series Rigol oscilloscope models tend to have identical hardware, whether 25MHz, 50MHz or 100MHz analog bandwidth. Of course, the sampling rate (400MHz) stays the same. So it all lies in the software. I felt that someone would figure out how to do this with this pretty old oscilloscope. And here it is – a hackaday pointed to a piece of great news – a simple way of changing the model from DS1022CD to DS1102CD, which converts analog bandwidth from 25MHz to 100MHz. This is quite a step without spending a penny. Andreas Schuler (aka Krater) shared a simple method of doing this without using any serial interfaces and firmware updates. By following his step by step guide, you can do this as follows:

Continue reading