Skip to main content

Posts

Showing posts with the label avr

μSim: PICmicro instruction simulator

μSim is a lightweight PIC™ CPU and ALU simulator. This simulator supports the PICmicro mid-range instruction set and designed to work on both PC and Arduino platforms. Compare with most of the other emulators, μSim does not provide all MCU features and peripherals. This simulator design as a minimalistic system, and based on the requirements, it can extend with additional peripherals and features. To accomplish this μSim is written with minimum system dependencies and with less complexity. To avoid resource overflows/overruns the source code is carefully organized with a few functions and data types. μSim setup for Arduino and PIC16F84 MCU. Apart from the instruction decoder, this system simulates 1024 words of flash memory, 68 bytes of SRAM, two 8 bit GPIO ports, and register map similar to PIC16F84 MCU. Some of the common MCU peripherals and features such as interrupts, timers, and UART systems are not integrated into this simulator. The main objective of this project is to prov...

AVR High Voltage Programmer 2

AVR-HV2 is Arduino based high voltage parallel programmer for AVR microcontrollers. This programmer can read, write, and erase both flash memory and EEPROM. Also, this can use to set fuse bits of AVR MCUs. Compare with the previous version of AVR HVPP , this design is based on commonly available components with a simple schematic. In this release driver software is also rewritten to provide cross-platform support. AVR-HV2 shield with Arduino Mega 2560 board. AVR-HV2 programmer is designed as an Arduino Mega shield. Dimensions of the AVR-HV2 are similar to the Arduino Mega board. It can be powered using a power source connected to the Arduino Mega board. The suggested power source for this programmer is a 12V 1A DC power adapter. The control software of this programmer is design to work on both Windows and Linux operating systems. It supports the import and export of memory data in the Intel hex file format. The communication link between the programmer and the control s...

Restoring Sony STR-AV780 AV receiver

Sony STR-AV780 is a combined receiver and audio/video control center. This receiver is manufactured by Sony in around 1986 and it is capable to deliver 2 × 80W audio output power with 8Ω speaker load. The STR-AV780 which I got had two problems. The first problem is in the power amplifier stage and it produces distortion in high frequencies. The second problem is in FM radio receiver and it is completely dead. The power amplifier of STR-AV780 is based on two Sanyo STK4042 XI AF power amplifier ICs. To fix the distortion issue we replace all the electrolytic capacitors in both STK4042 power amplifier boards. After replacing capacitors distortion issue got fixed and the power amplifier starts to produce a clear output waveform. The FM receiver of this AVR is mainly based on 2 ICs. For IF stage it uses LA1235, and to demodulate FM stereo signal it uses LA3401. Apart from that Sony CX7925 is used as PLL frequency synthesizer. The front end of FM tuner is based on a couple of transist...

AVR-HV: High voltage programmer for AVR microcontrollers

When it comes to AVR microcontrollers the most common programming option is In-System Programming ( ISP ). ISP interface is easy to use but in some scenarios it is totally unusable. The most common scenario is with some wrong fuse bit values. For example if we program SPIEN or RSTDISBL fuse bits, AVR microcontrollers may not respond to any in-system programmer(s). To overcome these problems the next available option is high voltage programming mode. In High voltage programming mode, 12V programming voltage is applied to RESET pin of target AVR microcontroller and user can change configuration fuses of AVR MCU with minimum amount of risk. The only drawback in this mode is that target microcontroller must need to be removed from the board to reprogram. Most of the AVR high voltage programmers are expensive and difficult to find in ordinary electronic shops. As a solution we implement USB base high voltage parallel programmer for AVR microcontrollers and it allows programming, readi...

Digital audio amplifier with PLL synthesized FM radio

This is high quality stereo digital audio amplifier with PLL synthesized FM radio receiver. Some of the high level specifications of this receiver are listed in below: Audio output power: 4W + 4W (with 8ohm speakers) Input sources: FM and 3 external stereo line inputs FM frequency range: 88.00MHz – 108.9MHz Supply voltage: 12V – 15V (2A current source is recommended) Tone control options: Bass, Treble and Loudness control Bass / Treble boost: 14dB Bass / Treble cut: 14dB Station memory: Preset 10 FM radio stations FM tune options: Auto and Manual with 25 kHz steps Key components of this audio system are ATmega32A - 8bit microcontroller, TT502 ( TEA5767 ) stereo FM radio module, PT2314 audio processor and μPC2002 audio power amplifier. This system is design to work with 12V - 15V (2A) DC power source and KA7632 multi-output regulator is used to manage power requirements to the above mentioned components. Prototype version of digital audio amplifier User interfa...

ATmega169 base 8bit Arithmetic and Logic Unit

ALU (Arithmetic and Logic Unit) is a digital system that performs integer arithmetic and logical operations. In this post we introduce ATmega169 base ALU simulation using Proteus . This is 8bit ALU, and functionally it is similar to other entry level ALUs such as Motorola MC14581, 74LS181, etc. This unit can perform 80 arithmetic and logic operations and all these operations are listed in below of this post. schematic of ATmega169 base 8bit ALU simulation Firmware of this ALU is developed using AVR-GCC. While at the development we try to isolate firmware with platform as maximum as possible, because of that, this firmware can be modified to run on top of PIC , 8051 or MSP430 MCUs with minor set of changes.

Microprocessor Controlled 16 Line Connectivity Tester

This is an ATmega32 based Proteus simulation of 16 line connectivity tester. I mainly did this project to get familiar with the new Proteus 8 simulator (mainly the new Proteus  - ISIS module). The main functionality of this system is to detect open and short circuits in cables and connectors. This system can test maximum of 16 lines in each test cycle and it indicate the defective line(s) through LCD. This is customizable system and user can configure number of test lines through single push button (SW1). The ATmega32 firmware is developed using WinAVR toolset and it design to work with both simulation and real modes. Schematic of 16 Line Connectivity Tester I never test this system with real parts. If someone interested about real implementation make sure to change RN1 and RN2 to 22K and diode array with 16 - 1N4148 diodes. Recommended supply voltage for this system is 5V DC. This is an open hardware Project and this work is licensed under the Creative Commons Attr...

Smart Audio Box

Smart Audio Box (SAB) is microprocessor controlled audio switch and amplifier system, which is specifically design for audio composers and for audio engineers. SAB consist of 4 high impedance stereo inputs and two output modes. One output mode can drive stereo headphone/earphone and other output mode can drive pair of 8W speakers. In prototyping stages we identify those modes as " Personal Mode " (headphone output) and " Audience Mode " (power amplifier output). Another main feature of this system is its programmable 16 step attenuation controller. This attenuation controller helps to control the audio output level of each output-mode. Prototyping version of Smart Audio Box The main component of SAB system is ATmega8 MCU, other than that headphone amplifier is design around NJM4556 high current operational amplifier and power amplifier is based on TDA1521A. To operate, this system requires 2 power sources. Microcontroller, ADC interfaces and CMOS logic-s...

Simple ATmega325 Development Board

This post is about simple Atmega325 development board which I was designed and build to test some large AVR systems. This development board contains ATmega325 MCU and MAX232 base RS232 driver/receiver unit. Thanks to SMD packages and components dimensions of this board get limited to 85mm × 62mm. This development board requires 5V external power supply and all its external circuitries (RS232 driver and hardware CPU reset) can be enable/disable through on-board jumpers. ATmega325 Development Board PCB design of this development board supports only for ATmega325 - TQFP64 package and MAX232 - SO16L package. This ATmega325 Development Board is release as an open hardware project and all its design files are available to download at google drive .

Microprocessor controlled CW Beacon

In this project we introduce portable microprocessor controlled CW radio beacon. This CW beacon module is capable to transmit maximum of 64 Morse codes repeatedly in 4.433MHz with 9V DC power source. This system consists of CW transmitter, ATtiny13 microcontroller unit and low current voltage regulator. Atmel ATtiny13 microcontroller is used to drive the transmitter and thanks to its internal 64 byte E²PROM, we may be able to change beacon data without altering the system firmware. While at the testing stages we receive this beacon on 10km radius (using Sony ICF-SW7600GR receiver) by using standard telescopic antenna. To get the maximum range it is recommended to use 3m – 4m antenna wire with this transmitter system. At the prototyping /testing stages we try this transmitter successfully with 3.58MHz, 4.43MHz and 6.00MHz crystals. This system is design to work with standard 9V battery (6F22/6LR61). At the prototyping stages we test this system using 12V and 10V DC power sou...

Automated Telephone Remote Control – Demonstration

In this project we develop automated telephone remote control system to demonstrate the functionality of MT8870 DTMF decoder. This project mainly based on MT8870 DTMF decoder and ATtiny2313 MCU. When this system connects to the phone line it monitor the status of the phone line and take the control of phone line when it detects the ringer, after that user may be able to control specified I/O port using appropriate keys. Finally user can issue predefine key combination to shutdown the phone line. Schematic diagram, source codes for ATMEL ATtiny2313 are available in here and all the source codes are developed using WinAVR (with Atmel AVR Studio 4). Please note that this project is developed for demonstration purposes only, some of the system states may not handled with the given source code.

Simple ATMEL AVR – Programmer

In this project we decide to implement simple ATMEL AVR microcontroller programmer for our hobby electronic purposes. We get ideas for this project from http://www.electronics-diy.com and http://www.societyofrobots.com . All the credits of this project go to them and creator of the ISP Programmer - Adam Dybkowski. You can get complete circuit diagram from here Entire project is based on the 7408 - Quad AND gate chip and it is possible to use any (CMOS/TTL) AND gate chip with this project. During the testing phase we use CD4071 and 7409 quad AND gate chips without any circuit modifications. During the assembly process make sure to install proper heat-sink to the 7805 voltage regulator. After constructing the circuit download and install ISP Programmer and follow these steps, Open ISP Programmer software package and press "Setup" button to setup the programmer. Select "AEC ISP" as a "ISP Cable Pinout" and press OK Connect MCU to the programmer and power on...