Armega128 bootloader using windows hyper terminal

If you are a windows user, there is a most straightforward solution to program Atmega128 microcontrollers. In https://piconomic.co.za there is nice bootloader binary you can download and use for personal purposes. First of all, you will need to upload bootloader hex file (which is packed in) to Atmega128 and properly program fuses. For my Piconomic board I set fuses like this: Then plug RS232 cable to computer COM2 (or COM1) port and then from windows select Start->All Programs->Accessories->Communication->HyperTerminal. HyperTerminal is a program used for multiple communication purposes like connecting to another computer, telnet, modems and null modems. First of all select connection type – COM2: After pressing OK, you will be taken to COM2 connection properties: After connection settings are done it is time to start bootloader. Select Transfer->Send file in HyperTerminal program: In the opening window select file, you want to download. Just remember that binary has to be compiled as BIN not HEX. The second option is to select a protocol – how data will be sent to the bootloader. The bootloader is programmed to support Xmodem protocol: Press Send button then Hyperterminal starts waiting for a bootloader to respond: Just press the Reset button on your target…

Continue reading

KontrollerLab IDE development software for AVR under Linux

Good news for Linux lovers. The new IDE development software for AVR microcontrollers has shown up. This is KDE based IDE under GPL. It is fully-featured editor which includes serial terminal for debugging, uses AVR-GCC compiler, uisp for serial downloading and avrdude programming software. Few screen-shots of this tool: Main project window Fuse settings window Project configuration window Compiller  settinds Programmer configurations Linker settings This is first release but is is already ready to start developing AVR projects. I think it’s a nice beginning. Download and try KontrollerLab from https://sourceforge.net/projects/kontrollerlab/

Continue reading

Connect Nokia 3310 LCD to LPT port

I found this circuit really simple and interesting. It is really simple to drive Nokia 3310 graphical LCD by using simple LPT cable and some PC software. Firs of all connect graphical LCD to LPT port according to following circuit: Graphical display needs about 3.3V of supply voltage, while LPT gives about 4.5 -5V. This is why diodes are used to reduce voltage by formula: 4.5V-0.7V-0.7V=3.1V. LCD pin numbering on Nokia 3310 LCD is as follows: Graphical display is controlled by PCD8544 controlled. Download Controller specifications here:PCD8544.pdf As you have noticed LPT port data pins are used for data transfer and powering of LCD: When hardware part is done it is time to draw some images on LCD. For this download control program (Pascal source is included in package too). Software is written to drive ports directly in DOS or win98 operating system. If you are using Win2000 or XP you might want to read: Program LPT and COM ports easily under windows NT-2000-XP. I have copied One of solutions here: Download PortTalk and unzip it in separate folder somewhere. Then copy allowio.exe directly to the directory where is you program which you want to run. Then create shortcut of…

Continue reading

High capacity multimedia cards in embedded systems

Multimedia cards are popular around us. There are well known Compact Flash, CD, MMC Memory Stick. Usually when you make new design with external memory you usually are considering EEPROM or Flash ICs with some capacities with up to few Mb. But why limit yourself, because in some cases it is smarter to add multimedia card socket and use any capacity (even few Gb) multimedia cards in your projects. Using removable storage cards you get few advantages: You can share data from your card with any device that has reader; You can have any size of storage memory; Easier to get one than specific IC; Cost effective; What I really like about Using multimedia cards is that you can get huge amounts of storage of price small EEPROM or Flash IC. They are cheap because of mass production. They are available everywhere: digital cameras, Mobile phones, personal players, etc. Another advantage is that you can store data in format that PC understands. This way it is easy to collect data for later analysis using PC software. MMC and SD cards Multimedia cards(MMC) and SD-Media cards are compatible. Connectors are really cheap an easy to solder: Bellow is an example how…

Continue reading

RS-485 interface for connecting multiple devices

RS-485 is updated version of RS-422 interface. It is designed to communicate between multiple devices connected to single data line. Standard allow connecting 32 transceivers to data line. This is achieved by using tri-stable drivers that are separate programmable. This allows only one device work at a given time. Resistors used in circuit are so called termination resistors for matching impedances of transmitter and receiver to avoid reflections. Matching resistor depends on cable used, but is 120Ohm. Usually RS485 chips have two control inputs Data Enable(DE) and Receiver Enable(RE): On the IC you see that DE active is high level and RE is low level. This allows connecting control line to single MCU pin. This assures that node won’t be receiving while it is transmitting: In many cases CAT-5 cable is used with impedance of 100Ohm and terminations of 120Ohm resistors at both ends of transmitter and receiver. CAT-5 cable has already twisted pairs and it is cheap enough to use for many applications.

Continue reading

RS-422 interface basics

RS-422 is a standard for serial data transfer similar to RS-232, but it uses the difference between two lines (RS-232 uses a reference to ground). RS-422 uses twisted pair (difference pair) to represent the logic level. Such data transmission type is so-called balanced transmission as it is not referenced to ground. This is a noise proof solution because the same noise affects both lines which are differentiated out. This allows carrying data at much longer distances at higher data transfer rates. RS-422 can transmit data to up to 1200metters. Maximum transfer rate can be 10Mbits/s. 120Ohm resistor act as terminal resistor which removes reflections, that may occur during transmission over long distances. Voltage levels between twisted pair lines are 4V and between transmission lines is 12V. RS-422 can be compatible to RS-232 interface by simply connecting the negative wire of twisted pair to ground. There are many RS-422 interface chips available in the market. One of them is MAX3488. They can be connected to the MCU UART interface like they are RS232. The single difference between RS232 and RS422 is voltages but transfer protocol is the same and you can work with it like it was RS232, just more noise…

Continue reading

ATMEL announced 3 new low power Tiny AVR microcontrollers with high speed timers

Atmel’s new devices are 20-pin tiny-AVR microcontrollers with high-speed timers. All three devices are pin-compatible, differing only in the size Flash, EEPROM and SRAM memories. The ATtiny261 has 2 Kbytes of self-programmable Flash memory; The ATtiny461 has 4 Kbytes of self-programmable Flash memory; The ATtiny861 has 8 Kbytes of self-programmable Flash memory. All devices deliver 20 MIPS throughput when running at maximum 20 Mhz frequency. The internal 8 MHz RC oscillator and the on-chip PLL can run the 10-bit timer/counter up to 64 Mhz speed. The high-speed timer/counter with three independent PWM generators is ideal for battery chargers, battery monitoring, power monitoring and motor-control applications. All devices have internal EEPROM, pull-up resistors, an internal 8 MHz precision oscillator and 12 general I/O pins for application use. Alternatively, the I/O pins work as ADC inputs or PWM outputs. ATtiny261, ATtiny461 and ATtiny861 are available in 20-pin SOIC and PDIP and 32-pad QFN packages.

Continue reading