<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-8114451643814986774</id><updated>2012-01-11T20:24:57.840+02:00</updated><category term='PIC 16F84 Motor Control'/><category term='Buy Electronic Kits in Egypt'/><category term='LED flasher circuit'/><category term='Egypt'/><category term='16F84 RS232'/><category term='Proteus ISIS 7'/><category term='Microcontroller'/><category term='PWM Microcontroller Motor control'/><category term='Microchip PIC'/><category term='PIC 16F917'/><category term='Embedded Systems Committee in Egypt'/><category term='Electronic circuit'/><category term='LED flasher C code'/><category term='PSoC 3 first touch kit'/><category term='Computer'/><category term='Embedded'/><category term='Microcontroller Tutorial Embedded Egypt'/><category term='16F84 TV signal'/><category term='Proteus'/><category term='16F84 LCD Assembly project'/><category term='PIC 16f84 LED flasher C code'/><category term='16F84 Love'/><category term='16F84 Persistence Of Vision 7 segment Dsiplay'/><category term='PIC 16f84 IR LED'/><category term='Embedded Egypt'/><category term='Embedded Software Companies in Egypt'/><category term='Infrared LED'/><category term='PC'/><category term='PWM PIC 16F84'/><category term='RX62N'/><category term='16F84 Tetris'/><category term='IR Led'/><category term='PIC 16f84 sound'/><category term='Renesas HTS 2008'/><category term='Button C code'/><category term='16F917 ADC Module'/><category term='16F84 AirText'/><category term='Analog to Digital Module'/><category term='IR receiver module'/><category term='16F84 VGA interface'/><category term='LED chaser'/><category term='Embedded Systems Education in Egypt'/><category term='PIC 16F917 DC motor speed control'/><category term='lookup table PIC 16F84 sine wave generation'/><category term='Stepper Motor Microcontroller'/><category term='Alexandria'/><category term='Stepper Motor 16F84'/><category term='16F84 Com port'/><category term='Data Recovery Engineer in Egypt'/><category term='16f84'/><category term='16F84 Air Display'/><category term='Button Input'/><category term='PWM C code'/><category term='PIC 16f84'/><category term='Microcontroller VGA project'/><category term='IR reception.'/><category term='Labcenter'/><category term='PIC 16f84 TMR0'/><category term='Educational Robotic Kits in Egypt'/><category term='PWM Duty Cycle'/><category term='In love with a Microcontroller'/><category term='interrupt'/><category term='PWM Mood light'/><category term='PicProm'/><category term='Microcontroller Motor control'/><category term='Embedded Systems Companies in Egypt'/><category term='Free Embedded systems trainning in Egypt'/><category term='16F84 serial communication'/><category term='16F84 POV LED Display'/><category term='IR transmission'/><category term='Data Recovery in Egypt'/><category term='Proteus 7 DC Motor control'/><category term='PIC16F917 Analog-to-Digital Module'/><category term='Embedded companies in Egypt'/><category term='16F917 Gyproscope interface'/><category term='16f84 tone generation'/><category term='PSoC  Programmable System on Chip'/><category term='ISIS'/><category term='PWM DC Motor control'/><category term='16F84 LCD interface'/><category term='16F84 Video output'/><category term='16F84 Persistence Of Vision'/><category term='MPASMwin'/><category term='PSoC Rocks'/><category term='PIC 16F917 programmer'/><category term='Embedded Systems course in egypt'/><category term='Microcontroller companies in Egypt'/><category term='PIC16F917 Analog-to_digital converter Module'/><category term='16F84 serial port.'/><category term='PIC 16f84 timer'/><category term='PWM Motor control'/><category term='layout'/><category term='MicroMonitor'/><category term='16f917 CCP Module configuration'/><category term='Moway  Robots'/><category term='7 Segment POV'/><category term='Mattel'/><category term='Microcontroller course in Egypt'/><category term='16F84A VGA Output'/><category term='knight rider 16f84 chaser'/><category term='Rate Gyroscope'/><category term='PCB'/><category term='PIC 16F917 Mood Light'/><category term='Simulator'/><category term='7 segment display C'/><category term='16f84 tones'/><category term='Stepper Motor'/><category term='PIC 16f84 timer interrupt C'/><category term='Multichannel Oscilloscope'/><category term='PIC 16F84 Mood Light'/><category term='PIC 16f84 sine wave generation'/><category term='Microchip PIC 16F917'/><category term='Disaster Recovery in Egypt'/><category term='Accelerometer'/><category term='Renesas RDK Design Contest 2010'/><category term='Stepper Motor Control'/><category term='Cypress PSoC 3'/><category term='16f84 chaser'/><category term='Disaster Recovery'/><category term='16f84 tone generator'/><category term='Renesas'/><category term='List of Embedded Systems Companies in Egypt'/><category term='16F84 Air Text'/><title type='text'>Embedded Systems in Egypt</title><subtitle type='html'>Embedded systems design, Microchip PIC , Microcontroller , Electronics , Software , Computer , PC,Embedded Systems in Egypt , Microcontroller companies in Egypt , Microcontroller Tutorial for beginners, Microchip Microcontrollers tutorial , Microcontrollers made easy, Microcontroller DIY, DIY,embedded systems,embedded system , open source embedded software,list of embedded systems companies in egypt</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>36</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-6498809614658332228</id><published>2011-10-25T00:52:00.005+02:00</published><updated>2011-10-25T00:57:52.125+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller Tutorial Embedded Egypt'/><title type='text'>Microcontroller Tutorial Embedded Egypt</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2008/03/embedded-software-in-egypt.html" title="Embedded Software in Egypt"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0T4KuPa7fI/AAAAAAAAALg/wvfP2XrTV8M/s200/embedded+egypt.JPG" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}   catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/11/yaw-rate-gyroscope-interface-to.html" title="Yaw Rate Gyroscope PIC 16F917"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/-TWNaN7e2CXw/TqWrbQZw_oI/AAAAAAAAAh4/hngxzZS0Lvo/s1600/ADC16F917%2BCircuit.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2011/05/gyro-horizon-renesas-rx62n.html" title="Gyro Horizon. Renesas RX62N Kit"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/-_iCcfUXZnLg/Tdk0Pk5vwpI/AAAAAAAAAbU/2Yck6vm-Mug/s1600/Renesas%2BGyro%2BHorizon%2Bv2.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/11/16f84a-stepper-motor-control.html" title="16F84 Stepper Motor Control"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TPPzn1ZDAlI/AAAAAAAAAX8/zC8CbpN5Xss/s1600/Stepper.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/07/16f84-serial-communications.html" title="16F84 SERIAL COMMUNICATIONS"&gt; &lt;/a&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/07/16f84a-vga-output.html" title="16F84 VGA output"&gt; &lt;/a&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/07/hacking-infrared-with-pic-16f84a.html" title="Infra Red 16F84A"&gt; &lt;/a&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/06/7-segment-pov_901.html" title="7 Segment POV"&gt; &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2008/12/microcontroller-tutorial-i-decided-to.html" title="Microcontroller Tutorial"&gt;                     &lt;/a&gt;        &lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/02/psoc-rocks.html" title="PSoC Rocks !!"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S21qejNobrI/AAAAAAAAANw/2_TAfasSvSs/s200/PSoC+Rocks.jpg" alt="" id="BLOGGER_PHOTO_ID_5435117398387093170" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/03/embedded-systems-committee.html" title="Embedded Systems Committee"&gt;  &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/12/16f84-pov-airtext.html" title="POV (Persistence Of Vision)"&gt;   &lt;/a&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/06/7-segment-pov_901.html" title="7 Segment POV"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TA0eA6YorCI/AAAAAAAAATc/h44D9cCplj8/s1600/06.2010-009.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/07/16f84-serial-communications.html" title="16F84 SERIAL COMMUNICATIONS"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TKTsPIpszHI/AAAAAAAAAXc/Etg9dcT7xRM/s1600/Image0549.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/07/16f84a-vga-output.html" title="16F84 VGA output"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TDzYfjbiPRI/AAAAAAAAAU8/n6bYi2ATvZk/s1600/Image0438.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt; &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/02/direct-digital-synthesis.html" title="Direct Digital Synthesis"&gt;       &lt;/a&gt;&lt;a onblur="try     {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/02/direct-digital-synthesis.html" title="Direct Digital Synthesis"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S0d8e9_0NLI/AAAAAAAAAMA/DEXXuAkCAwI/s200/DDS.JPG" alt="" id="BLOGGER_PHOTO_ID_5424441147671196850" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/06/led-there-be-light.html" title="LED Chaser"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0d_8lgP2JI/AAAAAAAAAMY/B7U7oHeR7mE/s200/anim40.png" alt="" id="BLOGGER_PHOTO_ID_5424444955027298450" border="0" /&gt; &lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/it-all-started-with-computer-i-started.html" title="It all started with the computer"&gt; &lt;/a&gt;&lt;a onblur="try     {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2010/05/i-love-pic-16f84-lcd-to-pic-16f84.html" title="LCD Interface to PIC 16F84"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S-WSTF-wzYI/AAAAAAAAARc/ZJ-Gf9s6BRI/s320/LCD.JPG" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/04/microcontroller-and-success-true-story.html" title="Microcontroller and Success : A true Story"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S9r49eeKcqI/AAAAAAAAAQM/hO6jDW5a1bk/s1600/design_chal.gif" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/03/i-wish-i-met-you-in-person.html" title="Introduction to Islam"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S0d_D4pfLjI/AAAAAAAAAMQ/A16KwdcEiO4/s200/muslim.jpg" alt="" id="BLOGGER_PHOTO_ID_5424443980913782322" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}    catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/11/pic-16f84-tetris-video-game.html" title="PIC 16F84 Tetris Video Game"&gt; &lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S0d_9KZrEUI/AAAAAAAAAMo/mJQWJhSeKOk/s200/tetris_big.jpg" alt="" id="BLOGGER_PHOTO_ID_5424444964931834178" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/04/dc-motor-pwm-control.html" title="DC MOTOR PWM CONTROL"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S0d_9Cu_-iI/AAAAAAAAAMw/iPLQY1FJ3H8/s200/PWM+motor.JPG" alt="" id="BLOGGER_PHOTO_ID_5424444962873801250" border="0" /&gt;&lt;/a&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/09/16f917-ccp-block-pwm.html" title="16F917 CCP Block PWM"&gt; &lt;/a&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/12/16f84-pov-airtext.html" title="POV (Persistence Of Vision)"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S0dymrCqTCI/AAAAAAAAAL4/cegbcYNBZk0/s200/12.2009-011.jpg" alt="" id="BLOGGER_PHOTO_ID_5424430284905532450" border="0" /&gt; &lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2008/12/it-all-started-with-computer-i-started.html" title="It all started with the computer"&gt;                &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/09/16f917-ccp-block-pwm.html" title="16F917 CCP Block PWM"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S0iSRQ8YKgI/AAAAAAAAANI/BO7WVbVb9JM/s200/PWMccp.JPG" alt="" id="BLOGGER_PHOTO_ID_5424746576471403010" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/it-all-started-with-computer-i-started.html" title="It all started with the computer"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S0T5VzuGVHI/AAAAAAAAALo/2sfwLvRx2k4/s200/aquarius.jpg" alt="" id="BLOGGER_PHOTO_ID_5423734004317049970" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/getting-started-with-microcontroller.html" title="Getting Started With Microcontroller Programming"&gt; &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/01/building-your-first-application.html" title="Building your first circuit application"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0d_9UGgQVI/AAAAAAAAAM4/7GOr4TIG6c4/s200/picConnection.JPG" alt="" id="BLOGGER_PHOTO_ID_5424444967535788370" border="0" /&gt;&lt;/a&gt; &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/04/information-disaster-recovery.html" title="Information Disaster Recovery"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S8ndTVAKbSI/AAAAAAAAAOQ/zrJznawwvpY/s1600/data+recovery.jpg" alt="" id="BLOGGER_PHOTO_ID_5423732714356010482" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/getting-started-with-microcontroller.html" title="Getting Started With Microcontroller Programming"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0iSRo9-MEI/AAAAAAAAANQ/OO3a0cCx2JQ/s200/SER_PIC.JPG" alt="" id="BLOGGER_PHOTO_ID_5424746582920540226" border="0" /&gt;  &lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2009/07/pic-16f84-sound-generation.html" title="PIC 16F84 Sound Generation"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0d_8_Iyg6I/AAAAAAAAAMg/WZe3dc29fdY/s200/PIC+Doorbell.JPG" alt="" id="BLOGGER_PHOTO_ID_5424444961908229026" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/microcontroller-tutorial-i-decided-to.html" title="Microcontroller Tutorial"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S0T9nWb9x5I/AAAAAAAAALw/K-W8wqTttUI/s200/pic_16f84_sm.jpg" alt="" id="BLOGGER_PHOTO_ID_5423738703740520338" border="0" /&gt;&lt;/a&gt;&lt;span style="text-decoration: underline;"&gt; &lt;/span&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/07/new-microcontroller-chip.html" title="Microchip PIC 16F917"&gt; &lt;/a&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/10/moway-robot.html" title="Moway robot"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S0d_DhFnn5I/AAAAAAAAAMI/HeTylNJeKgI/s200/galeria_08.jpg" alt="" id="BLOGGER_PHOTO_ID_5424443974589325202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e)  {}" href="http://embedded-egypt.blogspot.com/2010/03/embedded-systems-committee.html" title="Embedded Systems Committee"&gt; &lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S5lRttKgk3I/AAAAAAAAAOI/n_e9JlrRtpc/s200/ESC.jpg" alt="" id="BLOGGER_PHOTO_ID_5423738703740520338" border="0" /&gt; &lt;/a&gt;&lt;a onblur="try    {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://embedded-egypt.blogspot.com/2009/07/hacking-infrared-with-pic-16f84a.html" src="http://1.bp.blogspot.com/_N66od8KlQks/SmTX1noMfxI/AAAAAAAAAIs/squVoC1C3Dg/s1600-h/remote.JPG" title="Infra Red 16F84A"&gt;&lt;img style="cursor: pointer; width: 80px; height: 80px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SmTX1noMfxI/AAAAAAAAAIs/squVoC1C3Dg/s320/remote.JPG" border="0" /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e)  {}" href="http://embedded-egypt.blogspot.com/2008/12/it-all-started-with-computer-i-started.html" title="It all started with the computer"&gt;         &lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-6498809614658332228?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/6498809614658332228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=6498809614658332228&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/6498809614658332228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/6498809614658332228'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2011/10/microcontroller-tutorial-embedded-egypt.html' title='Microcontroller Tutorial Embedded Egypt'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_N66od8KlQks/S0T4KuPa7fI/AAAAAAAAALg/wvfP2XrTV8M/s72-c/embedded+egypt.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1743119293977630773</id><published>2011-10-23T18:15:00.003+02:00</published><updated>2011-10-27T18:37:26.127+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC16F917 Analog-to-Digital Module'/><category scheme='http://www.blogger.com/atom/ns#' term='Analog to Digital Module'/><category scheme='http://www.blogger.com/atom/ns#' term='16F917 ADC Module'/><category scheme='http://www.blogger.com/atom/ns#' term='16F917 Gyproscope interface'/><category scheme='http://www.blogger.com/atom/ns#' term='Rate Gyroscope'/><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC 16F917'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC16F917 Analog-to_digital converter Module'/><title type='text'>Yaw Rate Gyroscope interface to PIC16F917 ( Analog-to-Digital converter Built-in Module )</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;br /&gt;In this post we will study the ADC ( Analog-to-Digital ) Module of the Microcontroller PIC16F917 . We will study a real circuit of PIC16F917 interfacing to a semiconductor Gyroscope.&lt;br /&gt;&lt;br /&gt;The Gyroscope is a motion sensor that senses tilt in a certain direction . The used sensor is a yaw rate sensor ( free sample from Analog Devices . The Gyroscope ADXRS613 was sent in an evaluation package EVAL-ADXRS613 ) . Yaw means rotation around the vertical access . And rate means the acceleration of this rotational motion.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-wJg5dxhAlvw/TqWrb4vKH2I/AAAAAAAAAig/gVOznYwvhOs/s1600/photo.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://1.bp.blogspot.com/-wJg5dxhAlvw/TqWrb4vKH2I/AAAAAAAAAig/gVOznYwvhOs/s400/photo.JPG" alt="" id="BLOGGER_PHOTO_ID_5667124201690636130" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0Byhyj_-YLEr1Y2ZlZjhiYTAtZWM0Mi00ZjAyLWFiZWQtMTk2ZjAyZWFkOWMz&amp;amp;hl=en_US"&gt;&lt;span style="font-size:130%;"&gt;This is Microchip PIC 16F917 Microcontroller&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;The output from this sensor is analog signal which represents the Yaw rate in certain direction ( Left or Right ).&lt;br /&gt;&lt;br /&gt;The analog signals are converted in the ADC module of the PIC16F917 and are represented on a LED column according to the yaw rate and direction.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The program is very simple and straight forward. It starts by configuring the ports of the Microcontroller for input and output. Then the ADC Module is also configured ( Channel , sampling rate and result data format ).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Then the infinite loop of the program starts which contains the step of&lt;br /&gt;&lt;br /&gt;starting the conversion ,&lt;br /&gt;&lt;br /&gt;waiting for conversion to complete  and&lt;br /&gt;&lt;br /&gt;displaying the result on the LEDs.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;When the circuit moves in clock wise direction , number of LEDs in one half of LEDs column illuminate according to the rate of change in angular motion.&lt;br /&gt;&lt;br /&gt;And When the circuit moves in counter clock wise direction , the other half of the LEDs illuminate indicating change in direction and indicating rate of change in angular motion.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-4rzeErNIOsc/TqWrcbJyfOI/AAAAAAAAAio/rG1WLFfm5CE/s1600/photo%25282%2529.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 300px;" src="http://3.bp.blogspot.com/-4rzeErNIOsc/TqWrcbJyfOI/AAAAAAAAAio/rG1WLFfm5CE/s400/photo%25282%2529.JPG" alt="" id="BLOGGER_PHOTO_ID_5667124210929138914" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the Gyroscope and its datasheet file . ADXRS613&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0Byhyj_-YLEr1MTIwOTc0MDctMWM4OS00YzczLWIxMTktMTNkZmJkMzY3MDI5&amp;amp;hl=en_US"&gt;&lt;span style="font-size:130%;"&gt;Evaluation Datasheet EVAL-ADXRS613&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-WVC962Z9FrU/TqWrbtYn53I/AAAAAAAAAiM/ptM_4rH-9P4/s1600/Gyroscope%2BPost.bmp"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 306px;" src="http://1.bp.blogspot.com/-WVC962Z9FrU/TqWrbtYn53I/AAAAAAAAAiM/ptM_4rH-9P4/s400/Gyroscope%2BPost.bmp" alt="" id="BLOGGER_PHOTO_ID_5667124198643328882" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the circuit diagram&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://1.bp.blogspot.com/-lIyyBSaqnYE/TqXISNCBhFI/AAAAAAAAAi4/Cyl5ZcUUnCw/s1600/photo.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 300px; height: 400px;" src="http://1.bp.blogspot.com/-lIyyBSaqnYE/TqXISNCBhFI/AAAAAAAAAi4/Cyl5ZcUUnCw/s400/photo.JPG" alt="" id="BLOGGER_PHOTO_ID_5667155921176986706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://1.bp.blogspot.com/-TWNaN7e2CXw/TqWrbQZw_oI/AAAAAAAAAh4/hngxzZS0Lvo/s1600/ADC16F917%2BCircuit.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 300px; height: 400px;" src="http://1.bp.blogspot.com/-TWNaN7e2CXw/TqWrbQZw_oI/AAAAAAAAAh4/hngxzZS0Lvo/s400/ADC16F917%2BCircuit.jpg" alt="" id="BLOGGER_PHOTO_ID_5667124190863490690" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is a picture of the real circuit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-9cccda969e42e865" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v19.nonxt8.googlevideo.com/videoplayback?id%3D9cccda969e42e865%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D421075CBFF635383F8123F3C8C6C5860B2856EBB.25A191FF39C23A7D667A03865A5F2FA201129B6F%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D9cccda969e42e865%26offsetms%3D5000%26itag%3Dw160%26sigh%3DmY2QtceqVwZ-WN4CnfUGFTtSQz0&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v19.nonxt8.googlevideo.com/videoplayback?id%3D9cccda969e42e865%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D421075CBFF635383F8123F3C8C6C5860B2856EBB.25A191FF39C23A7D667A03865A5F2FA201129B6F%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D9cccda969e42e865%26offsetms%3D5000%26itag%3Dw160%26sigh%3DmY2QtceqVwZ-WN4CnfUGFTtSQz0&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;/div&gt; &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="http://www.youtube.com/watch?v=LraBA6oD1jI"&gt;&lt;span style="font-size:130%;"&gt;http://www.youtube.com/watch?v=LraBA6oD1jI&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;And this is a video of the circuit in motion&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="https://docs.google.com/viewer?a=v&amp;amp;pid=explorer&amp;amp;chrome=true&amp;amp;srcid=0Byhyj_-YLEr1NGIzZDJmZDMtODNjNy00N2I5LWFiNmEtNDgxMDI3MjMyMDU3&amp;amp;hl=en_US"&gt;You can find the code and simulation files on this link&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/-09ErLwmP_e4/TqWrbZKR8YI/AAAAAAAAAiE/UpKABaXIPHc/s1600/ADC16F917.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 231px;" src="http://2.bp.blogspot.com/-09ErLwmP_e4/TqWrbZKR8YI/AAAAAAAAAiE/UpKABaXIPHc/s400/ADC16F917.JPG" alt="" id="BLOGGER_PHOTO_ID_5667124193214460290" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the circuit as shown on Proteus 7 simulation environment&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;The Gyroscope is replaced in simulation by a variable resistance because Proteus 7 does not contain a Gyroscope model.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a target="_blank" href="http://arabic-embedded-egypt.blogspot.com/2010/11/blog-post.html"&gt;&lt;span style="font-size:130%;"&gt;Read this post in Arabic        اقرأ هذه المقالة باللغة العربية&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1743119293977630773?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1743119293977630773/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1743119293977630773&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1743119293977630773'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1743119293977630773'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/11/yaw-rate-gyroscope-interface-to.html' title='Yaw Rate Gyroscope interface to PIC16F917 ( Analog-to-Digital converter Built-in Module )'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-wJg5dxhAlvw/TqWrb4vKH2I/AAAAAAAAAig/gVOznYwvhOs/s72-c/photo.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1408183537221461695</id><published>2011-05-22T17:46:00.005+02:00</published><updated>2011-10-27T18:39:43.228+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller Tutorial Embedded Egypt'/><title type='text'>Microcontroller Tutorial Embedded Egypt</title><content type='html'>&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1408183537221461695?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1408183537221461695/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1408183537221461695&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1408183537221461695'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1408183537221461695'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2011/05/microcontroller-tutorial-embedded-egypt.html' title='Microcontroller Tutorial Embedded Egypt'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-4126194499651514892</id><published>2011-05-21T21:58:00.014+02:00</published><updated>2011-05-22T18:11:41.589+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Accelerometer'/><category scheme='http://www.blogger.com/atom/ns#' term='Renesas RDK Design Contest 2010'/><category scheme='http://www.blogger.com/atom/ns#' term='RX62N'/><title type='text'>Gyro Horizon.  Renesas RX62N Kit</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;br /&gt;In this post, we 'll show an advanced kit from Renesas  based on a modern microcontroller RX62N .&lt;br /&gt;&lt;br /&gt;I received this kit by  participation in Renesas Design Contest 2010. The kit has various types  of sensors and interfaces to the outer world that cannot be makes you  wonder how to use them all in one application. For example, it contains a  3D accelerometer and a temperature sensor, USB , CAN , Ethernet and  RS-232 interfaces and an alphanumeric LCD.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://1.bp.blogspot.com/-80RXNAZhMO0/Tdk0PkA_9cI/AAAAAAAAAbM/Njg4yEYgwYU/s1600/rx62n_board2.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 279px;" src="http://1.bp.blogspot.com/-80RXNAZhMO0/Tdk0PkA_9cI/AAAAAAAAAbM/Njg4yEYgwYU/s320/rx62n_board2.jpg" alt="" id="BLOGGER_PHOTO_ID_5609572252837213634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the Renesas RX62N Kit&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;The contest  allows each contestant participate using only one application.&lt;br /&gt;&lt;br /&gt;I  wondered what application should I design , and I decided to design an  ADI after being inspired by the Embraer 170 ADI ( Attitude Direction  Indication )&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://3.bp.blogspot.com/-9kGN3L9RkiI/Tdk0QH7bScI/AAAAAAAAAbc/taJHk6KquA8/s1600/images.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 225px; height: 224px;" src="http://3.bp.blogspot.com/-9kGN3L9RkiI/Tdk0QH7bScI/AAAAAAAAAbc/taJHk6KquA8/s320/images.jpg" alt="" id="BLOGGER_PHOTO_ID_5609572262477515202" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;This is the ADI&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;The ADI is an important aviation instrument that helps the pilot controlling and the aircraft. It senses and indicates Pitch ( Up and Down ) and Roll ( Right and Left ) attitude of the aircraft.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The actual ADI instrument senses the attitude using sensors in the aircraft called &lt;span style="font-style: italic;"&gt;Gyroscope.  &lt;/span&gt;The modern types of ADI collects attitude data from an electronic device called &lt;span style="font-style: italic;"&gt;Laser Gyro &lt;/span&gt;or &lt;span style="font-style: italic;"&gt;Fiber Optic Gyro&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;My version of ADI uses a built in sensor in the Renesas kit called &lt;span style="font-style: italic;"&gt;Accelerometer&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://1.bp.blogspot.com/-_iCcfUXZnLg/Tdk0Pk5vwpI/AAAAAAAAAbU/2Yck6vm-Mug/s1600/Renesas%2BGyro%2BHorizon%2Bv2.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 284px; height: 320px;" src="http://1.bp.blogspot.com/-_iCcfUXZnLg/Tdk0Pk5vwpI/AAAAAAAAAbU/2Yck6vm-Mug/s320/Renesas%2BGyro%2BHorizon%2Bv2.jpg" alt="" id="BLOGGER_PHOTO_ID_5609572253075227282" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;This is the running application on the kit ( ADI appears on the LCD )&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;The &lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-style: italic;"&gt;Accelerometer&lt;/span&gt; is an electronic MEMS sensor that senses acceleration in three dimensions.&lt;br /&gt;&lt;br /&gt;The Accelerometer senses the acceleration in three dimensions and then the RX62N microcontroller reads the data and then draws the output indication on the LCD on the kit.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e)  {}" href="http://3.bp.blogspot.com/-ixep0zoXR_A/Tdfh46ICo7I/AAAAAAAAAbE/g8onUvml7_Y/s1600/Renesas%2BGyro%2BHorizon%2Bv2.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/-ixep0zoXR_A/Tdfh46ICo7I/AAAAAAAAAbE/g8onUvml7_Y/s320/Renesas%2BGyro%2BHorizon%2Bv2.jpg" alt="" id="BLOGGER_PHOTO_ID_5609200228705149874" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;This is the kit and the application on the LCD&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p style="" align="center"&gt;&lt;span style="font-size:130%;"&gt;&lt;object width="425" height="350"&gt;&lt;param name="movie" value="http://www.youtube.com/v/3xw9ZHeqJ5Y"&gt;&lt;param name="wmode" value=""&gt;&lt;embed src="http://www.youtube.com/v/3xw9ZHeqJ5Y" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the video of the kit in action.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;Here is the contest entry :&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.renesasrulz.com/docs/DOC-1739"&gt;http://www.renesasrulz.com/docs/DOC-1739&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;p style="min-height: 8pt; height: 8pt; padding: 0px;"&gt;&lt;span style="font-size:130%;"&gt; &lt;/span&gt;&lt;/p&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-4126194499651514892?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/4126194499651514892/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=4126194499651514892&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/4126194499651514892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/4126194499651514892'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2011/05/gyro-horizon-renesas-rx62n.html' title='Gyro Horizon.  Renesas RX62N Kit'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-80RXNAZhMO0/Tdk0PkA_9cI/AAAAAAAAAbM/Njg4yEYgwYU/s72-c/rx62n_board2.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1361681555854539262</id><published>2010-11-29T20:30:00.036+02:00</published><updated>2010-12-04T00:39:38.672+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Stepper Motor Microcontroller'/><category scheme='http://www.blogger.com/atom/ns#' term='Stepper Motor 16F84'/><category scheme='http://www.blogger.com/atom/ns#' term='Stepper Motor'/><category scheme='http://www.blogger.com/atom/ns#' term='Stepper Motor Control'/><title type='text'>16F84A Stepper Motor Control</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TPlH72XAIxI/AAAAAAAAAYc/KcR9IuU2KOo/s1600/Image0858.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;In this post , we 'll see how to control a stepper motor using the Microcontroller PIC 16F84A.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;The stepper motor is a special type of motor in which motion can be controlled by speed and position. As the name complies, the &lt;/span&gt;&lt;span style="font-size:130%;"&gt;stepper motor moves in steps (degrees) .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-size:130%;"&gt;Unlike other types of motors, stepper motors have more  than 2 terminals ( They can have 3 , 4 or five terminals ) .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;Thus , &lt;/span&gt;&lt;span style="font-size:130%;"&gt;the  stepper motor is driven by switching its coils ON and OFF according  to certain sequence. The function of the microcontroller is generating  the driving signals.&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;Of course, the output current  of the Microcontroller is not sufficient to drive the motor coils. There  is an interfacing IC that can supply the motor coils with the suitable  driving current.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;This IC is ULN2003. It  acts as an electronic switch opened and closed according to the output  signals of the Microcontroller.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;a onblur="try  {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TPPzn1ZDAlI/AAAAAAAAAX8/zC8CbpN5Xss/s1600/Stepper.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TPPzn1ZDAlI/AAAAAAAAAX8/zC8CbpN5Xss/s320/Stepper.jpg" alt="" id="BLOGGER_PHOTO_ID_5545043431895794258" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the real circuit  connection&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;As you can see , I used an old hard disk drive motor. This is a three coil stepper motor. Actually it has 4 terminals ( 3 Coils and 1 Common ).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TPlH72XAIxI/AAAAAAAAAYc/KcR9IuU2KOo/s1600/Image0858.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 240px; height: 320px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TPlH72XAIxI/AAAAAAAAAYc/KcR9IuU2KOo/s320/Image0858.jpg" alt="" id="BLOGGER_PHOTO_ID_5546543509613323026" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TPlH7cu7OdI/AAAAAAAAAYU/KdnE6KBdr28/s1600/Image0857.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 240px; height: 320px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TPlH7cu7OdI/AAAAAAAAAYU/KdnE6KBdr28/s320/Image0857.jpg" alt="" id="BLOGGER_PHOTO_ID_5546543502734342610" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;You can see the four terminals on the back of the motor&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-8bbc424a74a1efb" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v4.nonxt2.googlevideo.com/videoplayback?id%3D08bbc424a74a1efb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D274A904048F80522727EE8B6BA9F79C65F11B613.394FFBA6A7E856740CC7D5BC1AB0D528167C2AC4%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D8bbc424a74a1efb%26offsetms%3D5000%26itag%3Dw160%26sigh%3DlaopTyu079WIRSLeqGCRn7o08gw&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v4.nonxt2.googlevideo.com/videoplayback?id%3D08bbc424a74a1efb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D274A904048F80522727EE8B6BA9F79C65F11B613.394FFBA6A7E856740CC7D5BC1AB0D528167C2AC4%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D8bbc424a74a1efb%26offsetms%3D5000%26itag%3Dw160%26sigh%3DlaopTyu079WIRSLeqGCRn7o08gw&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;This video shows the stepper motor connected to the  driving circuit and rotating&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a target="_blank" href="https://docs.google.com/leaf?id=0Byhyj_-YLEr1YzI5MTlkN2MtZGY4Mi00N2I2LTgyZWQtNWNmMzA4M2MyMWNi&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;You can find the source code and simulation files on this link.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TPkzMR8n50I/AAAAAAAAAYE/-TBl1RrPp-Y/s1600/stepper.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 185px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TPkzMR8n50I/AAAAAAAAAYE/-TBl1RrPp-Y/s320/stepper.JPG" alt="" id="BLOGGER_PHOTO_ID_5546520702152599362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;The simulation model shows LEDs connected to the Microcontroller 16F84A. That is because this version of Proteus ISIS does not contain a three coil stepper motor model.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TPlxkKqQvQI/AAAAAAAAAYk/AkYBaF8L-7o/s1600/stepper.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TPlxkKqQvQI/AAAAAAAAAYk/AkYBaF8L-7o/s320/stepper.JPG" alt="" id="BLOGGER_PHOTO_ID_5546589282234318082" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TPlH6t09nrI/AAAAAAAAAYM/jtKKipR9xag/s1600/stepper.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the schematic diagram of the circuit.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1361681555854539262?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1361681555854539262/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1361681555854539262&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1361681555854539262'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1361681555854539262'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/11/16f84a-stepper-motor-control.html' title='16F84A Stepper Motor Control'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/TPPzn1ZDAlI/AAAAAAAAAX8/zC8CbpN5Xss/s72-c/Stepper.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8544240819048093073</id><published>2010-07-24T10:48:00.035+03:00</published><updated>2010-09-30T23:44:07.418+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16F84 RS232'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 serial port.'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 serial communication'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Com port'/><title type='text'>16F84 SERIAL COMMUNICATIONS</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TKTsPIpszHI/AAAAAAAAAXc/Etg9dcT7xRM/s1600/Image0549.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;span style="font-size:130%;"&gt;In many projects exists the need to exchange information with outside world. This case can be the need to store information from your project to a database on a standard PC or a need to communicate with another device. RS232 is widely used serial communications protocol. Modern Microcontroller chips contain hardware modules for such communications protocol. In those chips all you have to do is configuring the RS232 module and to choose the right crystal to produce the desired baud rate .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;But in Microcontroller as 16F84A there is no such hardware communications modules. Serial communication can be established by software or Bit-Bang method. The standard RS232 protocol uses +12v to represent logic 0 and -12v to represent logic 1 . While TTL uses +5v to represent logic 1 and 0 V to represent logic 0.&lt;br /&gt;&lt;br /&gt;An external IC is used as an interface between the Microcontroller and an RS232 enabled device ( PC for example ) . This IC MAX232 or HIN232 performs this level shifting function between the RS232 and TTL protocols.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Recently , I found a website implementing RS232 protocol in software using C language. The new method represented in this website is using the inverted logic ( 0v for logic 1 and +5v for logic 0 ) .&lt;br /&gt;&lt;br /&gt;This method enables connection of the Microcontroller directly to the PC. The web page clearly explains this method . The PIC 16f8A can withstand +12v and -12v when receiving data from PC . And for data transmission to PC 0v to +5v can be distinct by the PC as two different levels.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I really wanted to try this code in real world and built the simple circuit as shown in the web page. The designer recommends connecting a resistor for PIC protection .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Of course , you can find that it is a very simple circuit that provides another new usage for the PIC 16F84A.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;"&gt;So how can you use the serial data form the Microcontroller ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can write a simple software for the PC that reads from the PC's serial port ( com1 or com2 ) . Or you can simply open the famous program &lt;span style="color: rgb(0, 0, 153);"&gt;Hyper terminal &lt;/span&gt;that comes with all Microsoft windows versions under the menu Programs --&gt; Accessories --&gt; Communications --&gt; HyperTerminal. Then you need to configure the right Com port , Baud rate and Flow control . As shown here&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TJ8uj2_jF5I/AAAAAAAAAXM/7TZwiM7a_pE/s1600/hyp+PORT.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 214px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TJ8uj2_jF5I/AAAAAAAAAXM/7TZwiM7a_pE/s320/hyp+PORT.JPG" alt="" id="BLOGGER_PHOTO_ID_5521182861771872146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TJ8uj9LWauI/AAAAAAAAAXU/NY2KFkz2rtc/s1600/hyp+Baud.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 214px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TJ8uj9LWauI/AAAAAAAAAXU/NY2KFkz2rtc/s320/hyp+Baud.JPG" alt="" id="BLOGGER_PHOTO_ID_5521182863431985890" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I used a serial connector from an old mouse to connect the circuit board to the PC .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TErpDRPJeUI/AAAAAAAAAV0/j_2XzoCdWNM/s1600/RS232-9-pinout.gif"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 270px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5497462537534929218" alt="" src="http://3.bp.blogspot.com/_N66od8KlQks/TErpDRPJeUI/AAAAAAAAAV0/j_2XzoCdWNM/s320/RS232-9-pinout.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;Here is the pinout of the 9 pin serial connector&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TEronFj2XFI/AAAAAAAAAVc/royxdBl6pjs/s1600/hello.JPG"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 215px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5497462053364194386" alt="" src="http://3.bp.blogspot.com/_N66od8KlQks/TEronFj2XFI/AAAAAAAAAVc/royxdBl6pjs/s320/hello.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the Hyper terminal program showing "Hello World" message from the Microcontroller .&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/TIa7fVYzM4I/AAAAAAAAAWk/WKWEhJCfkq4/s1600/RS232PWM.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_N66od8KlQks/TIa7fVYzM4I/AAAAAAAAAWk/WKWEhJCfkq4/s320/RS232PWM.JPG" alt="" id="BLOGGER_PHOTO_ID_5514300940753253250" border="0" /&gt;&lt;/a&gt;This is the schematic drawing of the circuit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TKTsPIpszHI/AAAAAAAAAXc/Etg9dcT7xRM/s1600/Image0549.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TKTsPIpszHI/AAAAAAAAAXc/Etg9dcT7xRM/s320/Image0549.jpg" alt="" id="BLOGGER_PHOTO_ID_5522798787827649650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Here is the real circuit board I built and the serial connector connected to it .&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;Here, we 'll use the serial communication protocol RS232 to adjust the Microcontroller which in turn controls a DC motor by the PWM signals.&lt;br /&gt;&lt;br /&gt;By choosing the motor speeds and sending them to the Microcontroller, we are able to choose PWM signals duty cycles and sending them to the Microcontroller via RS232 protocol.&lt;br /&gt;&lt;br /&gt;The ciruit between the Microcontroller and the PC is very simple. All you have to connect is the PIC16F84A , the crystal oscillator and the RS232 9 pin female connector.&lt;br /&gt;&lt;br /&gt;The Microcontroller is supplied by the 12V DC from RS232 pin 7 RTS. Do not be afraid of losing the PIC chip, it can withstand it without damage.&lt;br /&gt;&lt;br /&gt;The PIC16F84A Tx pin 1 is connected directly to RS232 pin 2 Rx.&lt;br /&gt;&lt;br /&gt;The PIC16F84a Rx pin 17 is connected to RS232 pin 3 Tx through 10k ohm resistor to adjust the input voltage to the PIC.&lt;br /&gt;&lt;br /&gt;The motor driving part of the circuit has already been explained in the PWM DC motor control post. So I 'll use the same driving circuit.&lt;br /&gt;&lt;br /&gt;The PWM signal comes from the PIC16F84A to the NPN 2N2222 transistor base. This transistor acts as an electronic switch.&lt;br /&gt;&lt;br /&gt;The DC motor is driven by an external DC 9v battery.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/TJ8Q464sHNI/AAAAAAAAAWs/VKDeRaWqzQE/s1600/RS232PWM+Model.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://1.bp.blogspot.com/_N66od8KlQks/TJ8Q464sHNI/AAAAAAAAAWs/VKDeRaWqzQE/s320/RS232PWM+Model.JPG" alt="" id="BLOGGER_PHOTO_ID_5521150238245264594" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;This image shows the Proteus 7 Model of the project&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;As usual , you may want to try the code and the circuit om the simulator first before building it . &lt;a target="_blank" href="https://docs.google.com/leaf?id=0Byhyj_-YLEr1YWM5NTViMWYtNzc0ZS00NmJjLThjNzAtZGZlYjM0MDE4NTYw&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;So , you 'll find the Proteus 7 model and code in this link &lt;/a&gt;. But to properly send and receive data form PIC 16F84A to the virtual terminal model in Proteus 7 environment it must be configured to use inverted data . You 'll find that I configured this for the model . But if you want to see it for yourself , right click on the virtual terminal model and choose inverted .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8544240819048093073?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8544240819048093073/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8544240819048093073&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8544240819048093073'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8544240819048093073'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/07/16f84-serial-communications.html' title='16F84 SERIAL COMMUNICATIONS'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/TJ8uj2_jF5I/AAAAAAAAAXM/7TZwiM7a_pE/s72-c/hyp+PORT.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-7199228653056464680</id><published>2010-07-13T20:47:00.022+03:00</published><updated>2010-07-16T19:15:25.678+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16F84A VGA Output'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 VGA interface'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller VGA project'/><title type='text'>16F84A VGA Output</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TDzYfjbiPRI/AAAAAAAAAU8/n6bYi2ATvZk/s1600/Image0438.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Have you ever thought of this ?&lt;br /&gt;&lt;br /&gt;That you can generate any kind of signals using your little Microcontroller PIC 16F84A .  And one of these signals is the VGA signal that appears on your PC monitor . I thought of this idea but I couldn't implement it. But I found it at this website. So I wanted to try if it is working and share it with you.&lt;br /&gt;&lt;br /&gt;I found an old web page containing this project &lt;/span&gt;&lt;span style="font-size:130%;"&gt;&lt;a target="_blank" href="http://tinyvga.com/pic-vga"&gt;http://tinyvga.com/pic-vga&lt;/a&gt;&lt;/span&gt;&lt;span style="font-size:130%;"&gt; . I just made some minor modification on that project and put it into a real circuit. I found that the there is a small timing issue in this software that makes the monitor flicker repeatedly.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The circuit is very simple. It consists of the Microcontroller PIC 16F84A and the 15 pin female VGA connector.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TD-R6rybl-I/AAAAAAAAAVM/BpFiIP4cYIc/s1600/vga-test.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 200px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TD-R6rybl-I/AAAAAAAAAVM/BpFiIP4cYIc/s320/vga-test.gif" alt="" id="BLOGGER_PHOTO_ID_5494270507787982818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;This is the schematic diagram of the circuit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TD-St9qyYEI/AAAAAAAAAVU/K5fH6O4jx-o/s1600/vga_pinout.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 320px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TD-St9qyYEI/AAAAAAAAAVU/K5fH6O4jx-o/s320/vga_pinout.jpg" alt="" id="BLOGGER_PHOTO_ID_5494271388761088066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This is the pinout of the VGA connector&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;There is a simple hint for your when downloading the software on the&lt;br /&gt;&lt;br /&gt;Microcontroller . Make sure that the configuration is :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;PRTE   ON&lt;br /&gt;&lt;br /&gt;XT&lt;br /&gt;&lt;br /&gt;WDT OFF&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TDzYfjbiPRI/AAAAAAAAAU8/n6bYi2ATvZk/s1600/Image0438.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 240px; height: 320px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TDzYfjbiPRI/AAAAAAAAAU8/n6bYi2ATvZk/s320/Image0438.jpg" alt="" id="BLOGGER_PHOTO_ID_5493503682083437842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;I took this pictures for the monitor after running the program.&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/TDzaZPsP2bI/AAAAAAAAAVE/DOtX2uCID0I/s1600/Image0442.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_N66od8KlQks/TDzaZPsP2bI/AAAAAAAAAVE/DOtX2uCID0I/s320/Image0442.jpg" alt="" id="BLOGGER_PHOTO_ID_5493505772728867250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;span style="font-size:130%;"&gt;This picture shows the circuit.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-9cc9cca2c3853972" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v2.nonxt4.googlevideo.com/videoplayback?id%3D9cc9cca2c3853972%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D5639B7DB53F1AE6B92FC8899E1511CF08C776178.55C7CF84AA8A7EC8C6CD0F64F1BAEC8AB816F5F6%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D9cc9cca2c3853972%26offsetms%3D5000%26itag%3Dw160%26sigh%3D1gjVJUUgOmdXbmAqJhMLOyLrP54&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v2.nonxt4.googlevideo.com/videoplayback?id%3D9cc9cca2c3853972%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D5639B7DB53F1AE6B92FC8899E1511CF08C776178.55C7CF84AA8A7EC8C6CD0F64F1BAEC8AB816F5F6%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3D9cc9cca2c3853972%26offsetms%3D5000%26itag%3Dw160%26sigh%3D1gjVJUUgOmdXbmAqJhMLOyLrP54&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;You can see in this video the flickering I told you about.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: left;"&gt;&lt;span style="font-size:130%;"&gt;I 'll try to fix this issue and post it when I am done with it. Now I will show you the results of the current software. I hope you enjoy it.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;a target="_blank" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1YjlmMjBiNDktZTc3My00YzlmLWI0ZDAtNjgxNzFmNzU0YTU5&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;Here is the link for the Proteus 7 Model , source code and Hex file .&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-7199228653056464680?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/7199228653056464680/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=7199228653056464680&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/7199228653056464680'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/7199228653056464680'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/07/16f84a-vga-output.html' title='16F84A VGA Output'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_N66od8KlQks/TD-R6rybl-I/AAAAAAAAAVM/BpFiIP4cYIc/s72-c/vga-test.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2407478803427447846</id><published>2010-07-10T19:33:00.001+03:00</published><updated>2010-08-09T01:20:11.286+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 IR LED'/><category scheme='http://www.blogger.com/atom/ns#' term='IR reception.'/><category scheme='http://www.blogger.com/atom/ns#' term='IR transmission'/><category scheme='http://www.blogger.com/atom/ns#' term='Infrared LED'/><category scheme='http://www.blogger.com/atom/ns#' term='IR receiver module'/><category scheme='http://www.blogger.com/atom/ns#' term='IR Led'/><title type='text'>Hacking Infrared with PIC 16F84A</title><content type='html'>&lt;div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/TCj9ZxVAEqI/AAAAAAAAAU0/Bg3FprLOBKg/s1600/tvone.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Send an Infrared signal with PIC 16F84 :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In this post, we 'll learn about &lt;span style="font-style: italic;"&gt;transmission&lt;/span&gt; of the Infra red signals using &lt;span style="font-weight: bold;"&gt;PIC16F84&lt;/span&gt;. You can use Infra red signal in many projects ( Robots, Touch less counters, Theft alarming .. )&lt;br /&gt;&lt;br /&gt;All you need to know to start using Infra Red signals are IR transmitters ( IR LEDs ) and IR receivers ( IR receiver modules ) .&lt;br /&gt;&lt;br /&gt;The &lt;span style="font-weight: bold;"&gt;IR LEDs&lt;/span&gt; are normal LEDs in the outer shape but they emit IR signals and of course these signals cannot be seen by the human eye. You can though make sure it is working fine by using a digital camera. The digital camera can detect the Infra Red signal and makes them visible to you.&lt;br /&gt;&lt;br /&gt;This image shows you how the digital camera in the mobile phone can make you see the IR signal transmitted from a normal IR remote control.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SmTX1noMfxI/AAAAAAAAAIs/squVoC1C3Dg/s1600-h/remote.JPG"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 247px; display: block; height: 215px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5360646772648345362" alt="" src="http://1.bp.blogspot.com/_N66od8KlQks/SmTX1noMfxI/AAAAAAAAAIs/squVoC1C3Dg/s320/remote.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The other difference between visible light LED and IR LED is that in visible light LED, the &lt;span style="font-weight: bold;"&gt;+ve&lt;/span&gt; terminal (&lt;span style="font-weight: bold;"&gt;Anode&lt;/span&gt;) is the longer one. But in IR LED, the &lt;span style="font-weight: bold;"&gt;+ve&lt;/span&gt; terminal (&lt;span style="font-weight: bold;"&gt;Anode&lt;/span&gt;) is the shorter one.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SmTYwSihe6I/AAAAAAAAAI0/_01khISerZA/s1600-h/IRLED.jpg"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 236px; display: block; height: 257px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5360647780599692194" alt="" src="http://1.bp.blogspot.com/_N66od8KlQks/SmTYwSihe6I/AAAAAAAAAI0/_01khISerZA/s320/IRLED.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The second thing you need to know is the IR receiver module. It is an IR receiver component connected to a &lt;span style="font-style: italic; font-weight: bold;"&gt;demodulator &lt;/span&gt;and &lt;span style="font-style: italic; font-weight: bold;"&gt;amplifier &lt;/span&gt;circuit. The function of the demodulation circuit is to demodulate the modulated signal received by the receiver module. This means that this module can receive and understand ONLY modulated signals !!!&lt;br /&gt;&lt;br /&gt;YES , that's true. And this is used to differentiate between the IR communication and control signals and IR signal emitted from all the objects around us and from all visible light sources. The demodulator circuit has a &lt;span style="font-weight: bold;"&gt;Band Pass Filter (BPF)&lt;/span&gt; that can detect only signals modulated by a &lt;span style="font-weight: bold;"&gt;34kHz&lt;/span&gt; carrier signal.&lt;a href="http://www.datasheetcatalog.org/datasheet/vishay/82217.pdf" target="_blank"&gt; Here is a datasheet for TSOP312 Infrared receiver module&lt;/a&gt; .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/TByFiT-KHwI/AAAAAAAAAUU/DOmzZrNHinw/s1600/ir+module.JPG"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 239px; display: block; height: 184px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5484405270753451778" alt="" src="http://2.bp.blogspot.com/_N66od8KlQks/TByFiT-KHwI/AAAAAAAAAUU/DOmzZrNHinw/s320/ir+module.JPG" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TByGmbwYIiI/AAAAAAAAAUc/XRAKgj-2BCY/s1600/IR-Mod.jpg"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 232px; display: block; height: 320px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5484406441074237986" alt="" src="http://4.bp.blogspot.com/_N66od8KlQks/TByGmbwYIiI/AAAAAAAAAUc/XRAKgj-2BCY/s320/IR-Mod.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This means that if you want to transmit a signal that can be demodulated as (1), you need to send a continuous signal of &lt;span style="font-weight: bold;"&gt;34kHz&lt;/span&gt; from your IR transmitter LED.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/TCj9ZxVAEqI/AAAAAAAAAU0/Bg3FprLOBKg/s1600/tvone.JPG"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 192px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5487914765130928802" alt="" src="http://2.bp.blogspot.com/_N66od8KlQks/TCj9ZxVAEqI/AAAAAAAAAU0/Bg3FprLOBKg/s320/tvone.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This is the signal I captured from the Remote Control by the IR receiver&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TCj9ZiJ2sSI/AAAAAAAAAUs/q6EqHcduNk0/s1600/MyOneTV.JPG"&gt;&lt;img style="margin: 0px auto 10px; text-align: center; width: 320px; display: block; height: 192px; cursor: pointer;" id="BLOGGER_PHOTO_ID_5487914761057644834" alt="" src="http://3.bp.blogspot.com/_N66od8KlQks/TCj9ZiJ2sSI/AAAAAAAAAUs/q6EqHcduNk0/s320/MyOneTV.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And this is the signal I generated from the PIC 16F84A &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: center;" align="left"&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt;The software is very simple this time and written in Assembly Language . All it does it sending pulses to the IR LED at the correct frequency for the correct periods of time. It consists of a 34KHz carrier modulated by the signal of consecutive zeros and ones.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt;I knew the time coding of the TV remote control by capturing the signal using the IR receiver module to the sound card of the PC . Then I viewed it using a sound editing software to show the exact times for the IR signal.&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1NmQ0ZjE5MTYtZjNmYS00YzRiLTlmMWQtY2E4NTU3Nzk4YmY2&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;Here is the link for the Proteus 7 model and software for the project.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;" align="left"&gt; &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2407478803427447846?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2407478803427447846/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2407478803427447846&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2407478803427447846'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2407478803427447846'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/07/hacking-infrared-with-pic-16f84a.html' title='Hacking Infrared with PIC 16F84A'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/SmTX1noMfxI/AAAAAAAAAIs/squVoC1C3Dg/s72-c/remote.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-3938343599922110946</id><published>2010-06-07T21:00:00.002+03:00</published><updated>2010-06-08T18:01:56.020+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='7 Segment POV'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Persistence Of Vision 7 segment Dsiplay'/><title type='text'>7 Segment POV</title><content type='html'>This is a post about the POV ( Persistence of Vision ) Display that uses   one 7 Segment display.&lt;br /&gt;&lt;br /&gt;In short, I made this little project as a   prove of concept of something I 've always noticed in many electronic   devices those used 7 segment display.&lt;br /&gt;&lt;br /&gt;In those devices, the 7   segment display was flickering instead of lighting it with steady volt   and displaying the number accordingly. That flickering effect may be   nice to some people and may be annoying for others.&lt;br /&gt;&lt;br /&gt;So I decided   to build this project so fast on a breadboard and wrote the C code for   it.&lt;br /&gt;&lt;br /&gt;In this image you can see the 7 segment connected to the   PIC16F84A Microcontroller on a breadboard and flickering with numbers.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TA0eArgqywI/AAAAAAAAATU/5m1DSmYFZaM/s1600/06.2010-002.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TA0eArgqywI/AAAAAAAAATU/5m1DSmYFZaM/s320/06.2010-002.jpg" alt="" id="BLOGGER_PHOTO_ID_5480069318608341762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I   just made this 7 segment display flickers with different numbers&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;I   thought that if those flickering devices displayed many numbers at  high  speed and have been moved , guess what , the POV effect will be   produced.&lt;br /&gt;&lt;br /&gt;That's right. the same POV effect we 've seen made   using LEDs can be produced by a single moving 7 segment display.&lt;br /&gt;&lt;br /&gt;Here,   you can see some pictures of the breadboard while being waved to the   left and right in front of the camera.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TA0eA6YorCI/AAAAAAAAATc/h44D9cCplj8/s1600/06.2010-009.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TA0eA6YorCI/AAAAAAAAATc/h44D9cCplj8/s320/06.2010-009.jpg" alt="" id="BLOGGER_PHOTO_ID_5480069322601180194" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The   POV effect here makes our eyes ( and the camera too ) see the  numbers   as separate from there each other as four digits.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/TA0eBCOuraI/AAAAAAAAATk/ZCNS20HVtBw/s1600/06.2010-010.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_N66od8KlQks/TA0eBCOuraI/AAAAAAAAATk/ZCNS20HVtBw/s320/06.2010-010.jpg" alt="" id="BLOGGER_PHOTO_ID_5480069324707114402" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Here   is a short video.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-c600dda863fc2943" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v1.nonxt3.googlevideo.com/videoplayback?id%3Dc600dda863fc2943%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7607437B4ECF253EA23A1A410590FE7E62B2CC43.69A085E0BF7BB6D96F2208DB6F3E0632A3DB74%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dc600dda863fc2943%26offsetms%3D5000%26itag%3Dw160%26sigh%3DN8Kq7VpDHKXM5t9EYzBpHc4WgUQ&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v1.nonxt3.googlevideo.com/videoplayback?id%3Dc600dda863fc2943%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296934%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D7607437B4ECF253EA23A1A410590FE7E62B2CC43.69A085E0BF7BB6D96F2208DB6F3E0632A3DB74%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Dc600dda863fc2943%26offsetms%3D5000%26itag%3Dw160%26sigh%3DN8Kq7VpDHKXM5t9EYzBpHc4WgUQ&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/TA0hnQhi5AI/AAAAAAAAATs/gqAPYKs6XlM/s1600/Image0262.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_N66od8KlQks/TA0hnQhi5AI/AAAAAAAAATs/gqAPYKs6XlM/s320/Image0262.jpg" alt="" id="BLOGGER_PHOTO_ID_5480073279914042370" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;The circuit is very simple. I used a common   anode 7 segment display directly driven by the PIC16F84A. And written   the program in C code. The 7 segment patterns are directly sent to PORTB   to be displayed on the 7 segment display.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try   {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TA0xVa2HtZI/AAAAAAAAAT0/9q-JuGdp5Z8/s1600/7segmentPOV.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 192px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TA0xVa2HtZI/AAAAAAAAAT0/9q-JuGdp5Z8/s320/7segmentPOV.JPG" alt="" id="BLOGGER_PHOTO_ID_5480090565633095058" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" style="font-weight: bold; font-style: italic;" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1ODhiMDY5YjAtNjlkMy00MTVhLThiOTQtOWI0OWIxZGEyMTMy&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;You can   find the Proteus 7 model and C program here &lt;/a&gt;&lt;a href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1ODhiMDY5YjAtNjlkMy00MTVhLThiOTQtOWI0OWIxZGEyMTMy&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;.&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;I hope you enjoy this project.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-3938343599922110946?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/3938343599922110946/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=3938343599922110946&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3938343599922110946'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3938343599922110946'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/06/7-segment-pov_901.html' title='7 Segment POV'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/TA0eArgqywI/AAAAAAAAATU/5m1DSmYFZaM/s72-c/06.2010-002.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2038654488324192612</id><published>2010-05-08T18:45:00.013+03:00</published><updated>2010-06-08T18:05:09.265+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Love'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 LCD Assembly project'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 LCD interface'/><category scheme='http://www.blogger.com/atom/ns#' term='In love with a Microcontroller'/><title type='text'>I love PIC 16F84 :LCD to PIC 16F84 Interface</title><content type='html'>&lt;span style="font-weight: bold;font-size:130%;" &gt;&lt;span style="color: rgb(51, 51, 255);"&gt;LCD Interface to PIC 16F84&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I really love this Microcontroller PIC 16F84 . I am always searching for programs and projects and piece of code written for this old Microcontroller.&lt;br /&gt;&lt;br /&gt;Today I found code on the web for this chip interfacing it to a standard LCD module.&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.electronic-engineering.ch/microchip/projects/LCDx_test/LCDx_test.html#assembler_code"&gt;http://www.electronic-engineering.ch/microchip/projects/LCDx_test/LCDx_test.html#assembler_code&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;It is written in assembly language and I am not going to explain it. So I 'll leave it to you to understand.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S-WOwSFfa0I/AAAAAAAAARU/RUppmSOvDyE/s1600/LCDcircuit.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 232px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S-WOwSFfa0I/AAAAAAAAARU/RUppmSOvDyE/s320/LCDcircuit.JPG" alt="" id="BLOGGER_PHOTO_ID_5468934282651069250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I only made a Proteus 7 model for the circuit that &lt;a target="_blank" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1Y2UzNjIzYWUtYWRlYy00MjA2LTkwODAtMjc3ZWZhMGM0NTE2&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;you can find it &lt;/a&gt;&lt;a target="_blank" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1Y2UzNjIzYWUtYWRlYy00MjA2LTkwODAtMjc3ZWZhMGM0NTE2&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;here &lt;/span&gt;&lt;/a&gt;. I promise you to make a new post for the LCD interface using the embedded C language.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2038654488324192612?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2038654488324192612/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2038654488324192612&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2038654488324192612'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2038654488324192612'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/05/i-love-pic-16f84-lcd-to-pic-16f84.html' title='I love PIC 16F84 :LCD to PIC 16F84 Interface'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/S-WOwSFfa0I/AAAAAAAAARU/RUppmSOvDyE/s72-c/LCDcircuit.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8377794730627728362</id><published>2010-04-29T22:21:00.046+02:00</published><updated>2010-05-07T21:15:42.897+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Renesas'/><category scheme='http://www.blogger.com/atom/ns#' term='Multichannel Oscilloscope'/><category scheme='http://www.blogger.com/atom/ns#' term='Renesas HTS 2008'/><title type='text'>Microcontroller and Success : A true Story</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S93UKk2itnI/AAAAAAAAAQk/jFbJzE94d2w/s1600/05.2010-000.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;At the year of 2008 , I found an advertisement in Appliance magazine about a free kit from a Microcontroller company  called Renesas.&lt;br /&gt;&lt;br /&gt;I really wanted to get this development kit. It was dedicated to motor control. I registered for this kit but unfortunately it was available only in &lt;span style="font-weight: bold;"&gt;USA &lt;/span&gt;and &lt;span style="font-weight: bold;"&gt;Canada&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;However, my email was added in the company's clients database. Next, the company started a design contest at the same year called &lt;span style="font-weight: bold;"&gt;Renesas HTS Design Contest 2008&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S9r49eeKcqI/AAAAAAAAAQM/hO6jDW5a1bk/s1600/design_chal.gif"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 203px; height: 229px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S9r49eeKcqI/AAAAAAAAAQM/hO6jDW5a1bk/s320/design_chal.gif" alt="" id="BLOGGER_PHOTO_ID_5465954832802804386" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The company invited me to participate in this design contest. It was a world wide contest which included shipment of free development kit to each eligible participant.&lt;br /&gt;&lt;br /&gt;First I was admired by the idea itself of receiving a free development kit for the contest. I wanted to have this kit to learn more about Embedded C programming and to learn the Renesas technology which was new to me until that time.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;To be eligible to receive the kit, there was a short demo for the company's other educational boards over a Virtual Lab environment. Then you are asked few questions to qualify for receiving the kit.&lt;br /&gt;&lt;br /&gt;I passed through the stages of qualification and waited to receive the kit. When I received it I started to develop my design right away.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S93UKk2itnI/AAAAAAAAAQk/jFbJzE94d2w/s1600/05.2010-000.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S93UKk2itnI/AAAAAAAAAQk/jFbJzE94d2w/s320/05.2010-000.jpg" alt="" id="BLOGGER_PHOTO_ID_5466758800853874290" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The company made a very good idea for improving the challenge through the launch of a forum for the challenge.&lt;br /&gt;&lt;br /&gt;Each participant posted the idea of his entry and provided some technical details about it . This idea was very helpful and motivational. Any visitor or another participant can see your posted details and get admired with it or comment on it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/S93UK3WcNtI/AAAAAAAAAQs/HvJqg-bo238/s1600/05.2010-001.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S93UK3WcNtI/AAAAAAAAAQs/HvJqg-bo238/s320/05.2010-001.jpg" alt="" id="BLOGGER_PHOTO_ID_5466758805819504338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;My design was a Multichannel Oscilloscope. The idea was very simple. I made the analog signals  read by the analog-to-digital converter of the Microcontroller &lt;span style="font-weight: bold;"&gt;M16C &lt;/span&gt;&lt;span style="font-style: italic;"&gt;( on which the board is based )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/S93lBYItlyI/AAAAAAAAAQ0/gtAw2iVfd10/s1600/setup.bmp"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 151px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S93lBYItlyI/AAAAAAAAAQ0/gtAw2iVfd10/s320/setup.bmp" alt="" id="BLOGGER_PHOTO_ID_5466777334519273250" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The M16C has many A/D inputs but and there were 3 of them available in the challenge board.&lt;br /&gt;The signals values were converted into digital in the Microcontroller and they were sent to a PC based client software which incorporated the display of a virtual Multichannel Oscilloscope.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/S-RWRQaBqWI/AAAAAAAAARM/uWdjFoHdAEI/s1600/scope.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 255px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S-RWRQaBqWI/AAAAAAAAARM/uWdjFoHdAEI/s320/scope.JPG" alt="" id="BLOGGER_PHOTO_ID_5468590701996517730" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Virtual Oscilloscope&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/S-Mb8HGsFNI/AAAAAAAAAQ8/FT4OZqGOQxQ/s1600/HEW.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 231px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S-Mb8HGsFNI/AAAAAAAAAQ8/FT4OZqGOQxQ/s320/HEW.JPG" alt="" id="BLOGGER_PHOTO_ID_5468245092071118034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;This is the Renesas HEW program window&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;From the PC based client, the user can choose the input channel to be displayed on the virtual oscilloscope and the rate at which it is displayed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/S-RWQ8mbDUI/AAAAAAAAARE/6cDThVBHwAg/s1600/prog.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 177px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S-RWQ8mbDUI/AAAAAAAAARE/6cDThVBHwAg/s320/prog.JPG" alt="" id="BLOGGER_PHOTO_ID_5468590696679804226" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Program Control Panel&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Before the last day of the deadline of the contest I submitted the source code for the Microcontroller side (written in Embedded C ) and the source code of the PC client (written in Visual Basic.Net) .&lt;br /&gt;&lt;br /&gt;The results of the contest were announced on &lt;span style="font-weight: bold;"&gt;Renesas DevCon 2008&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;I've got the 4th honorable mention prize for my entry &lt;span style="font-weight: bold;"&gt;"Multichannel Oscilloscope"&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/S9r4sUwgaVI/AAAAAAAAAQE/LEEnpq-meBk/s1600/winner.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 150px; height: 196px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S9r4sUwgaVI/AAAAAAAAAQE/LEEnpq-meBk/s320/winner.jpg" alt="" id="BLOGGER_PHOTO_ID_5465954538137610578" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This contest was very challenging and rewarding. Thanks to Renesas who has helped me through all this contest.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Location for the HTS 2008 projects:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.renesasrulz.com/thread/2225;jsessionid=7AFAE50480BD5DF2D4D3F616A03277EA?decorator=print&amp;amp;displayFullThread=true" target="_blank"&gt;http://www.renesasrulz.com/thread/2225;jsessionid=7AFAE50480BD5DF2D4D3F616A03277EA?decorator=print&amp;amp;displayFullThread=true&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Here is the location for my project:&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.renesasrulz.com/docs/DOC-1290"&gt;http://www.renesasrulz.com/docs/DOC-1290&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8377794730627728362?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8377794730627728362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8377794730627728362&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8377794730627728362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8377794730627728362'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/04/microcontroller-and-success-true-story.html' title='Microcontroller and Success : A true Story'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/S9r49eeKcqI/AAAAAAAAAQM/hO6jDW5a1bk/s72-c/design_chal.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1515039342953190777</id><published>2010-04-17T17:01:00.016+02:00</published><updated>2010-04-22T22:43:59.771+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Data Recovery Engineer in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Disaster Recovery'/><category scheme='http://www.blogger.com/atom/ns#' term='Data Recovery in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Disaster Recovery in Egypt'/><title type='text'>Information Disaster Recovery .</title><content type='html'>Data Recovery In Egypt&lt;br /&gt;&lt;br /&gt;This post is not about Embedded Systems. It is about a problem that many people face it. Many people save their valuable data on their PCs and then something happens. A virus infects the MBR( Master Boot Record ) of the hard disk and all the partitions and data on that PC is not accessible. Or somebody saves his data on partitions other than the system partition but tries to setup Windows on the system partition and makes a mistake and installs Windows on the data partition. When he finds this out, He tries to get his important and valuable data but he can't.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/S8ndTVAKbSI/AAAAAAAAAOQ/zrJznawwvpY/s1600/data+recovery.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 200px; height: 142px;" src="http://3.bp.blogspot.com/_N66od8KlQks/S8ndTVAKbSI/AAAAAAAAAOQ/zrJznawwvpY/s200/data+recovery.jpg" alt="" id="BLOGGER_PHOTO_ID_5461139347288517922" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've seen the two examples happening to many people. When your PC contains some games or songs or some sources for some common programs , then your loss wouldn't be great.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;But what if these data were collected and produced over a long period of time ?&lt;br /&gt;&lt;br /&gt;And what if these data were precious photos and memories that you cannot get from any where and you didn't make backup for them ?&lt;br /&gt;&lt;br /&gt;And what if you have saved your Master or PHD data on this PC without making backup ?&lt;br /&gt;&lt;br /&gt;Fortunately, you can recover the data form your hard or flash disk even if they were formatted by mistake or their MBR is corrupted due to a Virus infection or a wrong operating system installation procedure.&lt;br /&gt;&lt;br /&gt;Many programs can help you to get you lost data. But they sometimes are hard to use.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/S8neJhX7rKI/AAAAAAAAAOY/UeI8Q2-tG_c/s1600/data-recovery-image.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 192px; height: 200px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S8neJhX7rKI/AAAAAAAAAOY/UeI8Q2-tG_c/s200/data-recovery-image.jpg" alt="" id="BLOGGER_PHOTO_ID_5461140278322375842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I myself have done this many times. Both recovering data form a hard disk which the user has installed Windows on the data partition by mistake and recovered data form a Hard Disk with a totally corrupted MBR .&lt;br /&gt;&lt;br /&gt;If you faced this problem some day and don't know where to start from, just give me a call 0104718050. I am sure I can help.&lt;br /&gt;&lt;br /&gt;0104718050&lt;br /&gt;&lt;br /&gt;aebeed@odesk.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Disaster Recovery Specialist.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1515039342953190777?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1515039342953190777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1515039342953190777&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1515039342953190777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1515039342953190777'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/04/information-disaster-recovery.html' title='Information Disaster Recovery .'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_N66od8KlQks/S8ndTVAKbSI/AAAAAAAAAOQ/zrJznawwvpY/s72-c/data+recovery.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8573546525479861726</id><published>2010-03-11T21:21:00.009+02:00</published><updated>2010-03-11T22:13:19.612+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Free Embedded systems trainning in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Systems Committee in Egypt'/><title type='text'>Embedded Systems Committee</title><content type='html'>Well , this is not a technical post. I wanted to share this with all my friends in Egypt . &lt;span style="font-weight: bold;"&gt;Embedded Systems Committee&lt;/span&gt; is a group of Egyptian Embedded Systems Engineers who graduated from ITI intake 27 . They wanted to do something useful to there community . They wanted to share there knowledge with their colleges and Engineering students through this group.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/S5lMKSr9oHI/AAAAAAAAAOA/Y6a4encNufA/s1600-h/ESC.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 166px; height: 119px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S5lMKSr9oHI/AAAAAAAAAOA/Y6a4encNufA/s200/ESC.jpg" alt="" id="BLOGGER_PHOTO_ID_5447468963979960434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I found about this group and their activities in Egypt on EED '09 , and since then I 've been trying to find their contacts .&lt;br /&gt;&lt;br /&gt;Now, I will share this information with you to contact them and you may attend one of their seminars .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(51, 51, 255);"&gt;This is their group on Facebook &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.facebook.com/group.php?gid=18263984084"&gt;http://www.facebook.com/group.php?gid=18263984084&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(51, 102, 255);"&gt;And this is their Email address  :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;info@ESCommittee.com&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;dl style="font-style: italic;" class="info"&gt;&lt;dt&gt;Website :&lt;/dt&gt;&lt;/dl&gt;&lt;span&gt;&lt;span style="color: rgb(102, 0, 204);font-family:verdana;font-size:6px;"  &gt;&lt;a href="http://www.escommittee.com/"&gt;www.ESCommittee.com&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And this is a group I created on Facebook just after I heard about them in EED '09 before I find theirs .&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.facebook.com/group.php?v=info&amp;amp;gid=113460832366#%21/group.php?v=wall&amp;amp;gid=113460832366"&gt;http://www.facebook.com/group.php?v=info&amp;amp;gid=113460832366#!/group.php?v=wall&amp;amp;gid=113460832366&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finally, I hope you found this post useful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8573546525479861726?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8573546525479861726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8573546525479861726&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8573546525479861726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8573546525479861726'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/03/embedded-systems-committee.html' title='Embedded Systems Committee'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_N66od8KlQks/S5lMKSr9oHI/AAAAAAAAAOA/Y6a4encNufA/s72-c/ESC.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8348724750954944530</id><published>2010-02-05T00:03:00.060+02:00</published><updated>2010-09-22T21:50:34.492+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PSoC 3 first touch kit'/><category scheme='http://www.blogger.com/atom/ns#' term='PSoC Rocks'/><category scheme='http://www.blogger.com/atom/ns#' term='PSoC  Programmable System on Chip'/><category scheme='http://www.blogger.com/atom/ns#' term='Cypress PSoC 3'/><title type='text'>PSoC Rocks !!</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-weight: bold;"&gt;Cypress PSoC 3 First Touch Starter Kit&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;I just received the PSoC 3 first touch starter kit. I new about it from the &lt;span style="font-weight: bold;"&gt;Cypress &lt;/span&gt;news letter I receive regularly. This is a free educational kit. It contains many sensors and shipped with sample codes for programs implementing all these sensors.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;div style="text-align: left;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S20pjE9UmnI/AAAAAAAAANg/poohErVvo-o/s1600-h/CY8CKIT-003.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 200px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S20pjE9UmnI/AAAAAAAAANg/poohErVvo-o/s200/CY8CKIT-003.JPG" alt="" id="BLOGGER_PHOTO_ID_5435046007909161586" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;The contains thermal sensor ,  proximity sensor , capacitive touch panel , wireless communications module and my favorite sensor 3D accelerometer .&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;The first application I found as I opened the kit was &lt;span style="font-weight: bold;"&gt;PSoC Rocks&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;. This is a manually scanned AirText display that is the same as the I made using Microchip PIC 16F84. But this one is a more advanced application that uses the accelerometer in the direction at which the circuit is waved . It uses the POV ( Persistence Of Vision ) .&lt;br /&gt;&lt;br /&gt;When the acceleration threshold is reached, the scanned display is started. And it determines the direction of waving so that it doesn't draw the display in the opposite direction. Actually this is the same advancement I thought for my previous application.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/S2x5_jpcloI/AAAAAAAAANY/aeVFPFtM9Q8/s1600-h/01.2010-033.jpg"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S2x5_jpcloI/AAAAAAAAANY/aeVFPFtM9Q8/s200/01.2010-033.jpg" alt="" id="BLOGGER_PHOTO_ID_5434852983137146498" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I shoot this one myself as I started using the kit&lt;br /&gt;&lt;div style="text-align: left;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For people who don't know about Cypress and PSoC :&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;PSoC ( Programmable System on Chip ) is an advanced microcontroller architecture from PSoC  which includes some digital and analog modules for simplifying designing Embedded Systems with digital and analog peripherals. Examples of digital modules ( counters , timers , RS-232 , UART , USB .. ) and analog modules ( Programmable Gain Amplifiers , filters ... )&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/S3WeafHwBbI/AAAAAAAAAN4/xo3Lo1G7g0c/s1600-h/02.2010-010.jpg"&gt;&lt;img style="cursor: pointer; width: 200px; height: 150px;" src="http://1.bp.blogspot.com/_N66od8KlQks/S3WeafHwBbI/AAAAAAAAAN4/xo3Lo1G7g0c/s200/02.2010-010.jpg" alt="" id="BLOGGER_PHOTO_ID_5437426302987535794" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;This is the actual kit I received&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;object width="320" height="266" class="BLOG_video_class" id="BLOG_video-a8b51c3a1a3849fb" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"&gt;&lt;param name="movie" value="http://www.youtube.com/get_player"&gt;&lt;param name="bgcolor" value="#FFFFFF"&gt;&lt;param name="allowfullscreen" value="true"&gt;&lt;param name="flashvars" value="flvurl=http://v8.nonxt5.googlevideo.com/videoplayback?id%3Da8b51c3a1a3849fb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296935%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D79B6F393D7310CA436D3DB4BBC8092EC26878117.69EE01180523B14F1F969D4D0D25C51540F243E1%26key%3Dck1&amp;amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Da8b51c3a1a3849fb%26offsetms%3D5000%26itag%3Dw160%26sigh%3D3q8Z9k_G7dUiQ21uX4k7uLlQBuI&amp;amp;autoplay=0&amp;amp;ps=blogger"&gt;&lt;embed src="http://www.youtube.com/get_player" type="application/x-shockwave-flash"width="320" height="266" bgcolor="#FFFFFF"flashvars="flvurl=http://v8.nonxt5.googlevideo.com/videoplayback?id%3Da8b51c3a1a3849fb%26itag%3D5%26app%3Dblogger%26ip%3D0.0.0.0%26ipbits%3D0%26expire%3D1330296935%26sparams%3Did,itag,ip,ipbits,expire%26signature%3D79B6F393D7310CA436D3DB4BBC8092EC26878117.69EE01180523B14F1F969D4D0D25C51540F243E1%26key%3Dck1&amp;iurl=http://video.google.com/ThumbnailServer2?app%3Dblogger%26contentid%3Da8b51c3a1a3849fb%26offsetms%3D5000%26itag%3Dw160%26sigh%3D3q8Z9k_G7dUiQ21uX4k7uLlQBuI&amp;autoplay=0&amp;ps=blogger"allowFullScreen="true" /&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is a video for the kit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8348724750954944530?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8348724750954944530/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8348724750954944530&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8348724750954944530'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8348724750954944530'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2010/02/psoc-rocks.html' title='PSoC Rocks !!'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/S20pjE9UmnI/AAAAAAAAANg/poohErVvo-o/s72-c/CY8CKIT-003.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-112175076661972934</id><published>2009-12-12T16:41:00.044+02:00</published><updated>2010-01-01T01:22:30.055+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16F84 AirText'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 POV LED Display'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Air Display'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Persistence Of Vision'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Air Text'/><title type='text'>16F84 POV AirText</title><content type='html'>&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-size:180%;" &gt;&lt;br /&gt; POV (Persistence Of Vision)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;     This is a post of LEDs project. The project is called POV (Persistence Of Vision). If you are not familiar with this concept, it works as an LED matrix display.&lt;br /&gt;&lt;br /&gt; The difference is that POV display consists of one column of LEDs only and is mechanically scanned through space to give the vision of a 2D LED Matrix Display.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SzU1UiQK6vI/AAAAAAAAALY/eqXnozC0T5I/s1600-h/airTeXT.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SzU1UiQK6vI/AAAAAAAAALY/eqXnozC0T5I/s320/airTeXT.JPG" alt="" id="BLOGGER_PHOTO_ID_5419296353518545650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;   Many projects are built in rotating  ( circular motion ) or in oscillating layout ( moving left and right) .&lt;br /&gt;&lt;br /&gt;            I 've seen this project "&lt;span style="font-weight: bold;"&gt;AirText&lt;/span&gt; "&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;based on the &lt;span style="font-style: italic;"&gt;Sun Microsystems&lt;/span&gt;  &lt;span style="font-weight: bold;"&gt;Sun Spot&lt;/span&gt; , then I wanted to make a similar yet more simple project.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    There are many Microcontroller projects based on the POV concept. But i think this is the simplest circuit that can do the job with minimum hardware.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SzUm44JJZKI/AAAAAAAAALI/kj7E47MvRHU/s1600-h/12.2009-013.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 256px; height: 193px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SzUm44JJZKI/AAAAAAAAALI/kj7E47MvRHU/s320/12.2009-013.jpg" alt="" id="BLOGGER_PHOTO_ID_5419280485195539618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;         The only drawback  with this circuit is that it has no sensor for direction of motion. The&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Sun Microsystems&lt;/span&gt;  &lt;span style="font-weight: bold;"&gt;Sun Spot&lt;/span&gt; has a built in motion sensor called accelerometer. Which senses the amplitude and direction of acceleration. So when the module is moved in one direction it draws the scanned characters according to this direction.&lt;br /&gt;&lt;br /&gt;        But with this simple circuit using PIC16F84, the characters are drawn in one direction independently of the circuit direction of motion.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SzUlIIemfSI/AAAAAAAAALA/HK8j-xuaS3I/s1600-h/12.2009-011.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 201px; height: 150px;" src="http://2.bp.blogspot.com/_N66od8KlQks/SzUlIIemfSI/AAAAAAAAALA/HK8j-xuaS3I/s320/12.2009-011.jpg" alt="" id="BLOGGER_PHOTO_ID_5419278548255276322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SzUk6SP2brI/AAAAAAAAAK4/Y5tcxkasYHM/s1600-h/12.2009-010.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 201px; height: 151px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SzUk6SP2brI/AAAAAAAAAK4/Y5tcxkasYHM/s320/12.2009-010.jpg" alt="" id="BLOGGER_PHOTO_ID_5419278310359592626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can find the source code , Hex file and Proteus 7 design file &lt;a style="font-style: italic; font-weight: bold;" href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac8a42315e424e348e1c9d0a36e998cf81" target="_blank"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-112175076661972934?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/112175076661972934/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=112175076661972934&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/112175076661972934'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/112175076661972934'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/12/16f84-pov-airtext.html' title='16F84 POV AirText'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/SzU1UiQK6vI/AAAAAAAAALY/eqXnozC0T5I/s72-c/airTeXT.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8524158738810856124</id><published>2009-11-25T23:27:00.015+02:00</published><updated>2010-05-21T12:07:23.611+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16F84 TV signal'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Tetris'/><category scheme='http://www.blogger.com/atom/ns#' term='16F84 Video output'/><title type='text'>PIC 16F84 Tetris Video Game</title><content type='html'>This is an old project that uses the Microcontroller chip PIC16F84 for the famous game &lt;span style="font-weight: bold;"&gt;Tetris&lt;/span&gt;. The output of this circuit is displayed on a TV screen. It also produces sound signals and can be controller by joystick.&lt;br /&gt;&lt;br /&gt;I didn't design this circuit nor wrote the software for it , but I found it &lt;a target="_blank" href="http://www.rickard.gunee.com/projects/video/pic/tetris.php"&gt;here&lt;/a&gt; and assembled it and found it very interesting. That's why I wanted to share it with my friends.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/Sw2nPMkoOYI/AAAAAAAAAKY/HWuT0n0_bBc/s1600/tetris_big.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/Sw2nPMkoOYI/AAAAAAAAAKY/HWuT0n0_bBc/s320/tetris_big.jpg" alt="" id="BLOGGER_PHOTO_ID_5408162607056566658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;Here is a screen shot of the game.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/Sw2omRYbGwI/AAAAAAAAAKg/RDCz22PD6S0/s1600/schematic_big.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 274px;" src="http://4.bp.blogspot.com/_N66od8KlQks/Sw2omRYbGwI/AAAAAAAAAKg/RDCz22PD6S0/s320/schematic_big.png" alt="" id="BLOGGER_PHOTO_ID_5408164102996171522" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;And this is the schematic diagram for the circuit.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;There is a free Emulator for the Microchip PIC that contains TV screen plug-in for viewing PIC signals that is directed to the TV. I found it &lt;a target="_blank" href="http://www.feertech.com/misim/software.html"&gt; here &lt;/a&gt;. I also uploaded the file &lt;a target="_blank" href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac77059365abcb20424ca8d2a77d7aad89"&gt;Here&lt;/a&gt;.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;You can get the project package form &lt;a href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac77059365abcb20424ca8d2a77d7aad89" target="_blank"&gt;here&lt;/a&gt; . It contains the schematics , PCB and software .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8524158738810856124?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8524158738810856124/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8524158738810856124&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8524158738810856124'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8524158738810856124'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/11/pic-16f84-tetris-video-game.html' title='PIC 16F84 Tetris Video Game'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/Sw2nPMkoOYI/AAAAAAAAAKY/HWuT0n0_bBc/s72-c/tetris_big.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-916977717940679964</id><published>2009-10-05T17:36:00.011+02:00</published><updated>2009-10-08T01:31:39.875+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Moway  Robots'/><category scheme='http://www.blogger.com/atom/ns#' term='Educational Robotic Kits in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Buy Electronic Kits in Egypt'/><title type='text'>Moway robot</title><content type='html'>Moway is a robotic system based on the famous Microchip PIC Microcontroller. It is very useful for students of robotics and embedded systems courses.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/Ss0hMx-DcPI/AAAAAAAAAJs/cpehzVNAP_Q/s1600-h/galeria_08.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 280px; height: 217px;" src="http://2.bp.blogspot.com/_N66od8KlQks/Ss0hMx-DcPI/AAAAAAAAAJs/cpehzVNAP_Q/s320/galeria_08.jpg" alt="" id="BLOGGER_PHOTO_ID_5390000832488108274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Moway is a small autonomous robot designed mainly for practical applications of mobile robotics.&lt;br /&gt;&lt;br /&gt;Technical Specifications:&lt;br /&gt;&lt;br /&gt;The robot is controller by a 4Mhz PIC16F876A Micorcontroller.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As for the drive system, Moway has a dual servo-motor unit enables it to move.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The drive system is a closed loop system that uses PWM signals to control the speed of the motor and an encoder signal to measure the speed.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/Ss0iW-vBvaI/AAAAAAAAAJ8/tpTDgTTwcGY/s1600-h/motor1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 212px;" src="http://4.bp.blogspot.com/_N66od8KlQks/Ss0iW-vBvaI/AAAAAAAAAJ8/tpTDgTTwcGY/s320/motor1.JPG" alt="" id="BLOGGER_PHOTO_ID_5390002107225062818" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The movement of Moway can be controlled through different parameters:&lt;br /&gt;&lt;br /&gt;Speed control, Time control , Distance traveled and Angle control.&lt;br /&gt;&lt;br /&gt;Also, Moway is equipped with sensors used for advanced autonomous motion control :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/Ss0ie0FyMSI/AAAAAAAAAKE/fQ5hYljysKk/s1600-h/sensors.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 316px; height: 320px;" src="http://1.bp.blogspot.com/_N66od8KlQks/Ss0ie0FyMSI/AAAAAAAAAKE/fQ5hYljysKk/s320/sensors.JPG" alt="" id="BLOGGER_PHOTO_ID_5390002241806676258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Line sensor : Mounted on the lower front part of the robot to determine the shade of color on which the robot is standing.&lt;br /&gt;&lt;br /&gt;Obstacle detection sensors :    These sensors operate in the same way as the line sensors, but they can determine the presence of obstacles ( in digital mode ) and the distance of it ( in analog mode ).&lt;br /&gt;&lt;br /&gt;Light sensors :        Measures the intensity of ambient light and the change in it.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Moway has an expansion connector to which an  RF module can be connected to communicate with other Moways or with a PC.&lt;br /&gt;&lt;br /&gt;There are four LEDs used for indication.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.moway-robot.com/" target="blank"&gt;http://www.moway-robot.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/Ss0hfvnpzOI/AAAAAAAAAJ0/g-HyOzFFL0g/s1600-h/galeria_10.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 280px; height: 217px;" src="http://3.bp.blogspot.com/_N66od8KlQks/Ss0hfvnpzOI/AAAAAAAAAJ0/g-HyOzFFL0g/s320/galeria_10.jpg" alt="" id="BLOGGER_PHOTO_ID_5390001158274796770" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-916977717940679964?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/916977717940679964/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=916977717940679964&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/916977717940679964'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/916977717940679964'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/10/moway-robot.html' title='Moway robot'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_N66od8KlQks/Ss0hMx-DcPI/AAAAAAAAAJs/cpehzVNAP_Q/s72-c/galeria_08.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-9175592484447460334</id><published>2009-09-20T10:09:00.020+02:00</published><updated>2010-05-23T01:38:24.215+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F917 Mood Light'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F917 DC motor speed control'/><category scheme='http://www.blogger.com/atom/ns#' term='16f917 CCP Module configuration'/><title type='text'>16F917 CCP Block PWM</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;PIC 16F917 PWM Generation:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;PWM can easily be generated on the PIC 16F917 using the CCP block . If you are new to this concept then let me introduce it to you.&lt;br /&gt;&lt;br /&gt;New Microcontrollers contain dedicated hardware blocks for generating signals and for doing special functions. An example of these blocks is the CCP block in many &lt;span style="font-weight: bold;"&gt;Microchip&lt;/span&gt; Microcontrollers.&lt;br /&gt;&lt;br /&gt;In this post, I 'll introduce you with the &lt;span style="font-weight: bold;"&gt;CCP &lt;/span&gt;block of the PIC 16F917 Microcontroller.&lt;br /&gt;&lt;br /&gt;It is called &lt;span style="font-weight: bold;"&gt;Capture &lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Compare &lt;/span&gt;and &lt;span style="font-weight: bold;"&gt;PWM &lt;/span&gt;block. Here, we explain the PWM function.&lt;br /&gt;&lt;br /&gt;As the name implies, it generates PWM signals in &lt;span style="font-style: italic; font-weight: bold;"&gt;hardware &lt;/span&gt;instead of the &lt;span style="font-style: italic; font-weight: bold;"&gt;software &lt;/span&gt;PWM signal we generated using the PIC 16F84 in an old post of this blog.&lt;br /&gt;&lt;br /&gt;The advantage of this concept is that you save code space and processing time for another functions and tasks.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;So how can you configure this block ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You 'll find an extensive explanation for this topic on the PIC 16F917 datasheet.&lt;br /&gt;&lt;br /&gt;And I used this link to calculate the values for the block configuration registers.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.micro-examples.com/public/microex-navig/doc/097-pwm-calculator" target="_blank"&gt;http://www.micro-examples.com/public/microex-navig/doc/097-pwm-calculator&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SrkllFXPuzI/AAAAAAAAAJE/8CncuNFPBm8/s1600-h/PWMccp.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 194px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SrkllFXPuzI/AAAAAAAAAJE/8CncuNFPBm8/s320/PWMccp.JPG" alt="" id="BLOGGER_PHOTO_ID_5384376148523203378" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;You can find the design files and source code for the project &lt;a style="font-style: italic;" href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac924a73afe9127b26b99f3f1679ee9294" target="_blank"&gt;here&lt;/a&gt; .&lt;br /&gt;&lt;br /&gt;Now you can use this project to control any circuit with PWM signals generated with PIC 16F917 CCP PWM block as you did before by using PIC 16F84.&lt;br /&gt;&lt;br /&gt;You can control DC motor speed , LED intensity and make Mood Light.&lt;br /&gt;&lt;br /&gt;If you have any questions or feedback, contact me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-9175592484447460334?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/9175592484447460334/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=9175592484447460334&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/9175592484447460334'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/9175592484447460334'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/09/16f917-ccp-block-pwm.html' title='16F917 CCP Block PWM'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_N66od8KlQks/SrkllFXPuzI/AAAAAAAAAJE/8CncuNFPBm8/s72-c/PWMccp.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-3735437546301676796</id><published>2009-07-29T16:17:00.012+03:00</published><updated>2009-07-29T21:22:38.838+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 sound'/><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='16f84 tone generation'/><category scheme='http://www.blogger.com/atom/ns#' term='16f84 tone generator'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='16f84 tones'/><category scheme='http://www.blogger.com/atom/ns#' term='Proteus ISIS 7'/><title type='text'>PIC 16F84 Sound Generation</title><content type='html'>Do you know that you can  generate tones of sound with the PIC16F84?&lt;br /&gt;&lt;br /&gt;Yes you can generate these tones similar to the Midi tones of the old mobile phones. This is a very simple and funny circuit and you can try it on the simulation software Proteus ISIS 7 before building it.&lt;br /&gt;&lt;br /&gt;Actually the circuit is so small nearly contains no components other than the microcontroller, the crystal oscillator and some resistors.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SnBfxY1AKcI/AAAAAAAAAI8/rzKjGwq7wl4/s1600-h/PIC+Doorbell.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 194px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SnBfxY1AKcI/AAAAAAAAAI8/rzKjGwq7wl4/s320/PIC+Doorbell.JPG" alt="" id="BLOGGER_PHOTO_ID_5363892458281249218" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The software generates the tones according to the predefined words which represent tones.&lt;br /&gt;&lt;br /&gt;The circuit lets you choose one of two tones with two push buttons.&lt;br /&gt;&lt;br /&gt;You can find the Proteus ISIS Design files DSN, Code ( Assembly ) and HEX file as a sample project in Proteus ISIS 7. From the menu bar , press open file . You 'll find the project under the Proteus --&gt; Samples --&gt; VSM for PIC16 --&gt;  PIC Doorbell.&lt;br /&gt;&lt;br /&gt;So , open the design now and if you like , start building the circuit and make you own tones.&lt;br /&gt;&lt;br /&gt;Have a nice time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-3735437546301676796?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/3735437546301676796/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=3735437546301676796&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3735437546301676796'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3735437546301676796'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/07/pic-16f84-sound-generation.html' title='PIC 16F84 Sound Generation'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/SnBfxY1AKcI/AAAAAAAAAI8/rzKjGwq7wl4/s72-c/PIC+Doorbell.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-685814616164770014</id><published>2009-07-13T18:27:00.012+03:00</published><updated>2010-04-23T22:45:51.619+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F917'/><category scheme='http://www.blogger.com/atom/ns#' term='PicProm'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F917 programmer'/><title type='text'>New Microcontroller Chip</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Microchip PIC 16F917&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I used the Microchip PIC 16F917 in simple programs and tried the good features of it. I ordered some samples from &lt;span style="font-weight: bold;"&gt;Microchip.com&lt;/span&gt; and they sent them to me. I searched online for a simple programmer that I use it to program the chip the same way I do with the &lt;span style="font-weight: bold;"&gt;PIC 16F84&lt;/span&gt;. I found it &lt;a target="_blank" style="font-style: italic;" href="http://webs.uolsinectis.com.ar/nancy/pic/pic_en.html"&gt;here&lt;/a&gt; . And I uploaded it &lt;a target="_blank" style="font-style: italic; font-weight: bold;" href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac924a73afe9127b26b99f3f1679ee9294"&gt;here&lt;/a&gt; in case you couldn't find it .&lt;br /&gt;&lt;br /&gt;The programming circuit is very simple and uses the serial port.&lt;br /&gt;&lt;br /&gt;Here is the schematic diagram :&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SltU1htl1KI/AAAAAAAAAIM/lZv6Bp5Q3eE/s1600-h/PICProm+simple.png"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 258px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SltU1htl1KI/AAAAAAAAAIM/lZv6Bp5Q3eE/s320/PICProm+simple.png" alt="" id="BLOGGER_PHOTO_ID_5357969460246729890" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;After you build this simple circuit, you can use the program to load the HEX file.&lt;br /&gt;&lt;br /&gt;This is a snapshot of the software :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SltVj2PisuI/AAAAAAAAAIU/9U7e9y1pKI4/s1600-h/PICPRom.png"&gt;&lt;br /&gt;&lt;/a&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/S9IE7u2BrnI/AAAAAAAAAPU/YJ-n-9wTVq4/s1600/picprom.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 236px;" src="http://4.bp.blogspot.com/_N66od8KlQks/S9IE7u2BrnI/AAAAAAAAAPU/YJ-n-9wTVq4/s320/picprom.JPG" alt="" id="BLOGGER_PHOTO_ID_5463434722187259506" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The Microchip PIC 16F917 microcontroller is a very nice and modern chip. You can find its datasheet here :&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en020202"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 277px; height: 160px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SlylZb9BhUI/AAAAAAAAAIc/UQ29Gvb3bNc/s320/16F917datasheet.JPG" alt="" id="BLOGGER_PHOTO_ID_5358339513083069762" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;You can see the circuit I built lately here :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SlymbPir49I/AAAAAAAAAIk/Bnjb2jeOL8Q/s1600-h/16F917Programmer.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 236px; height: 178px;" src="http://2.bp.blogspot.com/_N66od8KlQks/SlymbPir49I/AAAAAAAAAIk/Bnjb2jeOL8Q/s320/16F917Programmer.jpg" alt="" id="BLOGGER_PHOTO_ID_5358340643622740946" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;You 'll see more projects using this chip. And I 'll be posting projects for the &lt;span style="font-weight: bold;"&gt;PIC 16F84&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;By the way, The &lt;span style="font-weight: bold;"&gt;PIC 16F917&lt;/span&gt; is backward compatible with the &lt;span style="font-weight: bold;"&gt;PIC 16F84&lt;/span&gt;. That means if you write a code for &lt;span style="font-weight: bold;"&gt;PIC 16F84 &lt;/span&gt;in assembly or C or even compiled it to HEX file , you can still use it with the &lt;span style="font-weight: bold;"&gt;PIC 16F917 &lt;/span&gt;without a change in code or a recompilation.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Happy programming. Have a nice time.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-685814616164770014?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/685814616164770014/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=685814616164770014&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/685814616164770014'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/685814616164770014'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/07/new-microcontroller-chip.html' title='New Microcontroller Chip'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/SltU1htl1KI/AAAAAAAAAIM/lZv6Bp5Q3eE/s72-c/PICProm+simple.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1615439378116034399</id><published>2009-06-17T00:37:00.015+03:00</published><updated>2010-05-21T23:16:29.965+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='LED chaser'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='knight rider 16f84 chaser'/><category scheme='http://www.blogger.com/atom/ns#' term='16f84 chaser'/><title type='text'>LED there be light :</title><content type='html'>&lt;span style="font-size:130%;"&gt;I love LEDs !!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In this lesson we’ll not learn any new technique from the technical point of view. But this is a cool project. &lt;span style="font-weight: bold;"&gt;I love LEDs&lt;/span&gt;. That‘s true. I cannot deny that. In this project I designed a nice and a simple thing. It is called a chaser. It consists of a row of LEDs. Only one LED is ON during a certain time and all the others are OFF. Then the next one is ON. And so on until reaching the last LED in the row. Then the LED before the last on is ON until reaching the start of the row. The light continues going back and forth. For those who saw the series ‘Night Rider ‘, it reminds you of the front logo of the car &lt;span style="font-style: italic;"&gt;Kitt&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" target="_blank" href="http://www.mediafire.com/file/jtmyznhjzyu/anim40.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 42px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SjgXPQ2HHdI/AAAAAAAAAH0/93LC2QPJN2s/s320/anim40.gif" alt="" id="BLOGGER_PHOTO_ID_5348050108489866706" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;As usual, I give you the code and the design files of this project to see the simulation running on the Proteus ISIS 7 &lt;a href="http://www.mediafire.com/file/mg0z3hnmtxg/Chaser.zip" target=”_blank”&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;here&lt;/span&gt;&lt;/a&gt;. And for those who like it, the project can easily be built within minutes.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mediafire.com/file/mg0z3hnmtxg/Chaser.zip" target=”_blank”&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 185px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SjgYNTGAy5I/AAAAAAAAAH8/fk6Pair_Yeo/s320/Chaser.jpg" alt="" id="BLOGGER_PHOTO_ID_5348051174245321618" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;If you need any information, you can comment or send me an Email.&lt;br /&gt;&lt;br /&gt;Thank you for dropping by.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1615439378116034399?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1615439378116034399/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1615439378116034399&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1615439378116034399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1615439378116034399'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/06/led-there-be-light.html' title='LED there be light :'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_N66od8KlQks/SjgXPQ2HHdI/AAAAAAAAAH0/93LC2QPJN2s/s72-c/anim40.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-9109828159569396741</id><published>2009-04-02T21:13:00.028+02:00</published><updated>2011-07-03T14:30:59.797+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Proteus 7 DC Motor control'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller Motor control'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM PIC 16F84'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F84 Motor Control'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM Microcontroller Motor control'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM DC Motor control'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM Duty Cycle'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM Motor control'/><title type='text'>DC MOTOR PWM CONTROL :</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-_yjvEfA1gu0/ThBgjgvKFKI/AAAAAAAAAbo/CV5U2zV7ohc/s1600/pwM%2Bmotor.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;In this post, we 'll learn the DC motor control using PWM signal. We learned how to generate PWM signal using PIC 16F84 Microcontroller.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;Hardware :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The PWM signal drives a &lt;span style="font-weight: bold;"&gt;2N2222&lt;/span&gt; transistor which acts as an electronic switch. The transistor switches the motor driving current on and off at high rate.&lt;br /&gt;&lt;br /&gt;In the following figure, there are two circuits. The control circuit ( the microcontroller ) and the driving circuit ( the motor and the transistor ).&lt;br /&gt;&lt;br /&gt;The DC motor draws relatively high current than the current in the microcontroller circuit. The transistor isolates the two circuits.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;By changing the duty-cycle of the PWM signal, we get different average DC voltage&lt;br /&gt;for each duty-cycle value . The result is the change of the motor speed corresponding to that duty-cycle.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SjAfqhyLZDI/AAAAAAAAAHc/uPzQvB35H2o/s1600-h/PWM+motor.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();}  catch(e) {}" href="http://3.bp.blogspot.com/-_yjvEfA1gu0/ThBgjgvKFKI/AAAAAAAAAbo/CV5U2zV7ohc/s1600/pwM%2Bmotor.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 239px;" src="http://3.bp.blogspot.com/-_yjvEfA1gu0/ThBgjgvKFKI/AAAAAAAAAbo/CV5U2zV7ohc/s320/pwM%2Bmotor.JPG" alt="" id="BLOGGER_PHOTO_ID_5625102097785164962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;Software:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We use the &lt;span style="font-weight: bold;"&gt;PWM&lt;/span&gt; routine with two defined duty cycle values. The duty cycle value &lt;span style="font-style: italic; color: rgb(51, 204, 0); font-weight: bold;"&gt;duty1&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;is the larger value which drives the motor faster than &lt;span style="font-style: italic; color: rgb(51, 204, 0); font-weight: bold;"&gt;duty2 &lt;/span&gt;value. When the &lt;span style="font-weight: bold;"&gt;Boost&lt;/span&gt;&lt;span style="color: rgb(51, 204, 0); font-weight: bold;"&gt; &lt;/span&gt;button is pressed, the first duty cycle value is selected. When the button is released, the second value is selected.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SftC8wILTvI/AAAAAAAAAHU/a5YtI0tLbdY/s1600-h/pwm_motor_sim.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 193px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SftC8wILTvI/AAAAAAAAAHU/a5YtI0tLbdY/s320/pwm_motor_sim.jpg" alt="" id="BLOGGER_PHOTO_ID_5330928195401895666" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The software routine is very simple. As usual, you can &lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;a href="https://docs.google.com/leaf?id=0Byhyj_-YLEr1NDcwNjYyNDQtYTI3Ni00NTNlLWI0YWItNDhlZTA4MDBlYjM1&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50" target="”_blank”"&gt;download the Proteus 7 model from here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you need any help or have any feedback, just let me know.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; color: rgb(51, 204, 0); font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-9109828159569396741?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/9109828159569396741/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=9109828159569396741&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/9109828159569396741'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/9109828159569396741'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/04/dc-motor-pwm-control.html' title='DC MOTOR PWM CONTROL :'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-_yjvEfA1gu0/ThBgjgvKFKI/AAAAAAAAAbo/CV5U2zV7ohc/s72-c/pwM%2Bmotor.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2738908446828807989</id><published>2009-03-27T14:48:00.007+02:00</published><updated>2009-04-04T14:15:14.958+02:00</updated><title type='text'>I wish I met  you in person</title><content type='html'>I wish I meet you in person to thank you for visiting my blog and for knowing your opinion.&lt;br /&gt;And to get more ideas from all around the world about Microchip PIC.&lt;br /&gt;&lt;br /&gt;I also want to meet you to tell you about my religion , &lt;a style="font-weight: bold;" href="http://muslim-iam.blogspot.com/"&gt;Islam&lt;/a&gt;. Yes, I am Muslim. And I am proud of being a Muslim. And since I had the chance to communicate with  open minded , highly educated people from all the world , I can give you an &lt;a href="http://muslim-iam.blogspot.com/"&gt;&lt;span style="font-weight: bold;"&gt;Introduction to Islam&lt;/span&gt;&lt;/a&gt;. This religion that I want to tell the whole world the truth about it and how it makes the world a better place for the humanity. So , I invite you to check this &lt;a href="http://muslim-iam.blogspot.com/"&gt;&lt;span style="font-weight: bold;"&gt;Introduction to Islam&lt;/span&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;If you need to know more about Islam from trusted sources, you can order free book from &lt;a href="http://www.islamic-message.net/"&gt;&lt;span style="font-weight: bold;"&gt;here&lt;/span&gt;&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2738908446828807989?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2738908446828807989/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2738908446828807989&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2738908446828807989'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2738908446828807989'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/03/i-wish-i-met-you-in-person.html' title='I wish I met  you in person'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2624356349913408622</id><published>2009-03-07T08:44:00.092+02:00</published><updated>2010-05-23T01:25:34.189+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PWM PIC 16F84'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16F84 Mood Light'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM Mood light'/><category scheme='http://www.blogger.com/atom/ns#' term='PWM C code'/><title type='text'>PWM Mood Light using PIC 16F84</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Generating PWM signal using PIC 16F84&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;PWM ( Pulse Width Modulation ) is a square signal involves changes in the duration of the on time  ( duty cycle ) . It can be easily generated by the PIC 16F84 . This PWM signal can be used in many applications ( for example : DC motor speed , LED brightness intensity , Mood Light Lamps )  .&lt;br /&gt;&lt;br /&gt;PWM can be used when no DAC ( Digital-to-Analog Converter ) is available in the microcontroller chip or as a stand alone chip. The average DC voltage values are equivalent to analoge values as where you used DAC for motor speed control .&lt;br /&gt;&lt;br /&gt;And for light brightness intensity , at high frequency , the blinking process is not observed by human eyes and what you see is only brightness intensity corresponding to the duty cycle ( time at which light is ON)&lt;br /&gt;&lt;br /&gt;At longer duty cycle , LED is ON for longer time , so you see it brighter.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SbuwhvN9V6I/AAAAAAAAAGQ/Dol3vIR1rzI/s1600-h/PWM3.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 174px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SbuwhvN9V6I/AAAAAAAAAGQ/Dol3vIR1rzI/s320/PWM3.JPG" alt="" id="BLOGGER_PHOTO_ID_5313034279070816162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;At shorter duty cycle , LED is ON  for shorter time , so you see it less brighter.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SbuwU0RrMqI/AAAAAAAAAGI/9AqhgHBsvQA/s1600-h/PWM1.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 174px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SbuwU0RrMqI/AAAAAAAAAGI/9AqhgHBsvQA/s320/PWM1.JPG" alt="" id="BLOGGER_PHOTO_ID_5313034057090282146" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The previous examples used constant duty cycles at each time which means constant brightness LED and constant speed for motor.&lt;br /&gt;&lt;br /&gt;To make Mood Light LED, you need to change the duty cycle of the PWM signal by increasing  and decreasing it back and forth.&lt;br /&gt;&lt;br /&gt;You get this one .&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7aca87b2ed34be90352b8eada0a1ae8665a" target="_blank"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 174px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SbvMh7Ws0DI/AAAAAAAAAGo/2rE6J_MSgRQ/s320/mood.gif" alt="" id="BLOGGER_PHOTO_ID_5313065068654284850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Note :&lt;br /&gt;&lt;br /&gt;You see this image still, just click it and save it to your PC you 'll see it animating ( PWM is variable ) .&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I connected this circuit to the LED and it did just as I expected , it looked brighter then dimmed and then brighter again.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7aca87b2ed34be90352b8eada0a1ae8665a" target="_blank"&gt;You can have the circuit and the code files from here.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you need any help configuring the compilation settings for Hi-Tech and ISIS 7 , you can check the previous posts. If you need further help about code and hardware you are welcome to contact me.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2624356349913408622?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2624356349913408622/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2624356349913408622&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2624356349913408622'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2624356349913408622'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/03/miicrochip-pic-16f84-tutorial-for.html' title='PWM Mood Light using PIC 16F84'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/SbuwhvN9V6I/AAAAAAAAAGQ/Dol3vIR1rzI/s72-c/PWM3.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-5865556555370757101</id><published>2009-02-27T22:19:00.048+02:00</published><updated>2010-05-21T19:17:57.962+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 sine wave generation'/><category scheme='http://www.blogger.com/atom/ns#' term='lookup table PIC 16F84 sine wave generation'/><title type='text'>Lookup table Sine Wave Generation</title><content type='html'>&lt;span style=";font-family:verdana;font-size:130%;"  &gt;&lt;span style="font-weight: bold;"&gt;Sine Wave Generation using PIC 16f84A&lt;/span&gt; :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;In this lesson, we 'll learn to use the PIC 16F84A to generate a sine wave signal using &lt;span style="font-weight: bold;"&gt;lookup&lt;/span&gt; &lt;span style="font-weight: bold;"&gt;table&lt;/span&gt; method .&lt;br /&gt;&lt;br /&gt;These  are  pre-calculated values of a certain signal ( &lt;span style="font-style: italic;"&gt;here will be a sine wave&lt;/span&gt; ) , then the signal is transmitted at execution time . You can consider this an inverse process of the digitization . At execution time, the signal is sent to the output port of the Microcontroller at the rate you determine. You then get the original signal.&lt;br /&gt;&lt;br /&gt;Attached a text file that explains how I calculated the values.&lt;br /&gt;&lt;br /&gt;The hardware circuit is very simple. It is called Resistor Ladder Network.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SahfU1ee5NI/AAAAAAAAAFU/-7tNkUrfReE/s1600-h/DDS_circuit.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 232px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SahfU1ee5NI/AAAAAAAAAFU/-7tNkUrfReE/s320/DDS_circuit.JPG" alt="" id="BLOGGER_PHOTO_ID_5307596972413084882" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;When you configure and run your program , you should get an output signal like this&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SahgryUZviI/AAAAAAAAAFc/jMCNwHpPTZs/s1600-h/DDS.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 174px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SahgryUZviI/AAAAAAAAAFc/jMCNwHpPTZs/s320/DDS.JPG" alt="" id="BLOGGER_PHOTO_ID_5307598466214116898" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;  &lt;a href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ac91c4735f9699fc405621d66e282a0ee8" target="”_blank”"&gt;You can get the circuit for Proteus ISIS 7   and the code from here.&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;  If you need any help for configuring the simulator , check my older posts.&lt;br /&gt;&lt;br /&gt;  You can also contact me directly if you need any further help.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-5865556555370757101?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/5865556555370757101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=5865556555370757101&amp;isPopup=true' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5865556555370757101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5865556555370757101'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/02/direct-digital-synthesis.html' title='Lookup table Sine Wave Generation'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/SahfU1ee5NI/AAAAAAAAAFU/-7tNkUrfReE/s72-c/DDS_circuit.JPG' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2018128502991595280</id><published>2009-02-04T22:42:00.029+02:00</published><updated>2010-06-15T22:50:58.479+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 timer'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 TMR0'/><category scheme='http://www.blogger.com/atom/ns#' term='7 segment display C'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 timer interrupt C'/><category scheme='http://www.blogger.com/atom/ns#' term='interrupt'/><title type='text'>Introduction to Interrupt</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TBfCQW4VQLI/AAAAAAAAAUM/VsEJa26ESRY/s1600/interrupt.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal  {mso-style-parent:"";  margin:0in;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:12.0pt;  font-family:"Times New Roman";  mso-fareast-font-family:"Times New Roman";} @page Section1  {size:8.5in 11.0in;  margin:1.0in 1.25in 1.0in 1.25in;  mso-header-margin:.5in;  mso-footer-margin:.5in;  mso-paper-source:0;} div.Section1  {page:Section1;}  /* List Definitions */  @list l0  {mso-list-id:351762426;  mso-list-type:hybrid;  mso-list-template-ids:1398947098 75558756 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l0:level1  {mso-level-text:%1-;  mso-level-tab-stop:.5in;  mso-level-number-position:left;  text-indent:-.25in;} ol  {margin-bottom:0in;} ul  {margin-bottom:0in;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-parent:"";  mso-padding-alt:0in 5.4pt 0in 5.4pt;  mso-para-margin:0in;  mso-para-margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Times New Roman";  mso-ansi-language:#0400;  mso-fareast-language:#0400;  mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;&lt;o:p&gt; &lt;/o:p&gt;  &lt;p class="MsoNormal"&gt;What is the Interrupt?&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;What‘s the difference between polling and Interrupt?&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Let ‘s take an example when you need to know if you have a phone call , you can know this using one of two ways :&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;1-&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span dir="ltr"&gt;Go to the telephone and pickup the handset to see if you have a phone call. You‘ll need to do this many times. And you will stop what you do every time.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;2-&lt;span style=";font-family:&amp;quot;;font-size:7;"  &gt;      &lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;&lt;span dir="ltr"&gt;Wait until the phone rings , then you go to it and pick up the hand-set.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.5in; text-indent: -0.25in;"&gt;&lt;span dir="ltr"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Polling is like the first example and Interrupt is like the second example. You need to use interrupt in some applications. It sure decreases the load on the microcontroller and saves its time while doing another thing.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;There are two types of interrupt: software and hardware interrupts.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;In the following application, we will use Timer interrupt ( one of the Software interrupts ) which is initiated  by the Timer0 overflow.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;The timer is a free counting register that increments depending on the crystal oscillator speed and the prescaler settings.  We can use the timer to calculate accurate time periods. And because we are using interrupt , we don 't have to keep track of time while we are doing another thing. In the following example , the &lt;span style="font-weight: bold;"&gt;main &lt;/span&gt;program functions to monitor a push button and displays a number on a 7 segment display. The number on the display indicates the period in seconds.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Without using interrupt, we would have to calculate the time of the period and taking the display time into account.&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TBfCQW4VQLI/AAAAAAAAAUM/VsEJa26ESRY/s1600/interrupt.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TBfCQW4VQLI/AAAAAAAAAUM/VsEJa26ESRY/s320/interrupt.JPG" alt="" id="BLOGGER_PHOTO_ID_5483064657622417586" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a href="http://www.mediafire.com/?sharekey=76fc6283e5e409396b21be4093fab7ace04e75f6e8ebb871"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a target="_blank"  href="https://docs.google.com/leaf?id=0Byhyj_-YLEr1ZGM2MWE0MDUtNDY5Yy00NWQ3LWE3MzgtNjg3ZjJiNjllMTI2&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;&lt;span style="font-weight: bold;"&gt;Here is the link for the project file and code.&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SZ5yDAhBc6I/AAAAAAAAAFE/RwRwyqhbdwo/s1600-h/windows.JPG"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SZ5yDAhBc6I/AAAAAAAAAFE/RwRwyqhbdwo/s1600-h/windows.JPG"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SZ5yDAhBc6I/AAAAAAAAAFE/RwRwyqhbdwo/s1600-h/windows.JPG"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Today, I revisited &lt;a target="_blank" href="http://courses.cit.cornell.edu/ee476/FinalProjects/" target="_blank"&gt;&lt;span style="font-weight: bold;"&gt;this page&lt;/span&gt;&lt;/a&gt; which contains many Microcontroller projects. This is the Cornell University Electrical Engineering students projects page. Many ideas can be found here.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SZ5yDAhBc6I/AAAAAAAAAFE/RwRwyqhbdwo/s1600-h/windows.JPG"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SZ5yDAhBc6I/AAAAAAAAAFE/RwRwyqhbdwo/s1600-h/windows.JPG"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 0);"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2018128502991595280?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2018128502991595280/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2018128502991595280&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2018128502991595280'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2018128502991595280'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/02/introduction-to-interrupt.html' title='Introduction to Interrupt'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/TBfCQW4VQLI/AAAAAAAAAUM/VsEJa26ESRY/s72-c/interrupt.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-2967579840843149197</id><published>2009-01-31T14:42:00.062+02:00</published><updated>2010-06-14T19:43:00.498+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Button C code'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='Button Input'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded'/><title type='text'>Input to the PIC 16f84</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TBZcAYNOdHI/AAAAAAAAAUE/zV4JLpOU0NY/s1600/button.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;Now that we learned how to get output form the PIC &lt;span style="font-weight: bold; font-style: italic;"&gt;( flashing LED )&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt; &lt;/span&gt;&lt;/span&gt;, we 'll learn to input the&lt;br /&gt;&lt;br /&gt;Microcontroller by a push button . This will give you an idea to get order from the user to do an&lt;br /&gt;&lt;br /&gt;action &lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;( open door, turn-off lights, ......... ) .&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;; Button.ASM&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;******************************************************&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;list p=16f84&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;include "p16f84.inc"&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;org 0x00&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;goto start&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;org 0x20&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;start&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bcf INTCON,7&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movlw 0x00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;bsf STATUS,5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movwf TRISA&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bcf STATUS,5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movlw 0xFF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bsf STATUS,5&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;movwf TRISB&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bcf STATUS,5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;again&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;btfss PORTB,0&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;call LED_ON&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;call LED_OFF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;goto again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;LED_ON&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;movlw 0xFF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movwf PORTA&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;goto again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;LED_OFF&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;movlw 0x00&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movwf PORTA&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;goto again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;span style="font-style: italic;"&gt;;***********************************************&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The program makes the LED is ON when the Button is pressed , LED off when Button is released.&lt;br /&gt;&lt;br /&gt;The only new command here is &lt;span style="font-weight: bold;"&gt;BTFSS &lt;/span&gt;which checks if the button is pressed or released.&lt;br /&gt;&lt;br /&gt;What it makes is &lt;span style="font-weight: bold;"&gt;Bit Test F Skip if Set&lt;/span&gt; where F is a bit in register. This command is a&lt;br /&gt;&lt;br /&gt;bit-oriented command. It means it deals with one bit of the register.&lt;br /&gt;&lt;br /&gt;Build the following circuit in Proteus 7 ISIS :&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/TBZcAYNOdHI/AAAAAAAAAUE/zV4JLpOU0NY/s1600/button.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/TBZcAYNOdHI/AAAAAAAAAUE/zV4JLpOU0NY/s320/button.JPG" alt="" id="BLOGGER_PHOTO_ID_5482670757937837170" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SYR6l3ZlfUI/AAAAAAAAAEk/OtAz9NMsfDo/s1600-h/button.JPG"&gt;&lt;br /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Follow the steps you learned &lt;a href="http://embedded-egypt.blogspot.com/2008/12/this-is-your-first-program.html"&gt;before&lt;/a&gt; to add the source code to the circuit and configure it , then&lt;br /&gt;&lt;br /&gt;start simulation. &lt;span style="font-weight: bold;"&gt;Of course in this time you 'll add the &lt;/span&gt;&lt;span style="font-weight: bold; font-style: italic;"&gt;Button.ASM&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; source code.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Now , we 'll write the same program in C&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;//******************************************************&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;#include"pic.h"&lt;pic.h&gt;&lt;pic.h&gt;&lt;/pic.h&gt;&lt;/pic.h&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;main()&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;unsigned char i;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;TRISA = 0 ; // Make PORTB output&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;TRISB = 0xFF ; // Make PORTB input&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;PORTA = 0 ; // Initialize PORTB&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;for(;;) // This is the infinite loop that keeps the PIC running&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;{&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;if ( PORTB == 0 )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;PORTA = 1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;else &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;PORTA = 0 ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;//************************************************************&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Note that the logic is inverted because the button by default inputs &lt;span style="font-weight: bold; font-style: italic;"&gt;one&lt;/span&gt; to the PIC and when pressed inputs &lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;zero.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Again , you can configure the project for the C source code from &lt;a href="http://embedded-egypt.blogspot.com/2009/01/let-s-speed-rate.html"&gt;this lesson&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;You can download the project files and source code from &lt;/span&gt;&lt;a style="font-weight: bold;" target="_blank" href="https://docs.google.com/leaf?id=0Byhyj_-YLEr1YWQyN2IxMDItOGZhNS00MzA2LWI2N2UtNWIyMzBiMWEzNmYx&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;&lt;span style="font-style: italic;"&gt;here&lt;/span&gt;&lt;/a&gt;&lt;span style="font-weight: bold;"&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Enjoy.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-2967579840843149197?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/2967579840843149197/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=2967579840843149197&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2967579840843149197'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/2967579840843149197'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/01/input-to-pic-16f84.html' title='Input to the PIC 16f84'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/TBZcAYNOdHI/AAAAAAAAAUE/zV4JLpOU0NY/s72-c/button.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1595752961875020233</id><published>2009-01-22T14:42:00.004+02:00</published><updated>2010-06-05T11:37:20.821+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Electronic circuit'/><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='layout'/><category scheme='http://www.blogger.com/atom/ns#' term='PCB'/><category scheme='http://www.blogger.com/atom/ns#' term='LED flasher circuit'/><title type='text'>Building your first circuit application:</title><content type='html'>&lt;span style="font-weight: bold;"&gt;Enough simulators!!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You may want to try the real circuit to see the microcontroller in action right now. I encourage you to build the circuit and feel it working. This will make you happy and will be a motivation to learn more about microcontrollers and make useful circuits.&lt;br /&gt;&lt;br /&gt;So what do you need to get started?&lt;br /&gt;&lt;br /&gt;- I guess you have the programming circuit and you have loaded the chip with the HEX file. If not yet, please do it now.&lt;br /&gt;&lt;br /&gt;All you need you do is to put the chip in its socket in the programmer and open the program ICProg.&lt;br /&gt;&lt;br /&gt;You need to configure the program as follows:&lt;br /&gt;&lt;br /&gt;1) Form Settings menu, select Hardware.&lt;br /&gt;&lt;br /&gt;- Select JDM Programmer.&lt;br /&gt;- Select the com port you use.&lt;br /&gt;- Select Windows API for Interface menu.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SXhw4RP6qnI/AAAAAAAAAEU/jj_yPhoZwmM/s1600-h/icProgConf.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 274px;" src="http://2.bp.blogspot.com/_N66od8KlQks/SXhw4RP6qnI/AAAAAAAAAEU/jj_yPhoZwmM/s320/icProgConf.JPG" alt="" id="BLOGGER_PHOTO_ID_5294105473979165298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;2)  Select the microcontroller of your focus (Microchip PIC 16F84A) from the device menu.&lt;br /&gt;&lt;br /&gt;3) Select the &lt;span style="font-weight: bold;"&gt;Flasher.Hex&lt;/span&gt; file to be loaded into the Microcontroller .&lt;br /&gt;&lt;br /&gt;4) Choose HS for the Oscillator and clear WDT option.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SXhwr2VLpFI/AAAAAAAAAEM/k3nRDh2iXPg/s1600-h/icProg.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 255px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SXhwr2VLpFI/AAAAAAAAAEM/k3nRDh2iXPg/s320/icProg.JPG" alt="" id="BLOGGER_PHOTO_ID_5294105260595061842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;- Build the simplest application circuit for the PIC, the LED flasher.&lt;br /&gt;&lt;br /&gt;Here is the schematic.&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/Sflsdbt9ihI/AAAAAAAAAHE/pOFz56b9X2A/s1600-h/picConnection.JPG"&gt;&lt;img style="cursor: pointer; width: 400px; height: 242px;" src="http://2.bp.blogspot.com/_N66od8KlQks/Sflsdbt9ihI/AAAAAAAAAHE/pOFz56b9X2A/s400/picConnection.JPG" alt="" id="BLOGGER_PHOTO_ID_5330410886882232850" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;Simple, isn‘t it?&lt;br /&gt;&lt;br /&gt;You don‘t need to make it complex. The push button connected to the pin 4 (~MCLR) is connected to demonstrate how to connect the circuit if you want to reset the microcontroller. If you don‘t need to do this (in this small project) connect the pin 4 to Vcc directly (+ terminal of the battery). This connection makes the microcontroller awake (not reset).&lt;br /&gt;&lt;br /&gt;If every thing goes right, you get the LED flashing at a visible rate. Congratulations , you ‘ve just built your first embedded project!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1595752961875020233?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1595752961875020233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1595752961875020233&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1595752961875020233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1595752961875020233'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/01/building-your-first-application.html' title='Building your first circuit application:'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_N66od8KlQks/SXhw4RP6qnI/AAAAAAAAAEU/jj_yPhoZwmM/s72-c/icProgConf.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-3475200332552854317</id><published>2009-01-15T20:14:00.004+02:00</published><updated>2010-06-10T00:25:47.475+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='LED flasher C code'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84 LED flasher C code'/><title type='text'>Let 's speed up the rate !!</title><content type='html'>Now that we learned to flash an LED using the PIC 16F84, we 'll increase the rate of information flow.&lt;br /&gt;&lt;br /&gt;We 'll write the same program using C language. This will be very easy as it is a popular language and it also a high-level language. Most of us used it for computer programming.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;That 's the flasher program:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;//************************************************&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;#include"pic.h"&lt;pic.h&gt;&lt;/pic.h&gt;&lt;/span&gt;&lt;pic.h&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;main()&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;unsigned char i;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;TRISB = 0 &lt;/span&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;; // &lt;span style="font-style: italic;"&gt;Make PORTB output&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;PORTB = 0 ; // &lt;span style="font-style: italic;"&gt;Initialize PORTB&lt;/span&gt;&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;for(;;) // &lt;span style="font-style: italic;"&gt;This is the infinite loop that keeps the PIC running&lt;/span&gt;&lt;/span&gt; &lt;span style="font-weight: bold; color: rgb(51, 51, 255); font-style: italic;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;{&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;PORTB = 0x00;&lt;br /&gt;&lt;br /&gt;// &lt;span style="font-style: italic;"&gt;turn all LEDS off &lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;for(i = 100 ; --i ;);&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;//&lt;span style="font-style: italic;"&gt; Delay&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;PORTB = 0xFF;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;// &lt;span style="font-style: italic;"&gt;turn all LEDS on&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;for(i = 100 ; --i ;);&lt;br /&gt;&lt;br /&gt;// &lt;span style="font-style: italic;"&gt;Delay&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;}&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;//************************************************ &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;I guess the program is self explaining.&lt;br /&gt;&lt;br /&gt;Now again, we 'll try it in &lt;em&gt;&lt;span style="font-weight: bold;"&gt;Proteus&lt;/span&gt;&lt;/em&gt; to see it working.&lt;br /&gt;&lt;br /&gt;Here are the steps to add the C source code file and compile it.&lt;br /&gt;&lt;br /&gt;1. Copy and paste the previous code into a file named &lt;span style="font-weight: bold; font-style: italic;"&gt;flasher.c&lt;/span&gt;&lt;em&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;span style="font-style: italic;"&gt;&lt;span style="font-style: italic;"&gt;&lt;/span&gt;&lt;/span&gt; &lt;/em&gt;.&lt;br /&gt;&lt;br /&gt;2. Install the program &lt;span style="font-weight: bold;"&gt;HiTec PIC C &lt;/span&gt;&lt;a class="l" onmousedown="return rwt(this,'','','res','1','AFQjCNG-LzvyljhpLEoH3OnE_SsCi2SXkg','&amp;amp;sig2=ERNhgzPYnbXdbC0l8w_SwA')" href="http://www.electro-tech-online.com/micro-controllers/32863-hitec-pic-c.html"&gt;&lt;em&gt;&lt;/em&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;3. In &lt;span style="font-weight: bold;"&gt;ISIS 7&lt;/span&gt; , open the &lt;span style="font-weight: bold; font-style: italic;"&gt;flasher.DSN&lt;/span&gt; model you used before.&lt;br /&gt;&lt;br /&gt;4. On the &lt;span style="font-weight: bold;"&gt;Source&lt;/span&gt; menu , choose &lt;span style="font-weight: bold;"&gt;Define Code Generation Tools.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;5. Press &lt;span style="font-weight: bold;"&gt;New.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SW-ZZonumnI/AAAAAAAAADs/k43Ku-n0OAE/s1600-h/source.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5291616752863451762" style="display: block; margin: 0px auto 10px; width: 320px; cursor: pointer; height: 221px; text-align: center;" alt="" src="http://2.bp.blogspot.com/_N66od8KlQks/SW-ZZonumnI/AAAAAAAAADs/k43Ku-n0OAE/s320/source.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;6. Brows to the folder of &lt;span style="font-weight: bold;"&gt;HiTec PIC C&lt;/span&gt; and to &lt;span style="font-weight: bold;"&gt;Bin&lt;/span&gt; folder , choose&lt;span style="font-weight: bold;"&gt; picl.exe&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;7. To add the source , choose &lt;span style="font-weight: bold;"&gt;Source&lt;/span&gt; --&gt; &lt;span style="font-weight: bold;"&gt;Add/Remove Source files &lt;/span&gt;, press &lt;span style="font-weight: bold;"&gt;New&lt;/span&gt; to add&lt;span style="font-style: italic;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;flasher.c&lt;/span&gt;&lt;/span&gt; choose &lt;span style="font-weight: bold;"&gt;PICC&lt;/span&gt; from the drop-down menu under &lt;span style="font-weight: bold;"&gt;Code Generation Tool&lt;/span&gt; , and on the&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Flags&lt;/span&gt; text box , type &lt;span style="font-weight: bold;"&gt;--chip=16f84a&lt;/span&gt; to choose the microcontroller type.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SW-d0-hT_NI/AAAAAAAAAD0/85wwWKgXIk8/s1600-h/C+source.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5291621620645100754" style="display: block; margin: 0px auto 10px; width: 320px; cursor: pointer; height: 166px; text-align: center;" alt="" src="http://4.bp.blogspot.com/_N66od8KlQks/SW-d0-hT_NI/AAAAAAAAAD0/85wwWKgXIk8/s320/C+source.JPG" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;8. Now press &lt;span style="font-weight: bold;"&gt;Source --&gt; Build All.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;9. Now choose the oscillator speed and the &lt;span style="font-style: italic;"&gt;&lt;span style="font-weight: bold;"&gt;flasher.HEX&lt;/span&gt;&lt;/span&gt; file as you did in the Assembly&lt;br /&gt;&lt;br /&gt;example.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;10 . Press &lt;span style="font-weight: bold;"&gt;F12&lt;/span&gt; to Run the program.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://docs.google.com/leaf?id=0Byhyj_-YLEr1ZmU1NWM5ZWQtMWIxOS00ZjE2LTgwOWMtNGNmMzViZDFjYWQz&amp;amp;sort=name&amp;amp;layout=list&amp;amp;num=50"&gt;Here you can find the Proteus ISIS model and the source code&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pic.h&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-3475200332552854317?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/3475200332552854317/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=3475200332552854317&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3475200332552854317'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/3475200332552854317'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/01/let-s-speed-rate.html' title='Let &apos;s speed up the rate !!'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_N66od8KlQks/SW-ZZonumnI/AAAAAAAAADs/k43Ku-n0OAE/s72-c/source.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-6392160067450914115</id><published>2009-01-02T16:43:00.000+02:00</published><updated>2009-01-09T01:40:55.643+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='Alexandria'/><category scheme='http://www.blogger.com/atom/ns#' term='MicroMonitor'/><category scheme='http://www.blogger.com/atom/ns#' term='PIC 16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='MPASMwin'/><category scheme='http://www.blogger.com/atom/ns#' term='Proteus'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded'/><category scheme='http://www.blogger.com/atom/ns#' term='Egypt'/><title type='text'>Explaining Flasher Program in Detail</title><content type='html'>You may have felt that the Flasher program is difficult. But this is not true.&lt;br /&gt;&lt;br /&gt;Now, we 'll explain it step-by-step. Just remember, when I started learning Microcontroller programming, I started by understanding this program in detail and put on it my own comments to make me remember what each piece of code did.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;list p=16f84&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                 include "p16f84.inc"     &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;                 ;    This part is necessary for the compiler to&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;    &lt;/span&gt;know the type of the PIC you are using.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;org 0x00&lt;/span&gt;                      &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                        goto start&lt;/span&gt;                     &lt;br /&gt;&lt;br /&gt;;    The word ORG tells the compiler to put the following code ( &lt;span style="font-style: italic;"&gt;goto &lt;/span&gt;&lt;br /&gt;;     &lt;span style="font-style: italic;"&gt;start&lt;/span&gt; label ) in the address 0x00 which is the reset vector of the PIC&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;br /&gt;org 0x20&lt;/span&gt;                      &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;start&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;    Again. Puts the label &lt;span style="font-style: italic;"&gt;start&lt;/span&gt; at the address 0x20&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;bcf INTCON,7               &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;   Clear the R7 bit in the register &lt;span style="font-style: italic;"&gt;INTCON  &lt;/span&gt;which disables the interrupts&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movlw 0x00                  &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;   Put 0x00 in the W register&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;bsf STATUS,5&lt;/span&gt;             &lt;br /&gt;&lt;br /&gt;;   Set the Bit 5 in the &lt;span style="font-style: italic;"&gt;status &lt;/span&gt;register which selects Bank 1 in the RAM&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movwf TRISB&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;;   Copy the W register content into &lt;span style="font-style: italic;"&gt;TRISB&lt;/span&gt; register&lt;br /&gt;                                      ;   [ makes PORTB output]&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;bcf STATUS,5&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;              &lt;/span&gt;;   Clear  the Bit 5 in the &lt;span style="font-style: italic;"&gt;status &lt;/span&gt;register which selects Bank 0 in the RAM&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;again&lt;/span&gt;                            &lt;br /&gt;&lt;br /&gt;;   This is a label for the repeating part of the program&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movlw 0x80&lt;/span&gt;               &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf PORTB             &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;   Copies 0x80 [binary 1000 0000 ] in the W register&lt;br /&gt;;  Copy the W register content into &lt;span style="font-style: italic;"&gt;PORTB &lt;/span&gt; register&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;call delay                       &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;  This command calls the &lt;span style="font-style: italic;"&gt;Delay&lt;/span&gt; routine.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                        movlw 0x00&lt;/span&gt;                &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf PORTB&lt;/span&gt;           &lt;br /&gt;&lt;br /&gt;;   Copies 0x00 [binary 0000 0000 ] in the W register&lt;br /&gt;;  Copy the W register content into &lt;span style="font-style: italic;"&gt;PORTB &lt;/span&gt; register&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto again&lt;/span&gt;                    &lt;br /&gt;&lt;br /&gt;;  This label is important to keep the program running forever&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;delay&lt;/span&gt;                            &lt;br /&gt;&lt;br /&gt;;  This is the label for the delay routine&lt;br /&gt;                                      ; The delay consists of 3  nested loops&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                       movlw 0x01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0e&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;  Put 0x01 in W register&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                  &lt;/span&gt;;  And copy it to the memory address 0x0e in RAM&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;loop3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;  Label&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;movlw 0xfa&lt;/span&gt;                   &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0d&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;/span&gt;;  Put 0xfa in W register&lt;br /&gt;                &lt;span style="color: rgb(51, 51, 255);"&gt; &lt;/span&gt;;  And copy it to the memory address 0x0d in RAM&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;loop2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;/span&gt;                               ;  Label&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movlw 0xfa&lt;/span&gt;                  &lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0c&lt;/span&gt;                  &lt;span style="color: rgb(51, 51, 255);"&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;&lt;/span&gt;;  Put 0xfa in W register&lt;br /&gt;;  And copy it to the memory address 0x0c in RAM&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;loop1&lt;/span&gt;                             &lt;br /&gt;&lt;br /&gt;;  Label&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         decfsz 0x0c,1&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;;  Decrease contents of memory address 0x0c by 1 ,&lt;br /&gt;                                       ;  then skip the  next command if  the result is zero&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;goto loop1&lt;/span&gt;                     &lt;br /&gt;&lt;br /&gt;;  goto the outer loop&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;&lt;br /&gt;decfsz 0x0d,1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;                ;  Decrease contents of memory address 0x0d by 1 ,&lt;br /&gt;                                       ;  then skip the  next command if  the result is zero&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto loop2&lt;/span&gt;                      &lt;br /&gt;&lt;br /&gt;;  goto the outer loop&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         decfsz 0x0e,1&lt;/span&gt;                &lt;br /&gt;&lt;br /&gt;;  Decrease contents of memory address 0x0e by 1 ,&lt;br /&gt;                                       ;  then skip the  next command if  the result is zero&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto loop3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;;  goto the outer loop&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         return&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;                              ;  Retrun from the &lt;span style="font-style: italic;"&gt;Delay &lt;/span&gt;routine&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;end&lt;/span&gt;                                  &lt;br /&gt;&lt;br /&gt;;  must be put at the end of the program&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;*********************************************************************&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;This is the end of the program. Now that you understand this basic program of LED flasher, you can understand more complex programs and tricks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-6392160067450914115?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/6392160067450914115/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=6392160067450914115&amp;isPopup=true' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/6392160067450914115'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/6392160067450914115'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2009/01/explaining-flasher-program-in-detail.html' title='Explaining Flasher Program in Detail'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1658837558104800699</id><published>2008-12-25T20:23:00.002+02:00</published><updated>2010-06-04T20:05:31.099+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='Simulator'/><category scheme='http://www.blogger.com/atom/ns#' term='Labcenter'/><category scheme='http://www.blogger.com/atom/ns#' term='Proteus'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller'/><category scheme='http://www.blogger.com/atom/ns#' term='ISIS'/><title type='text'>Run your first program on simulator</title><content type='html'>You can start to test the flasher program on the&lt;br /&gt;simulator.&lt;br /&gt;&lt;br /&gt;The simulator is a program that simulates&lt;br /&gt;&lt;span class="yshortcuts" id="lw_1230230041_0"&gt;Microcontroller&lt;/span&gt; code execution and other &lt;span class="yshortcuts" id="lw_1230230041_1"&gt;electronic&lt;br /&gt;component behavior&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;One good simulator I 've tried and I recommend is Labcenter Proteus 7.&lt;br /&gt;&lt;br /&gt;You can install it and try the hardware components and software program and debug them for run-time errors and functioning errors. All this before building the real-world application on the board. This approach is very useful and can reduce developing time and frustration and eliminate situations such as you connect the circuit and get no action at all. You then wonder&lt;br /&gt;what 's wrong. And you can get lost debugging hardware and software and don 't  know where to&lt;br /&gt;start from.&lt;br /&gt;&lt;br /&gt;This introduction is to show the advantages of using the simulator before building your circuit board.&lt;br /&gt;&lt;br /&gt;Let 's get started ..........&lt;br /&gt;&lt;br /&gt;1- Install the simulator ( Labcenter Proteus 7 ).&lt;br /&gt;&lt;br /&gt;2- Run the program ISIS.&lt;br /&gt;&lt;br /&gt;3- Draw the components of the flasher application as in this screen-shot.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/SVYQvIYPDbI/AAAAAAAAACE/vAb5IFhNjOQ/s1600-h/simulator.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://4.bp.blogspot.com/_N66od8KlQks/SVYQvIYPDbI/AAAAAAAAACE/vAb5IFhNjOQ/s320/simulator.JPG" alt="" id="BLOGGER_PHOTO_ID_5284429614654885298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;4- After you copy the code from the previous post into a file named &lt;span style="font-style: italic;"&gt;Flasher.ASM&lt;/span&gt;, add the source&lt;br /&gt;&lt;br /&gt;file as follows ;&lt;br /&gt;&lt;br /&gt;- From the source menu , select Define Code Generation Tools ...&lt;br /&gt;&lt;br /&gt;- Choose the MPASMWIN from the scroll menu as the screen-shot,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SVYXNBwVCnI/AAAAAAAAACM/v82DKlvVkPc/s1600-h/source.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 221px;" src="http://2.bp.blogspot.com/_N66od8KlQks/SVYXNBwVCnI/AAAAAAAAACM/v82DKlvVkPc/s320/source.JPG" alt="" id="BLOGGER_PHOTO_ID_5284436725342734962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;- Add the source form the source menu --- &gt; Add/Remove Source files ...&lt;br /&gt;&lt;br /&gt;and choose the code generation tools MPASMWIN and the source file &lt;span style="font-style: italic;"&gt;Flasher.ASM&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SVYYjqCqrqI/AAAAAAAAACU/gNMnBHmI3lc/s1600-h/addSrc.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 166px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SVYYjqCqrqI/AAAAAAAAACU/gNMnBHmI3lc/s320/addSrc.JPG" alt="" id="BLOGGER_PHOTO_ID_5284438213625818786" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now you have successfully configured the source file and code generation tools for code&lt;br /&gt;&lt;br /&gt;compilation.&lt;br /&gt;&lt;br /&gt;5-   You can now compile the program by choosing the Source menu ---&gt; Build All .&lt;br /&gt;&lt;br /&gt;If every thing goes right, you should get the screen&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SVYb1Pvc9RI/AAAAAAAAACc/QNCAIRYJNEU/s1600-h/compile.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 211px; height: 287px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SVYb1Pvc9RI/AAAAAAAAACc/QNCAIRYJNEU/s320/compile.JPG" alt="" id="BLOGGER_PHOTO_ID_5284441814338434322" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;6- You will notice that a &lt;span style="font-style: italic; font-weight: bold;"&gt;Flaher.HEX&lt;/span&gt; file has been generated in the working folder.&lt;br /&gt;&lt;br /&gt;7- Now double-click on the &lt;span style="font-weight: bold;"&gt;PIC16F84A &lt;/span&gt;component in your design , you get the window,&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SVYeeUjDL_I/AAAAAAAAACk/RW5jn4a2enw/s1600-h/chooseHEX.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 205px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SVYeeUjDL_I/AAAAAAAAACk/RW5jn4a2enw/s320/chooseHEX.JPG" alt="" id="BLOGGER_PHOTO_ID_5284444719026483186" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Choose the &lt;span style="font-style: italic; font-weight: bold;"&gt;Flasher.HEX&lt;/span&gt; and set the Processor Clock Frequency to &lt;span style="font-weight: bold;"&gt;4MHz&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;8- Now press the play button to start debugging and running the program.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SVYfl-njbeI/AAAAAAAAACs/dXOWMQTJFKs/s1600-h/play.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 200px; height: 150px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SVYfl-njbeI/AAAAAAAAACs/dXOWMQTJFKs/s200/play.JPG" alt="" id="BLOGGER_PHOTO_ID_5284445950090374626" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Now , you see the led flashing . Congratulations !!! The program is running.&lt;br /&gt;&lt;br /&gt;We can start to build our first real-wold circuit....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1658837558104800699?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1658837558104800699/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1658837558104800699&amp;isPopup=true' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1658837558104800699'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1658837558104800699'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/12/run-your-first-program-on-simulator.html' title='Run your first program on simulator'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/SVYQvIYPDbI/AAAAAAAAACE/vAb5IFhNjOQ/s72-c/simulator.JPG' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-5546121397071042730</id><published>2008-12-10T23:49:00.001+02:00</published><updated>2009-08-31T00:07:21.682+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller course in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Systems course in egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Systems Education in Egypt'/><title type='text'>This is your first program</title><content type='html'>&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold;"&gt;HELLO WORLD&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;As in PC programming world, when you learn a new language , you start with the famous&lt;br /&gt;"Hello World" program.&lt;br /&gt;&lt;br /&gt;This program in Microcontroller is flashing a LED.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Here is the code:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;*************************************************&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;        &lt;/span&gt;&lt;span style="font-style: italic; color: rgb(51, 51, 255);"&gt;Flasher.asm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;          list p=16f84&lt;/span&gt;                                                                             ; This is how you can comment&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                 include "p16f84.inc"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                  org 0x00&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                        goto start&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         org 0x20&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;start&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         bcf INTCON,7&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movlw 0x00&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         bsf STATUS,5&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;movwf TRISB&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         bcf STATUS,5&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                 movlw 0x80      &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf PORTB&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;          call delay&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                        movlw 0x00&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf PORTB&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;call delay&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto again&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;delay&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                       movlw 0x01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0e&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;loop3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movlw 0xfa&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0d&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;loop2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movlw 0xfa&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         movwf 0x0c&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;loop1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         decfsz 0x0c,1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto loop1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         decfsz 0x0d,1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto loop2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         decfsz 0x0e,1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         goto loop3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;                         return&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;end&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;;*********************************************************************&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;1 - Copy the above text and paste it in an empty text file and save it as Flasher.asm&lt;br /&gt;&lt;br /&gt;2 - Install the MPLab program and search for the file MPASMWIN.EXE in its path.&lt;br /&gt;&lt;br /&gt;3- Run the program. It looks like this :&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/SUBAv8xTiII/AAAAAAAAAB0/MEoD3Gd6avs/s1600-h/MPASM.JPG"&gt;&lt;img style="cursor: pointer; width: 200px; height: 142px;" src="http://1.bp.blogspot.com/_N66od8KlQks/SUBAv8xTiII/AAAAAAAAAB0/MEoD3Gd6avs/s200/MPASM.JPG" alt="" id="BLOGGER_PHOTO_ID_5278289955789179010" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Uncheck the case-sensitive option.&lt;br /&gt;&lt;br /&gt;4 - Browse for the &lt;span style="font-style: italic;"&gt;Flasher.asm&lt;/span&gt; file and press Assemle.&lt;br /&gt;&lt;br /&gt;If every thing goes write , you will have the window :&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_N66od8KlQks/SUBDJnmOPPI/AAAAAAAAAB8/w2HhoUjp5ro/s1600-h/ok.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 147px; height: 200px;" src="http://3.bp.blogspot.com/_N66od8KlQks/SUBDJnmOPPI/AAAAAAAAAB8/w2HhoUjp5ro/s200/ok.JPG" alt="" id="BLOGGER_PHOTO_ID_5278292595805404402" border="0" /&gt;&lt;/a&gt;Congratiulations, the assemble process is &lt;span style="font-style: italic;"&gt;complete&lt;/span&gt; !!&lt;br /&gt;The Flasher.hex file will be generated in the same directory of Flasher.asm&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Note :&lt;/span&gt; If you like this blog &lt;span style="font-style: italic;"&gt;( or don't )&lt;/span&gt; , please give me feedback by commenting. Thanks ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-5546121397071042730?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/5546121397071042730/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=5546121397071042730&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5546121397071042730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5546121397071042730'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/12/this-is-your-first-program.html' title='This is your first program'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/SUBAv8xTiII/AAAAAAAAAB0/MEoD3Gd6avs/s72-c/MPASM.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-147223676782659691</id><published>2008-12-08T23:20:00.001+02:00</published><updated>2010-04-24T22:59:22.163+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='16f84'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded'/><title type='text'>Getting Started With Microcontroller Programming</title><content type='html'>&lt;span style="color: rgb(51, 51, 255);font-family:lucida grande;font-size:180%;"  &gt;&lt;span style="font-weight: bold;"&gt;Resources needed for a Quick jump-start :&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;For the simplicity of the learning process for the beginner, I 'll start with the most famous Microchip PIC16F84 ( which was the first uC I learned )&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;You need to prepare these stuff before start programming :&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;1- The target IC ( the uC PIC 16F84A )&lt;/span&gt; and its Datasheet .&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ww1.microchip.com/downloads/en/DeviceDoc/35007b.pdf"&gt;&lt;img style="cursor: pointer; width: 133px; height: 117px;" src="http://1.bp.blogspot.com/_N66od8KlQks/ST8IfIznk7I/AAAAAAAAABU/XKEJiM6uAqk/s200/datasheet2.JPG" alt="" id="BLOGGER_PHOTO_ID_5277946619334464434" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;2- Programming circuit ( &lt;a href="http://www.jdm.homepage.dk/newpic.htm"&gt;JDM programmer&lt;/a&gt; ) &lt;/span&gt;- you need to build it your self - or buy a Microchip PIC programmer.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/SXhvKTGqI1I/AAAAAAAAAD8/J-udD79mEbA/s1600-h/SER_PIC.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 320px; height: 170px;" src="http://2.bp.blogspot.com/_N66od8KlQks/SXhvKTGqI1I/AAAAAAAAAD8/J-udD79mEbA/s320/SER_PIC.JPG" alt="" id="BLOGGER_PHOTO_ID_5294103584691594066" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;3 - Loader program ( ICProg ) &lt;/span&gt;- you 'll need it if you use JDM programmer - , but if you buy a ready-made programmer , you will have the software with it.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.ic-prog.com/"&gt;&lt;img style="cursor: pointer; width: 152px; height: 121px;" src="http://1.bp.blogspot.com/_N66od8KlQks/ST8J_AyHoJI/AAAAAAAAABk/0LtvdLGGkeM/s200/icprog.JPG" alt="" id="BLOGGER_PHOTO_ID_5277948266448134290" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;4 - MPLab program&lt;/span&gt; ( to assemble ) the programs you write in Assembley .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://ww1.microchip.com/downloads/en/DeviceDoc/mp810.zip"&gt;&lt;img style="cursor: pointer; width: 200px; height: 132px;" src="http://2.bp.blogspot.com/_N66od8KlQks/ST8M6g_CFZI/AAAAAAAAABs/TcvPgtm42Xc/s200/mplab_2.jpg" alt="" id="BLOGGER_PHOTO_ID_5277951487727768978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;5 - HiTec PICC&lt;/span&gt; ( to compile programs in C ) .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://microchip.htsoft.com/downloads/log_in.php?productid=422&amp;amp;sourcepage=piclite"&gt;&lt;img style="cursor: pointer; width: 219px; height: 70px;" src="http://www.audiodesignguide.com/Robot/logo_hi-tec.gif" alt="" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;6 - Proteus 7.0  Simulator&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.labcenter.co.uk/index.cfm"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 320px; height: 240px;" src="http://2.bp.blogspot.com/_N66od8KlQks/S9NbSn42QeI/AAAAAAAAAP8/Q9VNvKRZuxI/s320/proteus.JPG" alt="" id="BLOGGER_PHOTO_ID_5463811148433736162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;You can get all these stuff for FREE from the Internet.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-147223676782659691?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/147223676782659691/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=147223676782659691&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/147223676782659691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/147223676782659691'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/12/getting-started-with-microcontroller.html' title='Getting Started With Microcontroller Programming'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/ST8IfIznk7I/AAAAAAAAABU/XKEJiM6uAqk/s72-c/datasheet2.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-5570922630301796451</id><published>2008-12-07T22:57:00.001+02:00</published><updated>2009-01-24T11:22:58.119+02:00</updated><title type='text'>Microcontroller Tutorial :</title><content type='html'>I decided to start a Microcontroller Tutorial for beginners. If you like to learn about      Microcontroller programming and embedded systems , this blog may be helpful.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt; Prerequisites:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;All  you need to know before start programming your microcontroller is basic programming knowledge, basic electronics and Boolean Algebra ( AND , OR &amp;amp; NOT gates ...  ) .&lt;br /&gt;&lt;br /&gt;And the first thing to know is:&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What is the Microcontroller ?&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;It is a smart IC that can be programmed to do some task. Unlike a typical IC which does a certain function that cannot be changed, the Microcontroller function is defined by its software  code written on it. you can change the code when you want and thus change its function. &lt;span style="font-weight: bold; font-style: italic;"&gt;Smart&lt;/span&gt; means it can decide and take actions according to its code.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;"&gt;So what 's the difference between Microcontroller(uC) and Microprocessor(uP) ??&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;uP needs some other devices to be able to work ( BIOS, RAM, I/O Ports , ... )  all these devices are other IC 's.&lt;br /&gt;&lt;br /&gt;Although the uP is more general purpose than than the uC , but the fact that the uC contains all the required devices in one package ( EEPROM, RAM, IO Ports , ADC , UART , etc ... )  overcomes the limited abilities and small instruction set of the uC.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-5570922630301796451?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/5570922630301796451/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=5570922630301796451&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5570922630301796451'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/5570922630301796451'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/12/microcontroller-tutorial-i-decided-to.html' title='Microcontroller Tutorial :'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-8810309431394713096</id><published>2008-12-06T14:28:00.001+02:00</published><updated>2010-04-30T22:36:10.957+03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Computer'/><category scheme='http://www.blogger.com/atom/ns#' term='Mattel'/><category scheme='http://www.blogger.com/atom/ns#' term='PC'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller'/><title type='text'>It all started with the computer</title><content type='html'>&lt;div style="text-align: center;"&gt;&lt;span style="font-weight: bold;font-family:arial;font-size:180%;"  &gt;It all started with the computer &lt;/span&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_N66od8KlQks/STpz2-Lk8FI/AAAAAAAAAA8/mEWEa7txcmA/s1600-h/aquarius.jpg"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 320px; height: 160px;" src="http://4.bp.blogspot.com/_N66od8KlQks/STpz2-Lk8FI/AAAAAAAAAA8/mEWEa7txcmA/s320/aquarius.jpg" alt="" id="BLOGGER_PHOTO_ID_5276657301659643986" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: left;"&gt;I started with the old computer AQUARIUS at the 80 's. It had&lt;span style="font-weight: bold;"&gt; &lt;span style="font-style: italic;"&gt;Microsoft&lt;/span&gt;&lt;/span&gt; Basic on it. I learned programming in Basic. I then got my Pentium 1 at 90 's.&lt;br /&gt;&lt;br /&gt;I learned &lt;span style="font-style: italic; font-weight: bold;"&gt;Microsoft&lt;/span&gt; DOS and Windows. Then I learned C language.&lt;br /&gt;&lt;br /&gt;I got AMD PC at year 2000 and I learned more about PC hardware.&lt;br /&gt;&lt;br /&gt;I also  knew about Microcontrollers ( Microchip PIC , Atmel , Renesas ) .&lt;br /&gt;&lt;br /&gt;I programmed Microcontrollers in Assembly and C.&lt;br /&gt;&lt;br /&gt;At 2006  I got  &lt;span style="font-weight: bold;"&gt;Toshiba Satellite&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt; Notebook.&lt;br /&gt;&lt;br /&gt;This year, I joined the Renesas HTS contest. I submitted my pr&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_N66od8KlQks/STq7vW_8jZI/AAAAAAAAABE/-puv5cMUGoE/s1600-h/design_chal.gif"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer; width: 153px; height: 152px;" src="http://2.bp.blogspot.com/_N66od8KlQks/STq7vW_8jZI/AAAAAAAAABE/-puv5cMUGoE/s320/design_chal.gif" alt="" id="BLOGGER_PHOTO_ID_5276736335719992722" border="0" /&gt;&lt;/a&gt;oject " Multichannel Oscilloscope" and guess what ,  I had the forth honored mention.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.renesasrulz.com/thread/2225;jsessionid=7AFAE50480BD5DF2D4D3F616A03277EA?decorator=print&amp;amp;displayFullThread=true" target="_blank"&gt;http://www.renesasrulz.com/thread/2225;jsessionid=7AFAE50480BD5DF2D4D3F616A03277EA?decorator=print&amp;amp;displayFullThread=true&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-8810309431394713096?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/8810309431394713096/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=8810309431394713096&amp;isPopup=true' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8810309431394713096'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/8810309431394713096'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/12/it-all-started-with-computer-i-started.html' title='It all started with the computer'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_N66od8KlQks/STpz2-Lk8FI/AAAAAAAAAA8/mEWEa7txcmA/s72-c/aquarius.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-8114451643814986774.post-1792166530195076623</id><published>2008-03-12T16:06:00.050+02:00</published><updated>2011-12-08T00:50:49.171+02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Microchip PIC'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Systems Companies in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Microcontroller companies in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded Software Companies in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='List of Embedded Systems Companies in Egypt'/><category scheme='http://www.blogger.com/atom/ns#' term='Embedded companies in Egypt'/><title type='text'>Embedded Software in Egypt</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/_N66od8KlQks/R9f3HWrqS0I/AAAAAAAAAAM/GTm4CbcuFNY/s1600-h/Wake1.JPG"&gt;&lt;img style="margin: 0pt 0pt 10px 10px; float: right; cursor: pointer;" src="http://1.bp.blogspot.com/_N66od8KlQks/R9f3HWrqS0I/AAAAAAAAAAM/GTm4CbcuFNY/s320/Wake1.JPG" alt="" id="BLOGGER_PHOTO_ID_5176878002405526338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Embedded software is one of the fast growing markets in Egypt. There are many multinational companies have opened software development offices in Egypt. There are also many companies established by Egyptian engineers. Also, there are many students and engineers who are working independently  in software development for embedded systems. I have a growing company which I called &lt;span style="font-style: italic;"&gt;MicroMonitor&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;As an Egyptian engineer, I invite more companies to invest in this growing industry in Egypt.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Here is a List of embedded systems companies in Egypt&lt;/span&gt; &lt;span style="font-family:trebuchet ms;"&gt;:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(102, 0, 204);font-size:180%;" &gt;AlManar for Electronic Systems&lt;br /&gt;&lt;/span&gt;&lt;a target="_blank" href="http://www.almanar.com.eg/index.html"&gt;http://www.almanar.com.eg/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-size:180%;" &gt;avelabs&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="text-decoration: underline;"&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;a target="_blank" href="http://www.avelabs.com/index.php/contacts"&gt;&lt;span style="font-size:130%;"&gt;http://www.avelabs.com&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;dl&gt;&lt;dt&gt;&lt;span class="title"&gt;&lt;em&gt;&lt;strong&gt;avelabs&lt;/strong&gt;&lt;/em&gt; LLC.&lt;br /&gt;&lt;/span&gt;&lt;span&gt; 31 EL Obour Buildings,&lt;br /&gt;Salah Salem  St.,&lt;br /&gt;Cairo, Egypt. &lt;/span&gt;(&lt;a href="http://maps.google.com/maps?f=d&amp;amp;source=s_d&amp;amp;saddr=&amp;amp;daddr=%2B30%C2%B0+4%27+31.13%22,+%2B31%C2%B0+18%27+12.44%22+%2830.075315,+31.303455%29&amp;amp;hl=en&amp;amp;geocode=CZt_QHoYX7tmFbPpygEdH6fdAQ&amp;amp;sll=30.075515,31.302686&amp;amp;sspn=0.022245,0.038581&amp;amp;vpsrc=6&amp;amp;g=30.075315,+31.303455&amp;amp;mra=mift&amp;amp;ie=UTF8&amp;amp;ll=30.075145,31.303906&amp;amp;spn=0.001307,0.002411&amp;amp;t=m&amp;amp;z=19&amp;amp;iwloc=ddw1" target="_blank"&gt;directions on map&lt;/a&gt;)&lt;/dt&gt;&lt;dt&gt;&lt;span&gt;Telephone: &lt;/span&gt;+20  100 0668 7922&lt;/dt&gt;&lt;dt&gt;&lt;span&gt;e-mail: &lt;/span&gt;  &lt;script type="text/javascript"&gt;  &lt;!--  var prefix = '&amp;#109;a' + 'i&amp;#108;' + '&amp;#116;o';  var path = 'hr' + 'ef' + '=';  var addy20143 = '&amp;#105;nf&amp;#111;' + '&amp;#64;';  addy20143 = addy20143 + '&amp;#97;v&amp;#101;l&amp;#97;bs' + '&amp;#46;' + 'c&amp;#111;m';  document.write('&lt;a&gt;');  document.write(addy20143);  document.write('&lt;\/a&gt;');  //--&gt;\n &lt;/script&gt;&lt;a href="mailto:info@avelabs.com"&gt;info@avelabs.com&lt;/a&gt;&lt;/dt&gt;&lt;/dl&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="color: rgb(0, 0, 153); font-weight: bold;font-size:180%;" &gt;BadrIT ( Mobile Applications )&lt;/span&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.badrit.com/"&gt;http://www.badrit.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="color: rgb(0, 0, 0);"&gt;&lt;span style="font-family:Monaco,monospace;"&gt;Badr for Information Technology   &lt;br /&gt;   2 Ibrahiem Ragi Street, Roshdie   &lt;br /&gt;   Alexandria, Egypt   &lt;br /&gt;   PO Box 21531 &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 102, 255); font-weight: bold;font-size:130%;" &gt;Baccah&lt;/span&gt;&lt;br /&gt;&lt;script language="JavaScript"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;  // Start hit counter code for BlogPatrol.com&lt;br /&gt;  var data = '&amp;r=' + escape(document.referrer)&lt;br /&gt; + '&amp;n=' + escape(navigator.userAgent)&lt;br /&gt; + '&amp;p=' + escape(navigator.userAgent)&lt;br /&gt; + '&amp;g=' + escape(document.location.href);&lt;br /&gt;&lt;br /&gt;  if (navigator.userAgent.substring(0,1)&gt;'3')&lt;br /&gt;    data = data + '&amp;sd=' + screen.colorDepth &lt;br /&gt; + '&amp;sw=' + escape(screen.width+'x'+screen.height);&lt;br /&gt;&lt;br /&gt;  document.write('&lt;a target="_blank" href=" http://www.blogpatrol.com" alt="BlogPatrol free blog counter" title="Free Blog Counters, Stats and Widgets"&gt;');&lt;br /&gt;  document.write('&lt;img border="0" hspace="0" vspace="0" src=" http://www.blogpatrol.com/counter.php?i=105090' + data + '" /&gt;');&lt;br /&gt;  document.write('&lt;/a&gt;');&lt;br /&gt;  // End hit counter code for BlogPatrol.com&lt;br /&gt;&lt;br /&gt;// --&gt;&lt;br /&gt;&lt;/script&gt;&lt;a target="_blabk" href="http://www.baccah.ca/"&gt;http://www.baccah.ca/&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;Bird ICT ( Mobile Applications )&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.birdict.com/"&gt;http://www.birdict.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0); font-weight: bold;font-size:180%;" &gt;Edge Technology - Egypt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_&amp;quot;blank&amp;quot;" href="http://www.edge-techno.com/et/"&gt;http://www.edge-techno.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;33 Al-Madrasa Al-Qawmia st.&lt;br /&gt;El-Manial - Cairo - Egypt&lt;br /&gt;11451&lt;br /&gt;www.edge-techno.com&lt;br /&gt;info@edge-techno.com&lt;br /&gt;+202  236 39351&lt;br /&gt;+202 236 39351&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);font-size:130%;" &gt;&lt;span style="font-weight: bold;" class="style1"&gt;Elsewedy&lt;/span&gt;&lt;span style="font-weight: bold;"&gt; Electrometer Egypt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.sewedy.com.eg/"&gt;http://www.sewedy.com.eg/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;Engineering Office for Integrated Projects - EOIP&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://eoip-egypt.com/en/index.aspx?id=1"&gt;http://eoip-egypt.com/en/index.aspx?id=1&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt; Hyper Embedded Systems&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.hyperes.com/" target="_blabk"&gt;http://www.hyperes.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Body-Text---Col-C"&gt;Tel/Fax:  (203) 544 2437&lt;br /&gt;&lt;/span&gt;&lt;span class="Body-Text---Col-C"&gt;Tel:  2 0123346577&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Hyper Embedded Systems&lt;br /&gt;&lt;span class="Body-Text---Col-C"&gt;28 El-Deer  Street, &lt;/span&gt;&lt;br /&gt;&lt;span class="Body-Text---Col-C"&gt;Cleopatra,&lt;/span&gt;&lt;br /&gt;&lt;span class="Body-Text---Col-C"&gt;Alexandria,  Egypt&lt;br /&gt;&lt;/span&gt;&lt;span class="Body-Text---Col-C"&gt;E-mail: &lt;a href="mailto:sales@hyperes.com"&gt;sales@hyperes.com&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;span class="Placeholder-C"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:180%;" &gt;&lt;span&gt;&lt;span style="color: rgb(214, 60, 156);"&gt;Intelligent Services  Solutions (ISS)&lt;/span&gt; &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.issholding.com/"&gt;http://www.issholding.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 0, 153);font-size:130%;" &gt;&lt;span style="font-weight: bold;"&gt;MasrTec For Embedded Systems&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;table style="width: 607px; height: 206px;" border="0" cellpadding="0" cellspacing="0"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td width="120" height="25"&gt;&lt;span style="font-weight: bold;"&gt;  &lt;/span&gt;&lt;b&gt;Name:&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;MasrTec for Embedded Systems&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td width="120" height="25"&gt;&lt;b&gt; Contact :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;Mr. Hassan Abdelaziz&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; Street :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;4 Eltawhid St, From Elhadid We Elsolb St.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; City :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;Alexandria&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; Country :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;Egypt&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; Telephone :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;002-03-4396450&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; Mobile :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;0020102544516&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td height="25"&gt;&lt;b&gt; Fax :&lt;/b&gt;&lt;/td&gt;         &lt;td&gt;002-03-4399575&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="font-weight: bold; color: rgb(0, 0, 153);"&gt;Mentor Graphics Egypt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.mentor.com/"&gt;http://www.mentor.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;78, El-Nozha St., El-Sabaa Emarat Sq.&lt;br /&gt;Heliopolis,&lt;br /&gt;Cairo&lt;br /&gt;Egypt&lt;br /&gt;Phone : ‎+20 2 24141306(6 lines)&lt;br /&gt;&lt;div id="phone" style="display: none;"&gt;Phone : ‎+20 2 24141307&lt;br /&gt;Phone : ‎+20 2 24145697&lt;br /&gt;Phone : ‎+20 12 2154839&lt;br /&gt;&lt;/div&gt;Fax : ‎+20 2 24186945&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;MTSE&lt;/span&gt;&lt;br /&gt;&lt;/h2&gt;&lt;a target="_blabk" href="http://www.mtse.com.eg/En/index.html"&gt;http://www.mtse.com.eg/En/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;Address : 7 Amin Annis St., 4th Section, Heliopolis, Cairo.&lt;br /&gt;Tel : (02) 2903160 - (02) 4147507&lt;br /&gt;Fax : (02) 2903160&lt;br /&gt;Postal Code: 11341&lt;br /&gt;E-mail : info@mtse.com.eg&lt;br /&gt;Sales : sales@mtse.com.eg&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;b style="color: rgb(0, 0, 153);"&gt;Newport Media&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.newportmediainc.com/"&gt;http://www.newportmediainc.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Newport Media Inc. Egypt Design Center&lt;/b&gt;&lt;br /&gt;11 Markaz El-maalomat St., block 1157&lt;br /&gt;Masaken Sheraton Heliopolis&lt;br /&gt;Cairo 11361&lt;br /&gt;Egypt&lt;br /&gt;Phone: +20 2 2696 1700&lt;br /&gt;Fax: +20 2 2696 1777&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-size:180%;" &gt;QuinDev  ( Mobile Applications )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://www.quindev.com/"&gt;http://www.quindev.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Saba-Basha, 38 Mostafa Abo Hiaf&lt;br /&gt;Alexandria, Egypt.&lt;br /&gt;(203) 585-8270 or (203) 584-5313&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-size:180%;" &gt;Sheimymicro&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blank" href="http://sheimymicro.freehostia.com/"&gt;http://sheimymicro.freehostia.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-size:130%;" &gt;SilMinds&lt;/span&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.silminds.com/"&gt;http://www.silminds.com&lt;/a&gt;&lt;br /&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td rowspan="6" align="left" valign="top" width="40"&gt;&lt;img src="http://www.silminds.com/templates/ja_zibal/images/con_address.png" alt="Address: " name="Address: " align="middle" border="0" /&gt;					&lt;/td&gt; 				&lt;/tr&gt; 											&lt;tr&gt; 					&lt;td valign="top"&gt; 					Badr Tower, 56 Misr-Helwan Road, Maadi					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					Helwan					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					Egypt					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					11431					&lt;/td&gt; 				&lt;/tr&gt; 							&lt;/tbody&gt;&lt;/table&gt; 			&lt;br /&gt;						&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt; 							&lt;tbody&gt;&lt;tr&gt; 					&lt;td align="left" width="40"&gt; 					&lt;img src="http://www.silminds.com/templates/ja_zibal/images/con_tel.png" alt="Telephone: " name="Telephone: " align="middle" border="0" /&gt;					&lt;/td&gt; 					&lt;td&gt; 					+202 275 3040 1					&lt;/td&gt; 				&lt;/tr&gt; 							&lt;/tbody&gt;&lt;/table&gt; 			&lt;br /&gt;						&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt; 			&lt;tbody&gt;&lt;tr&gt; 				&lt;td align="left" valign="top" width="40"&gt; 				&lt;img src="http://www.silminds.com/templates/ja_zibal/images/con_info.png" alt="Information: " name="Information: " align="middle" border="0" /&gt;				&lt;/td&gt; 				&lt;td&gt; 				floor 6, app 14				&lt;/td&gt; 			&lt;/tr&gt; 			&lt;/tbody&gt;&lt;/table&gt; 			&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-size:180%;" &gt;Smartec-Group							&lt;/span&gt;( Training and courses )&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://smartec-group.com/"&gt;http://smartec-group.com&lt;/a&gt;&lt;br /&gt;&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td valign="top"&gt;152 First region - second district					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					6 October City					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					Egypt					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td valign="top"&gt; 					12451					&lt;/td&gt; 				&lt;/tr&gt; 							&lt;/tbody&gt;&lt;/table&gt; 			&lt;br /&gt;						&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt; 							&lt;tbody&gt;&lt;tr&gt; 					&lt;td align="left" width="40"&gt;&lt;br /&gt;&lt;/td&gt;&lt;td&gt;&lt;a href="mailto:info@smartec-group.com"&gt;info@smartec-group.com&lt;/a&gt;&lt;script language="JavaScript" type="text/javascript"&gt;  &lt;!--  document.write( '&lt;span style="\'display:"&gt;' );  //--&gt;  &lt;/script&gt;&lt;span style="display: none;"&gt;This e-mail address is being protected from spam bots, you need JavaScript enabled to view it  &lt;script language="JavaScript" type="text/javascript"&gt;  &lt;!--  document.write( '&lt;/' );  document.write( 'span&gt;' );  //--&gt;  &lt;/script&gt;&lt;/span&gt;					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td align="left" width="40"&gt; 					&lt;br /&gt;					&lt;/td&gt; 					&lt;td&gt; 					+20 2 383 634 98 					&lt;/td&gt; 				&lt;/tr&gt; 								&lt;tr&gt; 					&lt;td align="left" width="40"&gt; 					&lt;br /&gt;					&lt;/td&gt; 					&lt;td&gt; 					+20 2 383 561 67 					&lt;/td&gt; 				&lt;/tr&gt; 							&lt;/tbody&gt;&lt;/table&gt; 			&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-size:130%;" &gt;SySDsoft&lt;/span&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.sysdsoft.com/"&gt;http://www.sysdsoft.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Alexandria:&lt;/span&gt;           &lt;a target="_blabk" href="http://wikimapia.org/6755233/SySDSoft-Alexandria"&gt;http://wikimapia.org/6755233/SySDSoft-Alexandria&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Cairo :&lt;/span&gt;        &lt;a target="_blabk" href="http://wikimapia.org/3748052/SySDSoft-s-Villa"&gt;http://wikimapia.org/3748052/SySDSoft-s-Villa&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;h1 style="color: rgb(255, 153, 0);" id="logo"&gt;Tahackom&lt;/h1&gt;&lt;a target="_blank" href="http://www.tahackom.com/"&gt;http://www.tahackom.com&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;strong&gt;&lt;span style="line-height: 115%;font-family:&amp;quot;;" &gt;&lt;a href="mailto:mohamed.mokhtar@tahackom.com"&gt;mohamed.mokhtar@tahackom.com&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt; &lt;span style="font-size:100%;"&gt;&lt;strong&gt;&lt;span style="line-height: 115%;font-family:&amp;quot;;" &gt;&lt;a href="mailto:mazen.faiter@tahackom.com"&gt;mazen.faiter@tahackom.com&lt;/a&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:large;"&gt;  Or call&lt;br /&gt;&lt;br /&gt;0100555043&lt;br /&gt;0105080492&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-size:130%;" &gt;Tarabay Egypt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.tarabayegypt.com/"&gt;http://www.tarabayegypt.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:trebuchet ms;"&gt;&lt;span style="color: rgb(51, 51, 255); font-weight: bold;font-size:130%;" &gt;Valeo&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.valeo.com/en/home/the-group/global-presence.html#sites"&gt;http://www.valeo.com/en/home/the-group/global-presence.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.valeoservice.com/html/egypt/en/"&gt;http://www.valeoservice.com/html/egypt/en/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span id="edit_content"&gt;VIAS EGYPT -Valeo InterBranch Automotive Software-&lt;br /&gt;SMART VILLAGE, Building B124, Tower 2, Floor 1,&lt;br /&gt;Cairo-Alexandria Desert Road Km 28, PO Box 99 GIZA EGYPT&lt;br /&gt;Cairo&lt;br /&gt;Tel : 20 235 38 0500&lt;br /&gt;Fax : 20 235 38 0600&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Places to buy Microcontrollers and Electronics in Egypt:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Alexandria:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&amp;gt; Hamada Electronics                                                                                                 حمادة ألكترونيكس&lt;br /&gt;&lt;br /&gt;Naby Danial St. - Mahatat Misr                                                 شارع النبى دانيال - محطة مصر&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;"&gt;Cairo :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;gt; Al Amir Electronics&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.ekt2.com/"&gt;http://www.ekt2.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;46 El Falaki St.&lt;br /&gt;Bab El Louk,  Cairo&lt;br /&gt;&lt;div&gt;    &lt;div class="float_left"&gt;     Tel: 02-23929789, 012-9379569&lt;/div&gt;    &lt;/div&gt;&lt;div style="clear: left;"&gt;Fax: 02-23929789  &lt;div class="comptelno float_left"&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&amp;gt; Ram Electronics&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.ram.com.eg/"&gt;http://www.ram.com.eg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://ram-e-shop.com/"&gt;http://ram-e-shop.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;23 Abd El Salam Areef St., El Falaky Electronic Center , Shop 18 , El Tahreer&lt;br /&gt;Cairo, Egypt.&lt;br /&gt;&lt;b&gt;Tel:&lt;/b&gt; +202 - 3918961&lt;br /&gt;&lt;b&gt;Fax:&lt;/b&gt; +202 - 7924854&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Microcontroller &amp;amp; Embedded Systems Courses :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;ANZMA&lt;br /&gt;Embedded Systems Diplomas&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a target="_blank" href="http://anzma.com/"&gt;http://anzma.com/&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Jelecom Egypt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.jelecom.com/"&gt;http://www.jelecom.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;NTI National Telecommunications Institute&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.ntiegypt.sci.eg:85/nti/"&gt;http://www.ntiegypt.sci.eg&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;In the communications electronics section&lt;br /&gt;&lt;br /&gt;&lt;span style="text-decoration: underline;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;Pi-Technologies&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.pitechnologies.net/"&gt;http://www.PiTechnologies.net&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-size:130%;" &gt;Software Engineering Competence Center  (SECC)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a target="_blabk" href="http://www.secc.org.eg/Contact%20Us.asp"&gt;http://www.secc.org.eg/Contact%20Us.asp&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Note for dear visitors :&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Do you know that the main traffic source for this blog is the&lt;br /&gt;&lt;a target="_blabk" href="http://www.google.com/#hl=en&amp;amp;q=embedded+systems+in+egypt&amp;amp;btnG=Google+Search&amp;amp;aq=0&amp;amp;oq=embedded+systems+in+e&amp;amp;fp=1_wXsDL0V4s"&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;Embedded Systems Companies in Egypt&lt;/span&gt;&lt;/a&gt; ?&lt;br /&gt;&lt;br /&gt;If you know any resources ( Companies names , Websites , Institutes , Courses or Vendors )  for Embedded Systems in &lt;span style="font-weight: bold;"&gt;Egypt&lt;/span&gt; , just post a comment for it and I add it here. Thank you all for valuable comments and feedback.&lt;br /&gt;&lt;br /&gt;Thanks to all visitor from all of the world.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;If you want to &lt;span style="font-weight: bold;"&gt;buy &lt;/span&gt;kits for Embedded Systems learning , contact me.&lt;br /&gt;&lt;br /&gt;If you have kits that you want to &lt;span style="font-weight: bold;"&gt;sell &lt;/span&gt;, you can also contact me.&lt;br /&gt;&lt;br /&gt;If you need &lt;span style="font-weight: bold;"&gt;custom made kits&lt;/span&gt; for training purpose , please contact me.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;script language="JavaScript"&gt;&lt;br /&gt;&lt;!--&lt;br /&gt;&lt;br /&gt;  // Start hit counter code for BlogPatrol.com&lt;br /&gt;  var data = '&amp;r=' + escape(document.referrer)&lt;br /&gt; + '&amp;n=' + escape(navigator.userAgent)&lt;br /&gt; + '&amp;p=' + escape(navigator.userAgent)&lt;br /&gt; + '&amp;g=' + escape(document.location.href);&lt;br /&gt;&lt;br /&gt;  if (navigator.userAgent.substring(0,1)&gt;'3')&lt;br /&gt;    data = data + '&amp;sd=' + screen.colorDepth &lt;br /&gt; + '&amp;sw=' + escape(screen.width+'x'+screen.height);&lt;br /&gt;&lt;br /&gt;  document.write('&lt;a target="_blank" href=" http://www.blogpatrol.com" alt="BlogPatrol free blog counter" title="Free Blog Counters, Stats and Widgets"&gt;');&lt;br /&gt;  document.write('&lt;img border="0" hspace="0" vspace="0" src=" http://www.blogpatrol.com/counter.php?i=105090' + data + '" /&gt;');&lt;br /&gt;  document.write('&lt;/a&gt;');&lt;br /&gt;  // End hit counter code for BlogPatrol.com&lt;br /&gt;&lt;br /&gt;// --&gt;&lt;br /&gt;&lt;/script&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/8114451643814986774-1792166530195076623?l=embedded-egypt.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://embedded-egypt.blogspot.com/feeds/1792166530195076623/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=8114451643814986774&amp;postID=1792166530195076623&amp;isPopup=true' title='8 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1792166530195076623'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/8114451643814986774/posts/default/1792166530195076623'/><link rel='alternate' type='text/html' href='http://embedded-egypt.blogspot.com/2008/03/embedded-software-in-egypt.html' title='Embedded Software in Egypt'/><author><name>MicroMonitor</name><uri>http://www.blogger.com/profile/05244179699042686927</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://4.bp.blogspot.com/_N66od8KlQks/SYimEJ6xsMI/AAAAAAAAAEs/u-iV1T1tngs/S220/embedded+egypt.JPG'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_N66od8KlQks/R9f3HWrqS0I/AAAAAAAAAAM/GTm4CbcuFNY/s72-c/Wake1.JPG' height='72' width='72'/><thr:total>8</thr:total></entry></feed>
