This is actually the final project for the course CSE 612 (Computer Interfacing and Microcontroller Lab) at Department of Computer Science and Engineering, University of Chittagong. In this presentation, we have been told to interface a simple calculator with atmega 8 microcontroller, a 4 * 4 keypad, and two 7 segment LED displays. The objective of this project is to learn how to program a microcontroller. In order to accomplish the result, we write a C program to control the software behaviour of the calculator. We also have a design file which is used for software simulation by the Proteus 8.6+ professional.
Before starting with this project, we need some softwares and some hardwares.
The hardwares required for this project are:
- AVR Programmer burner
- Atmega 8 microcontroller
- 4 * 4 small calculator keypad
- 7 segment display (qty: 2)
- Connecting wires
- Breadboard
- Power adapter
- Install avr-gcc, avr-libc, avrdude, gcc, make
- Install WinAVR for convenience
- Atmel Studio
- Proteus 8.6+ professional to run the simulation
- Clone the github repo.
git clone https://github.com/ludehsar/SimpleCalculator.git
-
Load the hex file of the code to the microcontroller using avr programmer burner.
-
Now, connect the keypad and 7 segment displays with the microcontroller according to the following figure:
Note: The pin configuration might not be accurate for the microcontroller. See https://components101.com/microcontrollers/atmega8-avr for pin configuration of the atmega 8 microcontroller. If the image is not clear, then, PB0-PB7 are connected with the calculator, PC0-PC5 are connected with the first 6 ports of the first 7 segment display, PD7 is connected with the 7-th ports of the first 7 segment display. PD0-PD6 are connected with ports a-g of the second 7 segment display. Don't forget to configure the vcc and the grounds. The 7 segment displays are common cathode, so the com ports will be connected to ground. For convenience, the pin configuration of the 7 segment displays can be found here.
-
Connect the power adapter and you are good to go.
-
In order to simulate the design file, open Proteus 8.6+ professional and open Calculator.pdsprj. Then hit the play button.
See the open issues for a list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are greatly appreciated.
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
- Md. Rashedul Alam Anik - mdraanik12@gmail.com
- Sajib Kumar Das - sajibkumardas97@gmail.com
- Monayam Reshad - reshadmrrr@gmail.com
- Muhammad Shahriar Alam - shahriarcsecu33@gmail.com
- Gazi Mohaimin Iqbal - mohaiminiqbal21@gmail.com
Project Link: https://github.com/ludehsar/SimpleCalculator