You are on page 1of 25

16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Published in Cyber Explorer

You have 2 free member-only stories left this month. Sign up for Medium and get an extra one

Mustafa Katipoğlu Follow

Jun 29, 2020 · 6 min read · · Listen

Save

8086 MICROPROCESSORS

Learn 8086 Microprocessor With Proteus Circuit


Simulations
8086 examples that we have designed by using Proteus, resources for
understanding 8086 microprocessors

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 1/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Photo by Slejven Djurakovic on Unsplash

While we were in the third class of the college, as computer engineering students, we
had to have a good understanding of the microprocessors. That is why the college
offers a compulsory course which is 8086 microprocessors as part of the Yildiz
Technical University CE curriculum.

In this course, we try to understand the 8086 and design mini circuits which serve as
the starting point to the actual computer architecture design.

Here, together with my close friend ‘Mert Öz’, we have uploaded all the circuit designs
into our GitHub accounts and we would like to share the circuits we have designed for
those who want to better understand Proteus 8086 circuits as well as understanding
8086 in detail.

The main reason we want to share these proteus examples is that when we were taking
the course, there were not any resources that shows these basics of the 8086 circuits.
We had to spend hours understanding little things. We hope you will not waste that

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 2/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

much time while learning and have these circuit designs as an opportunity to start
Open in app Get started
with 8086 circuits.

Let’s now get started with the examples and the circuits designs. Here, my designs and
my friend’s designs are not the same. The problem sets are quite close but they solve
different problems. So I suggest you inspect both of them.

Mert Öz’s Github Repository Link.

My Github Repository Link.

1- 7SEG with Buttons


Here we have 8 buttons in sequence.

We want to light up the following sections of the 7SEGs when buttons being pressed.

Button 1 -> 7SEG a

Button 2 -> 7SEG b

Button 3 -> 7SEG c

Button 4 -> 7SEG d

Button 5 -> 7SEG e

Button 6 -> 7SEG f

Button 7 -> 7SEG g

Button 8 -> 7SEG h

My Solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 3/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Button 1 Pressed: 7SEG a active.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 4/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Button 2 Pressed: 7SEG b active.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 5/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Button 3 Pressed: 7SEG c active.

Mert’s Solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 6/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

2.1- Displaying the Given Binary Number Using 8255


Mert’s Solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 7/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Given binary input is shown in the 7SEG.

2.2- Multiply And Take Half of The Given Binary Input By Using 8255
Here we want to take the double of the given input from the buttons if the toggle shows
1. If the toggle shows 0, then we take half of the given input.

My Solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 8/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Input 2 with Toggle 0

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 9/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Input 2 with Toggle 1

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 10/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Input 4 with Toggle 0

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 11/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Input 4 With Toggle 1

3- 8255 Keypad
In this example, we have 4 pieces 7SEGs and a keypad.

All 7SEGs at first set to 0.

As we type into the keypad, numbers are being saved.

‘#’ takes the last action back(it caches old actions).

Holding on to the start(‘*’) resets all the 7SEGs to 0.

My solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 12/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

At First All 7 SEGs set to 0

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 13/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

As We Type, numbers comes from right to left

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 14/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

We filled 4 of the 7 SEGs with numbers.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 15/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Lets Keep Typing. Later we will take these action back.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 16/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Keep Typing

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 17/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Take the last actions back by pressing #


Open in app Get started

By pressing star, we set all 7SEGs to 0.

4-Double 8255 Input and Output Handshaking


In this circuit, one of the 8255 takes the input from the buttons and sends the buttons it
reads to the second 8255.

The second 8255 takes the input and shows what was being pressed on the 7SEG.

This example does not work properly. It turns out there exists some problem in the
communication of 8255s. But I hope, it still helps you.

My Solution:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 18/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

8255 Handshaking

4.1- Performing arithmetic operations using 8255 in mode-1


Mert’s Solution:

Simple Arithmatic Operations Using 8255 mod 1

5- 8251 Solve Top Secret

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 19/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

In this problem, we need to get the top-secret from a device. The device works as
Open in app Get started
follows:

We first send ‘SR’

The device sends ‘A’

We send ‘D’

The device sends the top-secret in the following format

First, the length of the top-secret which can be either ‘1’, ‘2’ or ‘3’

Then, sends the actual top secret.

After we get the top-secret we send a request to close the communication by


sending ‘ST’.

The device acknowledges us and terminates the communication by sending ‘P’

The following image summarizes the problem:

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 20/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

The way we communicate with the device that has the top secret.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 21/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Open in app Get started

Github Links: My Solution and Mert’s solution

6- 8254 Pulse and Square Wave


In this problem, we generate a pulse and square waves by using 8254. The problems
are different in my solution and Mert’s solution. Check out the GitHub repo to see
different problems.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 22/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

Generate Pulse and Square Waves


Open in app Get started

7- Analog To Digital Converter


Here we have given an analog signal. We need to convert the analog signal into a
digital signal.

It turns out I lost my solution.

Here the Mert Öz’s solution:

Conver The Analog Signal Into Digital

8- 8259 User Defined Interrupts


Here the problem is to increment the value of AX every 15 seconds.

My solution and Mert’s solution:

Every 15 Seconds, 8253 sends an interrupt request to the 8259.

8259 informs the 8086 about the interrupt and then interrupt subroutine runs when
8086 is available.
https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 23/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

The value of the AX register is being incremented when 8086 becomes available
Open in app Get started
and run the interrupt subroutine.

We show the output using 8255 and a 7SEG.

Circuit that increments the value of AX every 15 seconds. 7SEG shows the current value of AX.

Extra Resources For Learning 8086 Processors

These days, it's quite hard to find high-quality 8086 lessons on the internet.

But don't worry, we had these concerns before you and found a perfect resource.

If you don't know assembly language yet and still want to learn 8086 microprocessors,
this course is perfect for you because it also has an assembly course before starting
with the 8086 microprocessors. The course starts from the basics of the assembly up
until advanced topics of the 8086. The price of the course I think is well worth it. (Price
of 2019–20).

By the way, you may have questions like, I already know assembly, wouldn’t it be a
waste of my money to invest in? As it comes into my mind :) I think still worth it if you
https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 24/25
16/11/2022, 18:01 Learn 8086 Microprocessor With Proteus Circuit Simulations | by Mustafa Katipoğlu | Cyber Explorer | Medium

really want to get an A out of the 8086 courses or want to learn the 8086
Open in app Get started
microprocessors.

Before buying the course, I strongly suggest you watch the first lesson of the course.

Introduction to Microprocessors | Bharat Acharya Education

Bharat Acharya Education 8086 Course Link. (I hope the link is not broken when you
see it.)

Contributions To The Github Repository


If you learn the 8086 circuits, you will probably design some circuits on proteus or on
some other program. I strongly suggest you take some time to contribute to the GitHub
repository by adding your designs so that future 8086 learners understand even better
by building upon our collective knowledge.

https://medium.com/cyber-explorer/learn-8086-microprocessor-with-proteus-circuits-3f353ebc1f31 25/25

You might also like