In-system programmer means we can design a programmer circuit using simple parallel port interfacing such that our controller can be directly burned with the program while in the designed system or circuit board.
Following pins of Atmega16 are used in programmer circuit-
SCK: Master Clock output, Slave Clock input pin for SPI channel. When the SPI is enabled as a Slave, this pin is configured as an input regardless of the setting of DDB7.When the SPI is enabled as a Master; the data direction of this pin is controlled by DDB7. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB7 bit.
MISO: Master Data input, Slave Data output pin for SPI channel. When the SPI is enabled as a Master, this pin is configured as an input regardless of the setting of DDB6. When the SPI is enabled as a Slave, the data direction of this pin is controlled by DDB6. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB6 bit.
MOSI: SPI Master Data output, Slave Data input for SPI channel. When the SPI is enabled as a Slave, this pin is configured as an input regardless of the setting of DDB5. When the SPI is enabled as a Master, the data direction of this pin is controlled by DDB5. When the pin is forced by the SPI to be an input, the pull-up can still be controlled by the PORTB5 bit.
Reset Input. A low level on this pin for longer than the minimum pulse length will generate a reset, even if the clock is not running.
Digital supply voltage(+5V).
Ground.
Parallel Port-
Parallel Port interfacing is the simplest method of interfacing. Parallel Port’s are standardized under the IEEE 1284 standard first released in 1994. It has data transfer speed up to 1Mbytes/sec. Parallel port is basically the 25 pin Female connector (DB-25) in the back side of the computer (Printer Port). It has 17 input lines for input port and 12 pins for output port. Out of the 25 pins most pins are Ground and there is data register (8 bit), control register (4 bit) and status register (5 bit).
Figure-Pin diagram of Parallel Port
Following Pins are used in parallel port-
Interfacing -
In programmer circuit pins of parallel port which are above described has to interface with pins of ATmega16 microcontroller which are responsible for in-system programming. The parallel port can be interfaced directly with microcontroller. To avoid reverse current we can use Schottkey diodes as safety precaution for pc motherboard.
Following pins of Parallel Port and ATmega16 are to be interfaced-
Figure-Circuit Diagram of ATmega16 Programmer
SOFTWARES USED:
- WinAVR– WinAVR is open source package in which we use two sub-programs.
- Programmers Notepad
- Mfile.
- Version- 2.0.8.718-basic
- Creator- Simon Steele
- Purpose-
- To write code.
- To compile coding.
- To generate Hex Code.
- To burn Hex code.
The next tutorial will make you aware with how to install and use WinAVR for compiling and burning the program.
Regards:
Aditya Sharma
|