<?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>NeoEGM.com &#187; 8051</title>
	<atom:link href="https://www.neoegm.com/tag/8051/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.neoegm.com</link>
	<description>Knowledge is inside</description>
	<lastBuildDate>Mon, 08 Jul 2024 05:38:01 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.2.39</generator>
	<item>
		<title>Keil uVision Plugin: Matrix Keyboard</title>
		<link>https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/</link>
		<comments>https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/#comments</comments>
		<pubDate>Mon, 03 May 2010 04:53:36 +0000</pubDate>
		<dc:creator><![CDATA[NeoEGM]]></dc:creator>
				<category><![CDATA[Keil Plugins]]></category>
		<category><![CDATA[8051]]></category>
		<category><![CDATA[AGSI]]></category>
		<category><![CDATA[Download]]></category>
		<category><![CDATA[Keil]]></category>
		<category><![CDATA[Keyboard]]></category>
		<category><![CDATA[Matrix]]></category>
		<category><![CDATA[Matrix Keyboard]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[uVision]]></category>
		<category><![CDATA[Visual Studio]]></category>

		<guid isPermaLink="false">http://www.neoegm.com/?p=1692</guid>
		<description><![CDATA[Update (2010-05-19): schematic updated to reflect real circuit. Since I could not manage to find a decent matrix keyboard plugin for Keil uVision, I&#8217;ve decided to develop one. Internally, it responds to the following schematic: It&#8217;s prepared to accept multiple key presses at once, so you can simulate a real world application: Usage First of [&#8230;]<div class='yarpp-related-rss'>
<strong>
Related posts:<ol>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/" rel="bookmark" title="How to install a Keil uVision peripheral plugin">How to install a Keil uVision peripheral plugin </a></li>
<li><a href="https://www.neoegm.com/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="WP-No-Format WordPress Plugin (Prevent HTML Code Formatting/Modification)">WP-No-Format WordPress Plugin (Prevent HTML Code Formatting/Modification) </a></li>
<li><a href="https://www.neoegm.com/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer">Guitar Trainer </a></li>
</ol>
</div>
]]></description>
				<content:encoded><![CDATA[<p><strong>Update (2010-05-19):</strong> schematic updated to reflect real circuit.</p>
<p>Since I could not manage to find a decent matrix keyboard plugin for Keil uVision, I&#8217;ve decided to develop one.</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Keyboard.png" alt="" title="MatrixKeyboard_Keyboard" width="184" height="255" class="aligncenter size-full wp-image-1694" /></p>
<p><span id="more-1692"></span></p>
<p>Internally, it responds to the following schematic:</p>
<p><a href="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Schematic.png" rel="lightbox[1692]"><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Schematic-180x300.png" alt="" title="MatrixKeyboard_Schematic" width="180" height="300" class="aligncenter size-medium wp-image-1693" /></a></p>
<p>It&#8217;s prepared to accept multiple key presses at once, so you can simulate a real world application:</p>
<p><img src="http://www.neoegm.com/wp-content/uploads/2010/05/MatrixKeyboard_Keyboard_Multiple.png" alt="" title="MatrixKeyboard_Keyboard_Multiple" width="184" height="256" class="aligncenter size-full wp-image-1695" /></p>
<h3>Usage</h3>
<p>First of all, you must install it on the Keil uVision and configure your project in order to use it while simulating. The plugin name, for the configuration, is <strong>MatrixKeyboard</strong>. You can follow <a href="http://www.neoegm.com/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/">this step by step guide</a>.</p>
<p>Then, you must copy the <strong>MatrixKeyboard.ini</strong> file to your project and modify it to satisfy your needs. For example, given the following pin definitions:</p>
<pre class="brush: cpp; title: ; notranslate">
sbit Keyboard_Scan_0 = P1^1;
sbit Keyboard_Scan_1 = P1^2;
sbit Keyboard_Scan_2 = P1^3;
sbit Keyboard_Scan_3 = P1^4;

sbit Keyboard_Return_0 = P1^5;
sbit Keyboard_Return_1 = P1^6;
sbit Keyboard_Return_2 = P1^7;
</pre>
<p>You could configure the INI file like this:</p>
<pre class="brush: plain; title: ; notranslate">
[Settings]

; All port addresses in hexadecimal
; Bits: 0-7

Scan0_Port_Address = 90
Scan0_Port_Bit = 1

Scan1_Port_Address = 90
Scan1_Port_Bit = 2

Scan2_Port_Address = 90
Scan2_Port_Bit = 3

Scan3_Port_Address = 90
Scan3_Port_Bit = 4

Return0_Port_Address = 90
Return0_Port_Bit = 5

Return1_Port_Address = 90
Return1_Port_Bit = 6

Return2_Port_Address = 90
Return2_Port_Bit = 7
</pre>
<p>If you don&#8217;t remember the port addresses, you can always check the header file corresponding to you microcontroller and look for a line like this:</p>
<pre class="brush: cpp; title: ; notranslate">
sfr P1 = 0x90;
</pre>
<p>Well, that&#8217;s all. You can now run your project in simulation mode and open the plugin via Peripherals->Matrix Keyboard.</p>
<p><a href="http://www.gnu.org/licenses/gpl-3.0.txt"><img src="http://www.neoegm.com/wp-content/uploads/2009/07/gplv3-127x511.png" alt="GNU GPL v3" title="GNU GPL v3" width="127" height="51" class="aligncenter size-full wp-image-251" /></a> <span class="aligncenter">MatrixKeyboard is licensed under the <a href="http://www.gnu.org/licenses/gpl-3.0.txt">GNU GPL v3</a> (attached)&#8230;</span></p>
<p>Finally, the downloads:</p>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/keil-plugins/matrix-keyboard/MatrixKeyboard_1.1.zip">MatrixKeyboard Plugin v1.1</a></p>
</div>
<div align="center">
<p class="download"><a href="http://download.neoegm.com/software/keil-plugins/matrix-keyboard/MatrixKeyboard_1.1_Source.zip">Download v1.1 Source Code</a></p>
</div>
<p>The source code proyect is done in Visual Studio 2008, but it can be easily adapted for other versions.<br />
<h4>Incoming search terms for the article:</h4>
<ul>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="guitar fret notes">guitar fret notes</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="diapasón guitarra">diapasón guitarra</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="diapasón de la guitarra">diapasón de la guitarra</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="matrix keyboard">matrix keyboard</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="notes on the fretboard">notes on the fretboard</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="guitar notes on the fretboard">guitar notes on the fretboard</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="KEIL UVISION">KEIL UVISION</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="teclado matricial">teclado matricial</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="the notes on a guitar">the notes on a guitar</a></li>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/" title="windows 95 games">windows 95 games</a></li>
</ul>
<div class='yarpp-related-rss'>
<strong><p>Related posts:<ol>
<li><a href="https://www.neoegm.com/tech/hardware/8051/keil-plugins/how-to-install-a-keil-uvision-peripheral-plugin/" rel="bookmark" title="How to install a Keil uVision peripheral plugin">How to install a Keil uVision peripheral plugin </a></li>
<li><a href="https://www.neoegm.com/tech/wordpress/plugins/wp-no-format/" rel="bookmark" title="WP-No-Format WordPress Plugin (Prevent HTML Code Formatting/Modification)">WP-No-Format WordPress Plugin (Prevent HTML Code Formatting/Modification) </a></li>
<li><a href="https://www.neoegm.com/tech/software/tools/guitar-trainer/" rel="bookmark" title="Guitar Trainer">Guitar Trainer </a></li>
</ol></p>
</div>
]]></content:encoded>
			<wfw:commentRss>https://www.neoegm.com/tech/hardware/8051/keil-plugins/keil-uvision-plugin-matrix-keyboard/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
