<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://script.spoken-tutorial.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=OpenPLC-version1-with-LDmicro%2FC3%2FCompare-Instructions%2FEnglish</id>
		<title>OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://script.spoken-tutorial.org/index.php?action=history&amp;feed=atom&amp;title=OpenPLC-version1-with-LDmicro%2FC3%2FCompare-Instructions%2FEnglish"/>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;action=history"/>
		<updated>2026-04-30T12:19:42Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.17</generator>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;diff=54525&amp;oldid=prev</id>
		<title>Nancyvarkey at 08:16, 3 December 2020</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;diff=54525&amp;oldid=prev"/>
				<updated>2020-12-03T08:16:26Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;amp;diff=54525&amp;amp;oldid=54479&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>Nancyvarkey</name></author>	</entry>

	<entry>
		<id>https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;diff=54479&amp;oldid=prev</id>
		<title>Priyanka.guntaka123: Created page with &quot; {| style=&quot;border-spacing:0;&quot; | style=&quot;border:1pt solid #000000;padding:0.176cm;&quot;| &lt;center&gt;'''Visual Cue'''&lt;/center&gt; | style=&quot;border:1pt solid #000000;padding:0.176cm;&quot;| &lt;cent...&quot;</title>
		<link rel="alternate" type="text/html" href="https://script.spoken-tutorial.org/index.php?title=OpenPLC-version1-with-LDmicro/C3/Compare-Instructions/English&amp;diff=54479&amp;oldid=prev"/>
				<updated>2020-11-20T21:07:03Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot; {| style=&amp;quot;border-spacing:0;&amp;quot; | style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;&amp;#039;&amp;#039;&amp;#039;Visual Cue&amp;#039;&amp;#039;&amp;#039;&amp;lt;/center&amp;gt; | style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;cent...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&lt;br /&gt;
{| style=&amp;quot;border-spacing:0;&amp;quot;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Visual Cue'''&amp;lt;/center&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &amp;lt;center&amp;gt;'''Narration'''&amp;lt;/center&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 1: &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Welcome to the spoken tutorial on''' Compare instructions.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 2: Learning Objectives&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we will learn about working of&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 3: System Requirements&lt;br /&gt;
&lt;br /&gt;
* Ubuntu 18.04''' '''operating system&lt;br /&gt;
* LDmicro&lt;br /&gt;
* OpenPLC V1 Mainboard&lt;br /&gt;
* 24V, 2A SMPS&lt;br /&gt;
* USBasp programmer&lt;br /&gt;
* Traffic LIght module&lt;br /&gt;
* Switchboard module&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| To record this tutorial I am using:&lt;br /&gt;
&lt;br /&gt;
* '''Ubuntu Linux 18.04''' operating system&lt;br /&gt;
* '''LDmicro'''&lt;br /&gt;
* '''OpenPLC version1 Mainboard'''&lt;br /&gt;
* '''24V, 2A SMPS'''&lt;br /&gt;
* '''USBasp''' programmer&lt;br /&gt;
* '''Traffic Light''' module and&lt;br /&gt;
* '''Switchboard''' module&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 4: Pre-requisites&lt;br /&gt;
&lt;br /&gt;
* Working of Move (MOV) instruction&lt;br /&gt;
* If not, please refer to the relevant tutorials from [https://spoken-tutorial.org/ Home | spoken-tutorial.org]&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* To follow this tutorial, you should know the working of '''Move''' instruction.&lt;br /&gt;
* If not, please refer to the relevant tutorials in this series on this website.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 5: Prerequisites - Hardware setup&lt;br /&gt;
&lt;br /&gt;
hardware-prerequisite.jpg&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect''' SMPS''' and '''USBasp''' to the '''Mainboard''' as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
Keep these connections throughout this tutorial.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6a: Compare instructions&lt;br /&gt;
&lt;br /&gt;
Six types of compare instructions&lt;br /&gt;
&lt;br /&gt;
# equals&lt;br /&gt;
# not equals&lt;br /&gt;
# less than&lt;br /&gt;
# less than or equal&lt;br /&gt;
# greater than&lt;br /&gt;
# greater than or equal&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In '''LDmicro''' we have six types of compare instructions.&lt;br /&gt;
&lt;br /&gt;
They are &lt;br /&gt;
&lt;br /&gt;
# Equals&lt;br /&gt;
# not equals&lt;br /&gt;
# less than&lt;br /&gt;
# less than or equal&lt;br /&gt;
# greater than&lt;br /&gt;
# greater than or equal.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 6b: Compare instructions&lt;br /&gt;
&lt;br /&gt;
* These instructions can be used to compare &lt;br /&gt;
&lt;br /&gt;
* a variable to a variable, &lt;br /&gt;
* variable to a 16-bit signed constant&lt;br /&gt;
&lt;br /&gt;
* Working of these instructions will be similar&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| These instructions can be used to compare a variable to another variable.&lt;br /&gt;
&lt;br /&gt;
Also when we want to compare a variable to a 16-bit signed constant.&lt;br /&gt;
&lt;br /&gt;
Working of these compare instructions will be similar.&lt;br /&gt;
&lt;br /&gt;
But the functioning will be according to their names.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial we’ll learn about compare for equals instruction in detail.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open LDmicro&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us open '''LDmicro.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will create a virtual circular counter using a compare for equals instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Instructions -&amp;gt; Insert Contact &amp;gt;&amp;gt; Place the cursor to the right of the contact &amp;gt;&amp;gt; Click instructions -&amp;gt; Insert OSR &amp;gt;&amp;gt; Place the cursor to the right of OSR &amp;gt;&amp;gt; Click Instructions -&amp;gt; Arithmetic instructions -&amp;gt; Insert ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a '''Contact.'''&lt;br /&gt;
&lt;br /&gt;
To the right of it insert an '''OSR'''&lt;br /&gt;
&lt;br /&gt;
To the right of '''OSR''' insert an '''ADD''' instruction as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the contact &amp;gt;&amp;gt; Type switch in the name box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the Contact as '''‘switch’'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on ADD&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''ADD''' instruction.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Type in the destination and ‘is set as := ‘ columns ‘vcounter’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Set the destination and first operand to ‘'''vcounter’''' meaning virtual counter.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Second operand is by default 1.&lt;br /&gt;
&lt;br /&gt;
Don’t change that.&lt;br /&gt;
&lt;br /&gt;
Click the OK button&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Edit -&amp;gt; Insert Rung after&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below as shown. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will insert '''Compare for equals''' and '''Move''' instruction in the new rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung &amp;gt;&amp;gt; Click Instructions -&amp;gt; Comparison operators -&amp;gt; Insert EQU &amp;gt;&amp;gt; place the cursor to the right of the contact &amp;gt;&amp;gt; Click Instructions -&amp;gt; Insert MOV&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung .&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then '''Comparison operators.'''&lt;br /&gt;
&lt;br /&gt;
Select '''Insert EQU.'''&lt;br /&gt;
&lt;br /&gt;
Next place the cursor to the right of the compare for equals instruction.&lt;br /&gt;
&lt;br /&gt;
Click on '''Instructions''' and then select '''Insert MOV.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Compare for equals &amp;gt;&amp;gt; Set the first column to vcounter &amp;gt;&amp;gt; Set the second column to 0 &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on '''Compare for equals.'''&lt;br /&gt;
&lt;br /&gt;
Compare the ‘'''vcounter’''' variable with 4.&lt;br /&gt;
&lt;br /&gt;
That is, set the first column to '''‘vcounter’''' and the second one to 4.&lt;br /&gt;
&lt;br /&gt;
Click on the OK button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on the MOV instruction &amp;gt;&amp;gt; Type vcounter in the destination column &amp;gt;&amp;gt; Type 0 in the source column &amp;gt;&amp;gt; Click the OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on the '''Move''' instruction.&lt;br /&gt;
&lt;br /&gt;
Set the '''Destination''' variable as '''‘vcounter’''' and '''Source''' variable as 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now check the working of this logic.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click Simulate -&amp;gt; Simulation mode &amp;gt;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Click Simulate -&amp;gt; Real-time simulation&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us turn on the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Simulation mode.'''&lt;br /&gt;
&lt;br /&gt;
Next, start real-time simulation as shown.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of Xswitch and counter in the I/O list&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Initially, the state of '''Xswitch''' and '''vcounter''' are 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Change the state of '''Xswitch''' to 1.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the state of vcounter&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe the state of '''vcounter''' changes to 1.&lt;br /&gt;
&lt;br /&gt;
The state of '''vcounter''' increases by 1 every time there is a high to low transition in '''Xswitch'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on ‘Xswitch’ for 5 more times&lt;br /&gt;
&lt;br /&gt;
Highlight the state of vcounter.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Keep changing the state of '''Xswitch''' from 0 to 1 and back to 0.&lt;br /&gt;
&lt;br /&gt;
We can observe '''vcounter''' takes values 0, 1, 2, 3 and then goes back to 0.&lt;br /&gt;
&lt;br /&gt;
That is like a circular counter with count 3.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| For visualization purpose we will glow a LED whenever the '''vcounter''' value is 0.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Simulate &amp;gt;&amp;gt; Click Halt Simulation &amp;gt;&amp;gt; Click Simulation Mode&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now, turn off the simulation mode.&lt;br /&gt;
&lt;br /&gt;
For that, click '''Simulate''' and then on '''Halt Simulation.'''&lt;br /&gt;
&lt;br /&gt;
Then click '''Simulate''' and '''Simulation Mode.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Visual cue&lt;br /&gt;
&lt;br /&gt;
Click Edit -&amp;gt; Insert rung after&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Insert a rung below the second rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place the cursor in the new rung &amp;gt;&amp;gt; Click on Instructions -&amp;gt; Comparison Operators -&amp;gt; Insert EQU &amp;gt;&amp;gt; Place the cursor to the right of EQU &amp;gt;&amp;gt; Click on Instructions -&amp;gt; Insert Coil&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Place a '''Compare for equals''' and a '''Coil''' in the new rung.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on EQU instruction &amp;gt;&amp;gt; Type vcounter in the first box &amp;gt;&amp;gt; Type 0 in the second box &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double click on Compare for equals.&lt;br /&gt;
&lt;br /&gt;
Compare the ‘'''vcounter’''' variable with 0.&lt;br /&gt;
&lt;br /&gt;
That is, set the first column to '''‘vcounter’''' and the second one to 0.&lt;br /&gt;
&lt;br /&gt;
Click on the OK button.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Ynew &amp;gt;&amp;gt; Type LED in the name box &amp;gt;&amp;gt; Select SET-only option &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Rename the '''Coil''' as '''LED.''' &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Highlight the third rung&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus this will energise the '''YLED''' whenever the '''vcounter''' value is 0. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Now let us compile the logic.&lt;br /&gt;
&lt;br /&gt;
The detailed steps on how to compile and save the logic are explained in the earlier tutorials.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Settings &amp;gt;&amp;gt; Click on Microcontroller &amp;gt;&amp;gt; Select AVR ATmega16 40-PDIP &lt;br /&gt;
&lt;br /&gt;
Click on Settings &amp;gt;&amp;gt; Click on MCU parameters &amp;gt;&amp;gt; Change Crystal frequency to 16&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on '''Settings''' and select the microcontroller '''AVR ATmega16 40-PDIP.''' &lt;br /&gt;
&lt;br /&gt;
Adjust its parameters as shown here.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Double-click on Xswitch in I/O list &amp;gt;&amp;gt; Select PC0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
&lt;br /&gt;
Double-click on YLED in I/O list &amp;gt;&amp;gt; Select PA0 &amp;gt;&amp;gt; Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Assign pin '''PC0''' to '''Xswitch''' and '''PA0''' to '''YLED'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on Compile &amp;gt;&amp;gt; Click on Compile &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘compareequals.hex’ &amp;gt;&amp;gt; Click on Save.&lt;br /&gt;
&lt;br /&gt;
Click OK button&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Compile the logic as '''‘compareequals.hex’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Click on File &amp;gt;&amp;gt; Click on Save &amp;gt;&amp;gt; Go to Desktop/LDmicro folder &amp;gt;&amp;gt; Rename it as ‘compareequals.ld’ &amp;gt;&amp;gt; Click on Save&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Then save the ladder diagram as '''‘compareequals.ld’.'''&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We will now see the working of this logic on hardware.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect Mainboard to PC using USBasp&lt;br /&gt;
&lt;br /&gt;
laptop-usbasp.jpg&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect the '''Mainboard''' to your laptop using '''USBasp'''.&lt;br /&gt;
&lt;br /&gt;
Turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open terminal &amp;gt;&amp;gt; Type cd Desktop/LDmicro &amp;gt;&amp;gt; Press ENTER &amp;gt;&amp;gt; type ‘'''avrdude -c usbasp -p m16 -U flash:w:compareequals.hex’ '''&amp;gt;&amp;gt; Press ENTER&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Open the Terminal by pressing '''CTRL+ALT+T''' keys simultaneously.&lt;br /&gt;
&lt;br /&gt;
Go to the folder where you have saved the hex file.&lt;br /&gt;
&lt;br /&gt;
Type the command as shown to upload the hex file to the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
Remove the '''USBasp''' connection from the laptop.&lt;br /&gt;
&lt;br /&gt;
This will prevent any hardware damage.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Let us see the connection details now. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' pin of the red LED of '''Traffic Light''' module to '''GND''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Then connect '''+5V pin''' of the red LED to '''PA0''' pin of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| compareequals.png&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Connect '''GND''' and 5V of '''Switchboard''' to GND and 5V of the '''Mainboard''' respectively.&lt;br /&gt;
&lt;br /&gt;
Then connect '''NO1''' of the '''Switchboard''' to '''PC0''' of the '''Mainboard'''.&lt;br /&gt;
&lt;br /&gt;
Make the connections as shown in the picture.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| After making all the connections properly, turn on the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| We can observe that the LED will be glowing initially.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| It will turn off once the '''NO1''' is pressed.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The red LED will glow again after pressing '''NO1''' for 3 more times.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Thus LED glow indicates that the count value of the counter is 0. &lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Turn off the power supply.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Try out the remaining Compare instructions on your own.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This brings us to the end of this tutorial.&lt;br /&gt;
&lt;br /&gt;
Let us summarize.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 7: Summary&lt;br /&gt;
&lt;br /&gt;
In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| In this tutorial, we learnt about&lt;br /&gt;
&lt;br /&gt;
* Compare instructions&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 8: Assignment&lt;br /&gt;
&lt;br /&gt;
Try to &lt;br /&gt;
&lt;br /&gt;
# Turn on a LED whenever the count process is ON and &lt;br /&gt;
# Turn off when count value becomes zero&lt;br /&gt;
&lt;br /&gt;
Hint: Use '''‘greater than’ '''compare instruction to turn on the LED.&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| As an assignment, try to &lt;br /&gt;
&lt;br /&gt;
# Turn on a LED whenever the count process is ON and &lt;br /&gt;
# Turn off the same LED when count value becomes zero.&lt;br /&gt;
&lt;br /&gt;
Hint: Use '''‘greater than’ '''compare instruction to turn on the LED.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 9:&lt;br /&gt;
&lt;br /&gt;
About Spoken Tutorial project&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The video at the following link summarises the Spoken Tutorial project.&lt;br /&gt;
&lt;br /&gt;
Please download and watch it.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 10:&lt;br /&gt;
&lt;br /&gt;
Spoken Tutorial workshops&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| The''' Spoken Tutorial Project''' team:&lt;br /&gt;
&lt;br /&gt;
* conducts workshops using spoken tutorials and&lt;br /&gt;
* gives certificates on passing online tests.&lt;br /&gt;
&lt;br /&gt;
For more details, please write to us&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 11:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| &lt;br /&gt;
* Please post your timed queries in this forum.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 12:&lt;br /&gt;
&lt;br /&gt;
Forum for specific questions:&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Do you have any general / technical questions on OpenPLC?&lt;br /&gt;
&lt;br /&gt;
Please visit the FOSSEE forum and post your question.&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 13:&lt;br /&gt;
&lt;br /&gt;
Acknowledgement&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Spoken Tutorial Project is funded by MHRD, Government of India&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| Slide 14:&lt;br /&gt;
&lt;br /&gt;
Thank you slide&lt;br /&gt;
| style=&amp;quot;border:1pt solid #000000;padding:0.176cm;&amp;quot;| This tutorial has been contributed by FOSSEE and Spoken Tutorial Project, IIT Bombay.&lt;br /&gt;
&lt;br /&gt;
And this is Harsha Priyanka from FOSSEE team, signing off.&lt;br /&gt;
&lt;br /&gt;
Thanks for watching.&lt;br /&gt;
&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Priyanka.guntaka123</name></author>	</entry>

	</feed>