<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>resources &#187; Robotics Software</title>
	<atom:link href="http://www.thinklabs.in/resources/?feed=rss2&#038;cat=10" rel="self" type="application/rss+xml" />
	<link>http://www.thinklabs.in/resources</link>
	<description>Just another WordPress weblog</description>
	<lastBuildDate>Sat, 22 May 2010 10:08:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>TRI ISP (Beta)</title>
		<link>http://www.thinklabs.in/resources/?p=118</link>
		<comments>http://www.thinklabs.in/resources/?p=118#comments</comments>
		<pubDate>Sat, 26 Dec 2009 08:02:12 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Downloads]]></category>
		<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[iBOT, iTRIx and the 8051]]></category>
		<category><![CDATA[abc]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=118</guid>
		<description><![CDATA[The 4 step guide to program your P89v51RD2 controller using TRI ISP
Step 1: Port Settings
Port Number: Select the serial communication port of your PC to which the target device is connected. Most present day IBM compatible PCs have a single serial communication port with an address of COM1.

Speed: Select the burning speed. (Preferably 9600)

Step 2: [...]]]></description>
			<content:encoded><![CDATA[<p><strong><u>The 4 step guide to program your P89v51RD2 controller using <b style="color: black; background-color: rgb(160, 255, 255);">TRI</b> <b style="color: black; background-color: rgb(153, 255, 153);">ISP</b></u></strong></p>
<p><strong><u></u></strong><strong>Step 1: Port Settings</strong></p>
<p><u>Port Number</u>: Select the serial communication port of your PC to which the target device is connected. Most present day IBM compatible PCs have a single serial communication port with an address of COM1.</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled1.JPG" title="untitled1.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled1.JPG" alt="untitled1.JPG"></a></p>
<p><span id="more-88"></span><u>Speed:</u> Select the burning speed. (Preferably 9600)</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled.JPG" title="untitled.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled.JPG" alt="untitled.JPG"></a></p>
<p><strong>Step 2: Device Settings</strong></p>
<p><strong>            </strong>Select the target device. (The <b style="color: black; background-color: rgb(160, 255, 255);">TRI</b> <b style="color: black; background-color: rgb(153, 255, 153);">ISP</b> – <b style="color: black; background-color: rgb(255, 153, 153);">Beta</b> version supports only P89v51RD2.)</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled2.JPG" title="untitled2.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled2.JPG" alt="untitled2.JPG"></a></p>
<p><strong>Step 3: Load Hex File</strong></p>
<p><strong>            </strong>The Hex File can be loaded either by clicking the ‘Browse’ button and selecting the Hex File or directly typing its path.</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled3.JPG" title="untitled3.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled3.JPG" alt="untitled3.JPG"></a></p>
<p align="left">                                            Or</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled4.JPG" title="untitled4.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled4.JPG" alt="untitled4.JPG"></a></p>
<p><strong>Step 3: Burn</strong></p>
<p><strong>            </strong>Once the Hex File is loaded, click the ‘Burn’ button and reset your target device. The burn status will be displayed on the progress bar and once the progress bar indicates that the process is completed, reset the target device.</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled5.JPG" title="untitled5.JPG"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2007/10/untitled5.JPG" alt="untitled5.JPG"></a></p>
<p><strong>To Download <b style="color: black; background-color: rgb(160, 255, 255);">TRI</b> <b style="color: black; background-color: rgb(153, 255, 153);">ISP</b> Click Here : <a title="TRI ISP DOWNLOAD" href="http://www.triindia.co.in/download/TRI%20ISP.MSI">http://www.triindia.co.in/download/<b style="color: black; background-color: rgb(160, 255, 255);">TRI</b> <b style="color: black; background-color: rgb(153, 255, 153);">ISP</b>.MSI </a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=118</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About TRIC</title>
		<link>http://www.thinklabs.in/resources/?p=87</link>
		<comments>http://www.thinklabs.in/resources/?p=87#comments</comments>
		<pubDate>Sat, 26 Dec 2009 07:32:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[iBOT, iTRIx and the 8051]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=87</guid>
		<description><![CDATA[TRI has come up with source code development environment “TRIC” which has everything you need for rapid program development . TRIC helps expedite the development process of your embedded applications by providing the following features:

1.Windows-based IDE that combines a robust editor, project manager, and compiler.
2.TRI C integrates all tools including the SDCC compiler(which includes macro [...]]]></description>
			<content:encoded><![CDATA[<p>TRI has come up with source code development environment “<strong>TRIC</strong>” which has everything you need for rapid program development . TRIC helps expedite the development process of your embedded applications by providing the following features:<br />
<span id="more-68"></span><br />
1.Windows-based IDE that combines a robust editor, project manager, and compiler.<br />
2.TRI C integrates all tools including the SDCC compiler(which includes macro assembler, linker/locator, and HEX file generator).<br />
3.Full-featured source code editor,<br />
4.Project manager for creating and maintaining your projects,<br />
5.Integrated compiling facility.</p>
<p>6.iBoard compatible TRIC LIBRARY to easy programming<br />
7.Comprehensive User Guide</p>
<p>As already mentioned the compiler used by TRI C is SDCC. SDCC is an ANSI &#8211; C compiler that targets the Intel 8051, Maxim 80DS390, Zilog Z80 and the Motorola 68HC08 based MCUs. SDCC is Free Open Source Software, distributed under GNU General Public License (GPL).</p>
<p>*you can get SDCC from :http://sdcc.sourceforge.net/</p>
<p>Some of the features include:<br />
1.ASXXXX and ASLINK, a Freeware, retargettable assembler and linker.<br />
2.Extensive MCU specific language extensions, allowing effective use of the underlying hardware.<br />
3.MCU specific optimizations, including a global register allocator.<br />
4.Adaptable MCU specific backend that should be well suited for other 8 bit MCUs</p>
<p>5.Independent rule based peep hole optimizer.<br />
6.A full range of data types: char (8 bits, 1 byte), short (16 bits, 2 bytes), int (16 bits, 2 bytes), long (32 bit, 4 bytes) and float (4<br />
byte IEEE).<br />
7.The ability to add inline assembler code anywhere in a function.<br />
8.The ability to report on the complexity of a function to help decide what should be re-written in assembler.<br />
9.A good selection of automated regression tests.</p>
<p><strong>Installing TRIC</strong><br />
Just download the installer form the link given below and start off…<br />
<strong>NOTE:</strong></p>
<p>â€¢ You can always get product updates, application notes, latest Version and sample programs from :</p>
<p>Download TRI C : <a title="TRIC DOWNLOAD" href="http://www.triindia.co.in/download/tric_Package.zip">http://triindia.co.in/download/tric_Package.zip </a></p>
<p>For Technical Support Drop A mail On :support-tric@triindia.co.in</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=87</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Getting Started With TRIC</title>
		<link>http://www.thinklabs.in/resources/?p=79</link>
		<comments>http://www.thinklabs.in/resources/?p=79#comments</comments>
		<pubDate>Sat, 26 Dec 2009 07:19:55 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[iBOT, iTRIx and the 8051]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=79</guid>
		<description><![CDATA[In this article we will learn how to Create Projects, Edit Source Files &#38; Compile using TRIC…
STEP 1
To create a new project file select New Project from the Project Menu.  This opens a standard Windows dialog box asking for project file name. Generally its a good idea to save different projects in different folders. [...]]]></description>
			<content:encoded><![CDATA[<p>In this article we will learn how to Create Projects, Edit Source Files &amp; Compile using TRIC…</p>
<p>STEP 1</p>
<p>To create a new project file select New Project from the Project Menu.  This opens a standard Windows dialog box asking for project file name. Generally its a good idea to save different projects in different folders. So we shall use Create New Folder in this dialog to get a new empty folder.Select this folder and enter the file name for the new project, i.e. Project1.TRC creates a new project file with the name PROJECT1.trc. The project name appears in the Project Window.<br />
<span id="more-69"></span></p>
<p><img alt="SPET1" src="http://triindia.co.in/resources_images/tric/GS1.JPG"></p>
<p><img alt="SPET1" src="http://triindia.co.in/resources_images/tric/GS2.JPG"></p>
<p><img alt="SPET1" src="http://triindia.co.in/resources_images/tric/GS3.JPG"></p>
<p>STEP 2</p>
<p>Create a new source file by clicking on File â€” New. This opens an empty editor window to write the source code. TRIC enables the C color syntax highlighting. Now save the file with the extension *.C (default). We shall save our example under the name EXAMPLE.C.</p>
<p>/* Program to blink an LED */</p>
<p>#include</p>
<p>/*we include the necessary header file here which depends on the type of microcontroller we use. There are separate header files for separate microcontrollers in SDCC.*/</p>
<p>void delay(unsigned int dela)  /*This a simple delay function using the nested â€˜for loopâ€™  */<br />
{<br />
unsigned int i,j;<br />
for(i=0;i&lt;=1000;i++)</p>
<p>for(j=0;j&lt;=dela;j++);<br />
}</p>
<p>void main(void)				//main program begins here<br />
{</p>
<p>while (1)				//since there is no where to return<br />
//we put it in an infinite loop<br />
{<br />
RXD=0;	//LED 1 is on pin RXD at PORT 3_1, we //turn it ON</p>
<p>delay (20);			//wait for a short time<br />
RXD=1;			//turn the LED 1 OFF<br />
delay(20);			//wait for a short time</p>
<p>}<br />
}</p>
<p><img alt="SPET2" src="http://triindia.co.in/resources_images/tric/GS4.JPG"></p>
<p><img alt="SPET2" src="http://triindia.co.in/resources_images/tric/GS5.JPG"></p>
<p><img alt="SPET2" src="http://triindia.co.in/resources_images/tric/GS6.JPG"></p>
<p>STEP 3</p>
<p>Once we have created a source file we need to add this to our project. To do this click on Project &#8211; Add Main File. The option Add Main Files opens the standard files dialog. Select the file EXAMPLE.C that we just created. If the main file has more than one file then we can add more files using the option Add Sub File. The name of the added files can be seen in the Project workspace.</p>
<p><img alt="SPET3" src="http://triindia.co.in/resources_images/tric/GS7.JPG"></p>
<p><img alt="SPET3" src="http://triindia.co.in/resources_images/tric/GS8.JPG"></p>
<p>STEP 4</p>
<p>Finally we can compile our project by clicking on Project &#8211; Compile option, which displays errors and warnings if any in the source code otherwise generates the EXAMPLE.ihx .</p>
<p><img alt="SPET4" src="http://triindia.co.in/resources_images/tric/GS9.JPG"></p>
<p><img alt="SPET4" src="http://triindia.co.in/resources_images/tric/GS10.JPG"></p>
<p><a href="http://triindia.co.in/download/tric_Package.zip">Download TRIC and Enjoy</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=79</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CiMPLE Installation Guide</title>
		<link>http://www.thinklabs.in/resources/?p=59</link>
		<comments>http://www.thinklabs.in/resources/?p=59#comments</comments>
		<pubDate>Sat, 26 Dec 2009 04:21:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[robo.in]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=59</guid>
		<description><![CDATA[ Files needed for the installation
Browse through the CD that has been provided with the i-MACH kit.
For installation on windows, locate the setup file which would be available at the location /CiMPLE_Installation/windows/cimple_setup.exe
You can even download the same setup from the link http://triindia.co.in/download/cimple_setup.exe

&#160;
Getting Started: Pre-installation checklist
For windows
Windows xp and above.
Performing the installation on Windows
 Starting the [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal"> <strong><span style="font-size: 13pt; line-height: 115%;">Files needed for the installation<o:p></o:p></span></strong></p>
<p class="MsoNormal">Browse through the CD that has been provided with the i-MACH kit.</p>
<p class="MsoNormal">For installation on <strong>windows</strong>, locate the setup file which would be available at the location <strong>/CiMPLE_Installation/windows/cimple_setup.exe</strong></p>
<p class="MsoNormal">You can even download the same setup from the link <strong><a href="http://triindia.co.in/download/cimple_setup.exe">http://triindia.co.in/download/cimple_setup.exe</a></strong></p>
<p><span id="more-139"></span></p>
<p class="MsoNormal">&nbsp;</p>
<p class="MsoNormal"><strong><span style="font-size: 13pt; line-height: 115%;">Getting Started: Pre-installation checklist</span></strong></p>
<p class="MsoNormal"><strong><span style="font-size: 12pt; line-height: 115%;">For windows<o:p></o:p></span></strong></p>
<p class="MsoNormal">Windows xp and above.</p>
<p><strong><span style="font-size: 13pt; line-height: 115%;">Performing the installation on Windows<o:p></o:p></span></strong></p>
<p class="MsoNormal"> <strong><span style="font-size: 12pt; line-height: 115%;">Starting the installation<o:p></o:p></span></strong></p>
<p class="MsoNormal">Once you choose to run the set up file, you will be guided through the installation process.</p>
<p class="MsoNormal">Just follow the steps as mentioned below and you will be done with the installation of CiMPLE.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Once you click on the set up file, a window as below appears</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/14.jpg" title="CiMPLE setup 1"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/14.jpg" title="CiMPLE setup 1"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/14.jpg" alt="CiMPLE setup 1"></a></p>
<p class="MsoNormal"> Click on ‘Next’, this takes you further</p>
<p align="center">  <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/22.jpg" title="CiMPLE setup 2"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/22.jpg" title="CiMPLE setup 2"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/22.jpg" alt="CiMPLE setup 2"></a></p>
<p>By default CiMPLE gets installed under <strong>C:\Program Files\CiMPLE</strong> directory. When this path appears as the destination folder, click on ‘Install’<span style="font-size: 11pt; line-height: 115%; font-family: 'Calibri','sans-serif';">. </span></p>
<p class="MsoNormal">The installation process begins</p>
<p class="MsoNormal" align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/31.jpg" title="CiMPLE setup 3"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/31.jpg" title="CiMPLE setup 3"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/31.jpg" alt="CiMPLE setup 3"></a></p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/3.jpg" title="CiMPLE setup 3">  </a></p>
<p class="MsoNormal"><strong><span style="font-size: 12pt; line-height: 115%;">Installing the dependencies<o:p></o:p></span></strong></p>
<p class="MsoNormal"><span>As the set up progresses, you get a prompt to install WinAVR which is an open source software development tool that is needed to run CiMPLE.<o:p></o:p></span></p>
<p class="MsoNormal"><span>Select the language for installing WinAVR, default is english and click ‘OK’.<o:p></o:p></span></p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/41.jpg" title="CiMPLE setup 4"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/41.jpg" title="CiMPLE setup 4"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/41.jpg" alt="CiMPLE setup 4"></a></p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/4.jpg" title="CiMPLE setup 4">  </a></p>
<p class="MsoNormal">You will be guided through this setup.</p>
<p class="MsoNormal" align="left"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/5.jpg" title="CiMPLE setup 5"></a></p>
<p style="text-align: center;" align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/51.jpg" title="CiMPLE setup 5"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/51.jpg" title="CiMPLE setup 5"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/51.jpg" alt="CiMPLE setup 5"></a></p>
<p class="MsoNormal">   Click on ‘Next’ and continue.</p>
<p class="MsoNormal" align="left"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/6.jpg" title="CiMPLE setup 6"></a></p>
<p style="text-align: center;" align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/61.jpg" title="CiMPLE setup 6"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/61.jpg" alt="CiMPLE setup 6"></a><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/6.jpg" title="CiMPLE setup 6"> </a></p>
<p class="MsoNormal"> Accept the license agreement by clicking ‘I Agree’ and continue.</p>
<p> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/7.jpg" title="CiMPLE setup 7"></a></p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/7.JPG" title="CiMPLE setup 7"></a></p>
<p style="text-align: center;" align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/71.jpg" title="CiMPLE setup 7"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/71.jpg" alt="CiMPLE setup 7"></a></p>
<p class="MsoNormal">By default WinAVR gets installed under <strong>C:\ WinAVR-20080402rc1</strong> directory. Once this location appears as the destination folder, click on ‘Next’.</p>
<p class="MsoNormal">You will be asked to choose features of WinAVR that you would like to install. Go by the default selections and click on ‘Install’.</p>
<p class="MsoNormal"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/8.jpg" title="CiMPLE setup 8"></a></p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/8.JPG" title="CiMPLE setup 8"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/81.jpg" title="CiMPLE setup 8"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/81.jpg" title="CiMPLE setup 8"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/81.jpg" alt="CiMPLE setup 8"></a></p>
<p class="MsoNormal">The installation process begins</p>
<p class="MsoNormal" align="left"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/9.jpg" title="CiMPLE setup 9"></a></p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/91.jpg" title="CiMPLE setup 9"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/91.jpg" title="CiMPLE setup 9"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/91.jpg" alt="CiMPLE setup 9"></a></p>
<p class="MsoNormal"> <strong><span style="font-size: 12pt; line-height: 115%;">Finishing up<o:p></o:p></span></strong></p>
<p class="MsoNormal">Once done, you will get a window as below.</p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/101.jpg" title="CiMPLE setup 10"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/101.jpg" title="CiMPLE setup 10"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/101.jpg" alt="CiMPLE setup 10"></a></p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/10.jpg" title="CiMPLE setup 10"> </a></p>
<p>Click on ‘Finish’ to end WinAVR installation.</p>
<p class="MsoNormal">Next end the CiMPLE installation.</p>
<p><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/11.jpg" title="CiMPLE setup 11"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/111.jpg" title="CiMPLE setup 11"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/111.jpg" title="CiMPLE setup 11"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/111.jpg" alt="CiMPLE setup 11"></a></p>
<p class="MsoNormal">Click on ‘Finish’ to end installation and start CiMPLE application. A user interface as shown below appears. You can write your CiMPLE code here.</p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/121.jpg" title="CiMPLE setup 12"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/121.jpg" title="CiMPLE setup 12"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/121.jpg" alt="CiMPLE setup 12"></a></p>
<p class="MsoNormal"> <strong><span style="font-size: 12pt; line-height: 115%;">Connecting the hardware</span></strong><strong><span style="font-size: 13pt; line-height: 115%;"><o:p></o:p></span></strong></p>
<p>When you are done with writing the code, have saved it, compiled it and connect the hardware for the first time to burn your program, a message as shown below would appear</p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/131.jpg" title="CiMPLE setup 13"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/132.jpg" title="Help 1"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/131.jpg" alt="CiMPLE setup 13"></a></p>
<p class="MsoNormal"> Subsequently another window as below would pop up. On this window select ‘No, not this time’ and click on ‘Next’.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/15.jpg" title="CiMPLE setup 15"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/15.jpg" title="CiMPLE setup 15"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/15.jpg" title="CiMPLE setup 15"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/15.jpg" alt="CiMPLE setup 15"></a></p>
<p class="MsoNormal">Another window asking you to install automatically or from a specific location would appear. Select the option ‘Install from a list or specific location (Advanced)’ and click on ‘Next’.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/17.jpg" title="CiMPLE setup 17"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/17.jpg" title="CiMPLE setup 17"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/17.jpg" alt="CiMPLE setup 17"></a></p>
<p class="MsoNormal">Then you would be required to select a location to search for the components to be installed. Check the option ‘Include this location in the search’ and click on browse to locate the directory to be searched.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/19.jpg" title="CiMPLE setup 19"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/19.jpg" title="CiMPLE setup 19"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/19.jpg" alt="CiMPLE setup 19"></a></p>
<p>During the installation, a folder named “USBasp Driver” available in the directory <strong>CiMPLE_Installation\Windows</strong> in the CD gets copied on to your desktop, browse to this location on your desktop. Select this directory and click ‘OK’.</p>
<p>The USBasp driver can also be obtained from this link <strong><a href="http://triindia.co.in/download/USBasp%20Driver.zip">http://triindia.co.in/download/USBasp%20Driver.zip</a></strong></p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/20.jpg" title="CiMPLE setup 20"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/20.jpg" title="CiMPLE setup 20"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/20.jpg" alt="CiMPLE setup 20"></a></p>
<p>Once this path appears in the location to be searched, click on ‘Next’.</p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/211.jpg" title="CiMPLE setup 21"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/211.jpg" title="CiMPLE setup 21"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/211.jpg" alt="CiMPLE setup 21"></a></p>
<p class="MsoNormal">   The installation would then begin.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/221.jpg" title="CiMPLE setup 22"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/221.jpg" title="CiMPLE setup 22"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/221.jpg" alt="CiMPLE setup 22"></a></p>
<p class="MsoNormal">You will be prompted to choose the location of the file libusb0.sys. For the same, browse to the directory <strong>\Desktop\USBasp Driver\bin</strong>, select libusb0.sys and click ‘Open’.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/23.jpg" title="CiMPLE setup 23"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/23.jpg" title="CiMPLE setup 23"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/23.jpg" alt="CiMPLE setup 23"></a></p>
<p>This path would get included as the location to copy files from. Once done, click on ‘OK’.</p>
<p align="center"> <a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/24.jpg" title="CiMPLE setup 24"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/24.jpg" title="CiMPLE setup 24"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/24.jpg" alt="CiMPLE setup 24"></a></p>
<p>This would complete the installation of the software for USBasp driver. Click on ‘Finish’ to exit the setup.</p>
<p align="center"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/25.jpg" title="CiMPLE setup 25"></a></p>
<p style="text-align: center;"><a href="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/25.jpg" title="CiMPLE setup 25"><img src="http://www.triindia.co.in/resources/wp-content/uploads/2008/05/25.jpg" alt="CiMPLE setup 25"></a></p>
<p class="MsoNormal">Once done with this, you can connect the hardware to your system and burn your code written in CiMPLE on to the same.</p>
<table class="MsoNormalTable" style="border: medium none ; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td style="border: 1pt solid black; padding: 0in 5.4pt;" valign="top">
<p class="MsoNormal" style="text-align: justify;"><strong><u><span style="color: red;">Troubling shooting during the installation   of CiMPLE on windows</span></u></strong><u><span style="color: red;"><o:p></o:p></span></u></p>
</td>
</tr>
<tr>
<td style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt;" valign="top">
<ol style="margin-top: 0in;" start="1" type="1">
<li class="MsoNormal" style="text-align: justify;">Make        sure that ‘<strong>OK’</strong> is clicked        when asked to install winAVR.<o:p></o:p></li>
</ol>
</td>
</tr>
<tr>
<td style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt;" valign="top">
<ol style="margin-top: 0in;" start="2" type="1">
<li class="MsoNormal" style="text-align: justify;">While        installing winAVR, go by the default options, <strong>DO NOT</strong> change the path.<o:p></o:p></li>
</ol>
</td>
</tr>
<tr>
<td style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt;" valign="top">
<ol style="margin-top: 0in;" start="3" type="1">
<li class="MsoNormal" style="text-align: justify;">While        connecting the hardware for the first time, <strong>MAKE SURE</strong> that if the message ‘Found New Hardware’ appears,        the USBasp driver is installed.<o:p></o:p></li>
</ol>
</td>
</tr>
<tr>
<td style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt;" valign="top">
<ol style="margin-top: 0in;" start="4" type="1">
<li class="MsoNormal" style="text-align: justify;">While        installing the driver, <strong>BE SURE</strong>        that you specify the correct location of the file being asked for.<o:p></o:p></li>
</ol>
</td>
</tr>
<tr>
<td style="border-style: none solid solid; border-color: -moz-use-text-color black black; border-width: medium 1pt 1pt; padding: 0in 5.4pt;" valign="top">
<ol style="margin-top: 0in;" start="5" type="1">
<li class="MsoNormal" style="text-align: justify;"><strong>RESTART</strong> your machine to make the        changes during installation effective.<o:p></o:p></li>
</ol>
</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=59</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About TRIC</title>
		<link>http://www.thinklabs.in/resources/?p=47</link>
		<comments>http://www.thinklabs.in/resources/?p=47#comments</comments>
		<pubDate>Sat, 26 Dec 2009 04:02:44 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[iBOT, iTRIx and the 8051]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=47</guid>
		<description><![CDATA[TRI has come up with source code development environment “TRIC” which has everything you need for rapid program development . TRIC helps expedite the development process of your embedded applications by providing the following features:
1.Windows-based IDE that combines a robust editor, project manager, and compiler.
2.TRI C integrates all tools including the SDCC compiler(which includes macro [...]]]></description>
			<content:encoded><![CDATA[<p>TRI has come up with source code development environment “TRIC” which has everything you need for rapid program development . TRIC helps expedite the development process of your embedded applications by providing the following features:</p>
<p>1.Windows-based IDE that combines a robust editor, project manager, and compiler.<br />
2.TRI C integrates all tools including the SDCC compiler(which includes macro assembler, linker/locator, and HEX file generator).<br />
3.Full-featured source code editor,<br />
4.Project manager for creating and maintaining your projects,<br />
5.Integrated compiling facility.<br />
6.iBoard compatible TRIC LIBRARY to easy programming<br />
7.Comprehensive User Guide</p>
<p>As already mentioned the compiler used by TRI C is SDCC. SDCC is an ANSI &#8211; C compiler that targets the Intel 8051, Maxim 80DS390, Zilog Z80 and the Motorola 68HC08 based MCUs. SDCC is Free Open Source Software, distributed under GNU General Public License (GPL).</p>
<p>*you can get SDCC from :http://sdcc.sourceforge.net/</p>
<p>Some of the features include:<br />
1.ASXXXX and ASLINK, a Freeware, retargettable assembler and linker.<br />
2.Extensive MCU specific language extensions, allowing effective use of the underlying hardware.<br />
3.MCU specific optimizations, including a global register allocator.<br />
4.Adaptable MCU specific backend that should be well suited for other 8 bit MCUs<br />
5.Independent rule based peep hole optimizer.<br />
6.A full range of data types: char (8 bits, 1 byte), short (16 bits, 2 bytes), int (16 bits, 2 bytes), long (32 bit, 4 bytes) and float (4<br />
byte IEEE).<br />
7.The ability to add inline assembler code anywhere in a function.<br />
8.The ability to report on the complexity of a function to help decide what should be re-written in assembler.<br />
9.A good selection of automated regression tests.</p>
<p>Installing TRIC<br />
Just download the installer form the link given below and start off…<br />
NOTE:<br />
â€¢ You can always get product updates, application notes, latest Version and sample programs from :</p>
<p>Download TRI C : http://triindia.co.in/download/tric_Package.zip</p>
<p>For Technical Support Drop A mail On :support-tric@triindia.co.in</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=47</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Complete guide to parallel port programming</title>
		<link>http://www.thinklabs.in/resources/?p=21</link>
		<comments>http://www.thinklabs.in/resources/?p=21#comments</comments>
		<pubDate>Thu, 24 Dec 2009 12:03:56 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Embedded System Design]]></category>
		<category><![CDATA[Robotics Software]]></category>
		<category><![CDATA[iBOT, iTRIx and the 8051]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=21</guid>
		<description><![CDATA[Lets begin straightaway with an argument….The world is moving towards RS-232, USB, Fire-wire and other serial bus standards, so why do I still bother using the parallel port?
For starters we are talking about controlling motors here. When it comes to controlling such devices, it’s always the legendary parallel port that hobbyists have been resorting to, [...]]]></description>
			<content:encoded><![CDATA[<p>Lets begin straightaway with an argument….The world is moving towards RS-232, USB, Fire-wire and other serial bus standards, so why do I still bother using the parallel port?</p>
<p>For starters we are talking about controlling motors here. When it comes to controlling such devices, it’s always the legendary parallel port that hobbyists have been resorting to, since minimizing the required hardware, facilitating simple operation and a faster development cycle are some of the advantages that the parallel port has to offer.</p>
<p>So, without wasting anytime, lets start our session…your development time starts here…..<span id="more-78"></span></p>
<p><strong><u>The Hardware:</u></strong></p>
<p>Here is how the standard DB25 connector (parallel port connector) at the back-side of your CPU cabinet is configured:</p>
<p><!--[if gte vml 1]&amp;gt;                                                  --></p>
<p><img src="http://www.triindia.co.in/resources_images/Matlab_intro01/parpindiag.JPG" width="364" align="absmiddle" height="200"></p>
<p align="left"><strong>Fig: Parallel port pin configuration</strong></p>
<p>As the name refers, your data is transferred over data lines (bidirectional), Control lines are used to control the peripherals and of course, the peripherals return status signals back to computer through Status lines. These lines are connected to Data, Control and Status registers internally.</p>
<p>The details of parallel port signal lines are given below:</p>
<table width="280" border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td valign="top" width="122"><strong>Pin No (DB25)</strong></td>
<td valign="top" width="114"><strong>Register – bit</strong></td>
<td valign="top"><strong>Direction</strong></td>
<td valign="top"><strong>Inverted</strong></td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">1</p>
</td>
<td valign="top" width="114">
<p align="right">Control-0</p>
</td>
<td valign="top">
<p align="right">Out</p>
</td>
<td valign="top">
<p align="right">Yes</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">2</p>
</td>
<td valign="top" width="114">
<p align="right">Data-0</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">3</p>
</td>
<td valign="top" width="114">
<p align="right">Data-1</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">4</p>
</td>
<td valign="top" width="114">
<p align="right">Data-2</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">5</p>
</td>
<td valign="top" width="114">
<p align="right">Data-3</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">6</p>
</td>
<td valign="top" width="114">
<p align="right">Data-4</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">7</p>
</td>
<td valign="top" width="114">
<p align="right">Data-5</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">8</p>
</td>
<td valign="top" width="114">
<p align="right">Data-6</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">9</p>
</td>
<td valign="top" width="114">
<p align="right">Data-7</p>
</td>
<td valign="top">
<p align="right">In/Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">10</p>
</td>
<td valign="top" width="114">
<p align="right">Status-6</p>
</td>
<td valign="top">
<p align="right">In</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">11</p>
</td>
<td valign="top" width="114">
<p align="right">Status-7</p>
</td>
<td valign="top">
<p align="right">In</p>
</td>
<td valign="top">
<p align="right">Yes</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">12</p>
</td>
<td valign="top" width="114">
<p align="right">Status-5</p>
</td>
<td valign="top">
<p align="right">In</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">13</p>
</td>
<td valign="top" width="114">
<p align="right">Status-4</p>
</td>
<td valign="top">
<p align="right">In</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">14</p>
</td>
<td valign="top" width="114">
<p align="right">Control-1</p>
</td>
<td valign="top">
<p align="right">Out</p>
</td>
<td valign="top">
<p align="right">Yes</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">15</p>
</td>
<td valign="top" width="114">
<p align="right">Status-3</p>
</td>
<td valign="top">
<p align="right">In</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">16</p>
</td>
<td valign="top" width="114">
<p align="right">Control-2</p>
</td>
<td valign="top">
<p align="right">Out</p>
</td>
<td valign="top">
<p align="right">No</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">17</p>
</td>
<td valign="top" width="114">
<p align="right">Control-3</p>
</td>
<td valign="top">
<p align="right">Out</p>
</td>
<td valign="top">
<p align="right">Yes</p>
</td>
</tr>
<tr>
<td valign="top" width="122">
<p align="center">18-25</p>
</td>
<td valign="top" width="114">
<p align="right">-</p>
</td>
<td valign="top">
<p align="right">-</p>
</td>
<td valign="top">
<p align="right">-</p>
</td>
</tr>
</tbody>
</table>
<p>You don’t generally need to bother about the control and status lines unless you are writing a parallel port driver.</p>
<p>And there is no great point in ‘reinventing the wheel’, so I guess you won’t bother to write the driver all over again unless it’s a device driver assignment given by your prof…</p>
<p>The data line is what will be of utmost importance to us, since we will either need to send out some navigational command (OUT) to our motor, or acquire some sensor input (IN).</p>
<p><strong><u>Programming:</u></strong></p>
<p>Before we start talking about programming, the register addresses are what we need to be aware of. Also downloading a port monitoring software would be a good idea to confirm our results when we are done.</p>
<p>Here is a link to download one such application:</p>
<p><a href="http://www.geekhideout.com/parmon.shtml">http://www.geekhideout.com/parmon.shtml</a></p>
<p><img src="http://www.triindia.co.in/resources_images/Matlab_intro01/parmon.JPG" width="216" align="absmiddle" height="138"></p>
<p align="left"><strong>Fig: Screenshot of parmon (parallel port monitor)</strong></p>
<p>The numbers ‘378’, ‘379’ and ‘37A’ seen out here in the screen shot are parallel port register addresses. For a typical PC, the base address of LPT1 is 0×378 and of LPT2 is 0×278. The data register resides at this base address, status register at base address + 1 and the control register is at base address + 2. So once we have the base address, we can calculate the address of each registers in this manner. The table below shows the register addresses of LPT1 and LPT2</p>
<table border="1" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td valign="top">
<p align="center"><strong>Register</strong></p>
</td>
<td valign="top">
<p align="center"><strong>LPT1</strong></p>
</td>
<td valign="top">
<p align="center"><strong>LPT2</strong></p>
</td>
</tr>
<tr>
<td valign="top">
<p align="right">data register (base address + 0)</p>
</td>
<td valign="top">
<p align="right">0×378</p>
</td>
<td valign="top">
<p align="right">0×278</p>
</td>
</tr>
<tr>
<td valign="top">
<p align="right">status register (base address + 1)</p>
</td>
<td valign="top">
<p align="right">0×379</p>
</td>
<td valign="top">
<p align="right">0×279</p>
</td>
</tr>
<tr>
<td valign="top">
<p align="right">control register (base address + 2)</p>
</td>
<td valign="top">
<p align="right">0×37a</p>
</td>
<td valign="top">
<p align="right">0×27a</p>
</td>
</tr>
</tbody>
</table>
<p><strong><u>Programming Concepts</u></strong></p>
<p>Almost all programming languages allow programmers to access parallel port using some library functions. We will be discussing about the conventionally used ‘C’ language as well as MATLAB.</p>
<p><strong>Parallel port access in ‘C’:</strong></p>
<p>In C, there are following functions used for accessing the port:</p>
<ol>
<li>outportb( PORTID, data);</li>
<li>data = inportb( PORTID);</li>
<li>outport( PORTID, data);</li>
<li>data = inport( PORTID);</li>
</ol>
<p>outport() function sends a word to port, inport() reads a word from the port. outportb() sends a byte to port and inportb() reads a byte from the port. If you include DOS.H header, these functions will be considered as macro, otherwise as functions. Function inport() will return a word having lower byte as data at PORTID and higher byte as data at PORTID+2. So, we can use this function to read status and control registers together. inportb() function returns byte at PORTID. outport() writes the lower byte to PORTID and higher byte to PORTID+1. So this can be used to write data and control together. outportb() function write the data to PORTID. outport() and outportb() returns nothing.</p>
<p>A sample program for blinking LEDs connected at the parallel port at a constant frequency is as shown below:</p>
<p>#include”conio.h”</p>
<p>#include”dos.h”</p>
<p>#define PORT 0×378</p>
<p>void main()<br />
{<br />
      while(!kbhit())<br />
     {<br />
           outportb(PORT, ~inportb(PORT) );</p>
<p>           delay(1000);<br />
     }<br />
}</p>
<p><strong>NOTE:</strong> Don’t forget to start ‘parmon’ so that you can comfortably monitor your port’s real time status.</p>
<p>Also remember that the parallel port output is internally latched and hence it retains the same status till a new data is sent onto the parallel port. So, for a motor control application if you have a byte dedicated for movement, make sure you have a byte dedicated to halt the motor. This byte should be sent at the parallel port whenever you want to halt the motor, otherwise the latched output will make the motor run continuously.</p>
<p><strong>Parallel port access in MATLAB:</strong></p>
<p>Initially, we create a parallel port object as shown below,</p>
<p>parport=digitalio(’parallel’,&#8217;LPT1′);</p>
<p>Post this, we add the actual hardware lines to this newly created parallel port object as also define the direction of data flow as done below:</p>
<p>line=addline(parport,0:7,0,’out’);</p>
<p>We declare an array containing the data that we want to snd at the port pins,</p>
<p>pval = [1 0 1 0 0 0 0 0];</p>
<p>Finally, using ‘putvalue’, we send the data at the port pins.</p>
<p>putvalue(parport,pval);</p>
<p>Use ‘getvalue’ the read the status of the port.</p>
<p><strong><u>Points to note:</u></strong></p>
<p><strong><u></u></strong></p>
<p>In case you are using the parallel port to drive motors or any such load, beware!! There is a very high amount of risk involved in this as the parallel port might get loaded and cause damage to the motherboard.</p>
<p>Hence, it is always a good idea to connect an opto-coupler between the parallel port and the motor driving circuit. This ensures isolation and allows us to use the parallel port without bothering about the safety of the motherboard.</p>
<p>A schematic for motor control using parallel port can be found below:</p>
<p><a href="http://triindia.co.in/resources_images/Matlab_intro01/vizbot.JPG"><img src="http://triindia.co.in/resources_images/Matlab_intro01/vizbot1.jpg" width="487" align="absmiddle" height="434"></a></p>
<p>It uses MCT2E, an opto-isolator along with L293D for driving 2 DC motors.</p>
<p>You can download the data sheets from:</p>
<p><a href="http://www.tranzistoare.ro/datasheets/90/424848_DS.pdf">http://www.tranzistoare.ro/datasheets/90/424848_DS.pdf</a></p>
<p><a href="http://www.st.com/stonline/books/pdf/docs/1330.pdf">http://www.st.com/stonline/books/pdf/docs/1330.pdf</a></p>
<p>So, go on and start programming. Your development time ends here!!!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=21</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Building a RF remote control</title>
		<link>http://www.thinklabs.in/resources/?p=12</link>
		<comments>http://www.thinklabs.in/resources/?p=12#comments</comments>
		<pubDate>Thu, 24 Dec 2009 11:44:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[AVR]]></category>
		<category><![CDATA[Robotics Software]]></category>

		<guid isPermaLink="false">http://www.thinklabs.in/resources/?p=12</guid>
		<description><![CDATA[Ever wondered how you can get rid of that long wired tail  dangling out of your remote control robot? Well, transforming your wired remote  control into a wire-less one isn’t as difficult as you may think!
  The easiest solution would be to hack those cheap wireless  toy cars, take their electronic [...]]]></description>
			<content:encoded><![CDATA[<p>Ever wondered how you can get rid of that long wired tail  dangling out of your remote control robot? Well, transforming your wired remote  control into a wire-less one isn’t as difficult as you may think!<br />
  The easiest solution would be to hack those cheap wireless  toy cars, take their electronic guts out and use them in your robot. But if you  want more flexibility, you can build a custom remote control system. And here’s  an article on how we are going to do that:</p>
<p><span id="more-50"></span></p>
<p align="justify">The idea is to use off-the-shelf RF Tx/Rx modules. These modules,  once a rare commodity, are now widely and cheaply available. In this particular  discussion, we shall be using ASK (Amplitude Shift Keying) based TX/RX pair  operating at 433 MHz. The transmitter module accepts serial data at a maximum  of XX baud rate. They can be directly interfaced to a microcontroller or can be  used in remote control applications with the help of encoder/decoder ICs. The  encoder IC takes in parallel data at the TX side, packages it into serial format  and then transmits it with the help of a RF transmitter module. At the RX end,  the decoder IC receives the signal via the RF receiver module, decodes the  serial data and reproduces the original data in the parallel format.</p>
<table width="300" align="center" border="0">
<tbody>
<tr>
<td>
<div align="center"><img src="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/52-SM%20TX%2001%20-%20ASK-1.jpg" width="127" height="219"></div>
</td>
<td>
<div align="center"><img src="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/52-SM%20RX%2002%20-%20ASK-1.jpg" width="274" height="134"></div>
</td>
</tr>
<tr>
<td>
<div align="center">ASK Transmitter </div>
</td>
<td>
<div align="center">ASK Receiver </div>
</td>
</tr>
</tbody>
</table>
<p align="justify">&nbsp;</p>
<p align="justify">Now in order to control say one motor, we require 2 bits of  information while we need 4 bits of information to control 2 motors. HT12E and HT12D are 4 channel encoder/decoder ICs directly compatible with the  specified RF module. The schematic is as shown below.</p>
<p align="center"><img src="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/tx12e.JPG" width="757" height="505"></p>
<p align="center"><img src="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/RX12D.JPG" width="757" height="505"></p>
<p align="justify">In order to drive motors, we would need to connect a  suitable motor driver at the output of the decoder IC. The motor driver circuit  can consist of a Relay, transistorized H-Bridge or motor driver ICs like the  L293D, L298 etc.</p>
<p align="center"><img src="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/RF%20Modules.jpg" width="519" height="387"></p>
<p align="justify"><strong>Relevant Links:</strong><br />
  <a href="http://www.triindia.co.in/shop/" target="_blank">ASK RF modules, Encoder/Decoder ICs and motor drivers are  available here at <strong>TRI’s Online Roboshop</strong>.</a></p>
<p><u>Datasheets:</u><br />
  <a href="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/HT12E.pdf" target="_blank">HT12E</a></p>
<p>  <a href="http://www.triindia.co.in/resources_images/Building%20a%20RF%20remote%20control/HT12D.pdf" target="_blank">HT12D</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.thinklabs.in/resources/?feed=rss2&amp;p=12</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
