There has been much discussion recently about 3D printing, especially with the idiots producing the plastic gun, but has 3D printing got to the stage were it is viable for domestic use, a replicator in every front room, or more likely garage?
Using USART or UART on a Microcontroller
First, what is the difference between these terms, UART and USART? UART stands for Universal Asynchronous Receiver and Transmitter, and USART means Universal Synchronous and Asynchronous Receiver and Transmitter. Most microcontrollers today, like PIC and AVR, have USART, but the Synchronous function is not often used as they have other synchronous devices like I2C and SPI. So this post will concentrate on asynchronous transmission, which is the same on both devices.
Continue reading “Using USART or UART on a Microcontroller” »
Custom ISP Connectors
To carry out In System Programming (ISP) of devices, such as AVR, ST7 and PIC microcontrollers or serial EEPROMs, you need an ISP connector on your PCB that matches the format on the programmer you intend to use, but this isn’t always that simple.
Resurrecting Voloci Electric Motorbike
The Voloci electric motorbike was made and sold by Nova Cruz Products Inc. during the period 2001-2003. It was too far ahead of its time and production soon ceased, but there are quite a lot of them out there. Unfortunately, the firmware had a bug and could get corrupted and a lot of these bikes did not get the very last update that fixed this. Kanda have just been working with one such guy to help him resurrect his machine.
Firmware Updates in the Field
All microcontroller based applications include the microcontroller code called firmware but it is surprising how many people forget that they may need to update it when their products are scattered at customer locations. This may be because (heaven forbid) that they discover a bug in the system that needs to be corrected or, more commonly, that the product needs new features in response to customer feedback or competitor’s actions. So how do we simplify firmware updates?
Program in C or Assembler?
A common question we get is should I program my microcontroller in C or assembler? This usually means do I bother with assembler or just use C. Sometimes it just means that I do not know the difference. So what is the difference?
What is AVR microcontroller?
An AVR microcontroller is a type of device manufactured by Atmel, which has particular benefits over other common chips, but first what is a microcontroller?
The easiest way of thinking about it is to compare a microcontroller with your PC, which has a motherboard in it. On that motherboard is a microprocessor (Intel, AMD chips) that provides the intelligence, RAM and EEPROM memories and interfaces to rest of system, like serial ports (mostly USB ports now), disk drives and display interfaces.
A microcontroller has all or most of these features built-in to a single chip, so it doesn’t need a motherboard and many components, LEDs for example, can be connected directly to the AVR. If you tried this with a microprocessor, bang!
All About CAN Bus, CAN USB and CAN-FD
What is CAN bus? Officially, CAN is a Controller Area Network, which is a network of independent controllers communicating securely. It was first developed by Bosch and Intel in 1990 and has been amended since. The International Standards Organisation (ISO) has further defined CAN using their OSI model.
Continue reading “All About CAN Bus, CAN USB and CAN-FD” »Smart Cards and Smart Card Programmer
Smart Cards are a bit of a misunderstood subject and no-one is quite sure what they are. Smart Cards are defined in a standard called ISO 7816. This has different sections that cover physical size and characteristics, where the contacts should be (for contact cards) and how to communicate with them.
Programming AVR Bootloader Code
We have been asked about how you can program an application code file and a separate bootloader into an AVR microcontroller using a Kanda programmer. It isn’t possible to program two separate files but it is simple enough to combine them into one file.
Continue reading “Programming AVR Bootloader Code” »