A High-density line of STM32 microcontrollers has quite many features that can be used in your programs. However, the more features you add to the source, the more complicated the program becomes, and it may become challenging to keep up with all things. Relying on the main loop and interrupts becomes a time-consuming task to manage. If you do not want to struggle while tuning things up manually, you can use one of the best free real-time operating systems (RTOS). It is handy when you need many separate functions to run in parallel without missing a task. RTOS scheduler takes care of giving each task a required period to perform. There are many great RTOS systems around. Many of them are free and open source. Follow the FreeRTOS tutorial to see how easy it is to run complex tasks. I love using FreeRTOS, which has a long successful history and is flexible to fit multiple hardware types. You can check out my demo FreeRTOS tutorial on Atmega128. I also encourage you to give it a try for other RTOS systems like ChibiOS, BeRTOS, and others. FreeRTOS is quite simple and easy to use. It has practically all of the features…
USBASP is a well-known USB programmer for Atmel AVR microcontrollers initially supported by Thomas Fischl. USBasp flash uploader is made of an Atmega8 or Atmega88 and few other components, including resistors, capacitors, LEDs, and connectors. The adapter works on a firmware driver, which gives room for customization, and new chips updates. The USBasp programmer has been so famous for a long time. It has been supported by avrdude – an open-source programming software, which runs on multiple platforms like Windows, Linux, or Mac. Since Arduino’s popularity has skyrocketed, the need for such tools has diminished, and so the support has been stopped. I can assure you that USBasp still works and there is no problem running it on Windows 10. USBasp circuit diagram Let us see what is this adapter is made of and how to set it up to run on Windows 10. You can find the original circuit on the author’s site: http://www.fischl.de/usbasp/. There you will also find several third-party PCB examples to choose from. The USBasp adapter is an Atmega8 (or Atmega88) microcontroller clocked with a 12MHz crystal. The assembled PCB is ready to be connected via a simple USB B-type cable (PC side needs A type…
C-60 SOLAR POWERED AIRCRAFT In this project we are going to show you to power an aircraft from solarcells and have an uninterrupted flight for 50 minutes with the aid of a dc source excluding solar cells. The project is concerned with the uninterrupted flight by using renewable energy i.e. solar cells energy and have a smooth and long flight without fuel to any desired place as long as the sunlight is available, on the dismissal of sunlight the dc battery source will be there to drive the aircraft. This air craft is also capable of one to one communication for such areas where wireless communication is inaccessible. The aircraft is equipped with Xbee-S1module (Communication module) which is communicated to the Xbee in inaccessible wireless areas. The Xbee of inaccessible area fetch the data from the sensor in that area and transfer this data to the Xbee in aircraft, storing in the SD card in aircraft. After the aircraft flight is ended the SD card data can be fetched via computer and graph of complete analysis of that area in excel sheet.
Ultrasonic echolocation is common practice in many areas including nature itself. We all know how bats or dolphins navigate – they emit ultrasonic waves and depending on the time delay of reflected echoes, they can determine the distance from obstacles or catch. From an engineering perspective it is relatively easy to measure distances with ultrasound – all you need to know is sound speed in the air and time delay between sent and received pulses. L is the measured distance; CAIR – ultrasound speed; t – the time between transmitted and received pulses. The accuracy of measured distance mainly depends on air temperature. The following formula can calculate sound speed in the air approximately : For instance, at 25ºC the speed of sound in dry air CAIR = 346.13 m/s. If you want greater accuracy, you should also measure temperature to adjust sound speed.
It’s been over three months since solar collector was installed. I decided to build a controller by myself. And it turned out that it stayed in the prototype stage. So I put it into the enclosure and left it like is. So far it works fine – water is hot every day, so I have nothing more to expect. I did not capture enough pictures of the build, but I think I will share what I have. In the forum thread, you probably saw what type of system I was building. As I mentioned, the solar collector is cheaply made in China and is pressureless. They usually come with a unique controller which takes care of refilling tank, ensuring protection from water freezing and other individual scheduled routines. Pressureless collector usually is first filled with water which heats and then it is used (mixed with cold). Initial test shows that when the collector is in direct sun, it boils what leads to calcification of heater elements. Overall lifetime reduces and so efficiency.
In this part, we are going to create a simple project for the MSP-EXP430FR5739 FRAM board. As development tools, we are going to use Code Composer Studio which is free to up to 16KB Flash code size. MSP430FR5739 microcontroller has exactly 16KB of FRAM memory so we can use it all with no hustle. Download Code Compose Studio (CCS) and install it to your PC. Then start the application and go to the workbench. It is Eclipse based IDE so should be no problem if you have used Eclipse before.
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.
ChipKIT is an excellent substitution board to 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 is 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.
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.
Finally, some updates on the AVR DDS3 signal generator. The circuit is practically done, and PCBs are made. I decided to go with two microcontrollers on board to make it more functional. One microcontroller, Atmega328P, is gonna be dedicated to user interface and signal generator control. The second Atmega88 is gonna be used for signal generators only. This will give un-interruptable signal output while changing parameters or simply doing signal sweeps.