<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.terasic.com.tw/wiki/skins/common/feed.css?270"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://www.terasic.com.tw/wiki/index.php?action=history&amp;feed=atom&amp;title=BAL_Battery_Package_04_User_Guide</id>
		<title>BAL Battery Package 04 User Guide - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://www.terasic.com.tw/wiki/index.php?action=history&amp;feed=atom&amp;title=BAL_Battery_Package_04_User_Guide"/>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;action=history"/>
		<updated>2026-05-20T06:17:01Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.16.5</generator>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3247&amp;oldid=prev</id>
		<title>Admin at 07:17, 15 October 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3247&amp;oldid=prev"/>
				<updated>2018-10-15T07:17:03Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 07:17, 15 October 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), &amp;nbsp;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3246&amp;oldid=prev</id>
		<title>Admin at 07:16, 15 October 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3246&amp;oldid=prev"/>
				<updated>2018-10-15T07:16:47Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 07:16, 15 October 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;'''This document will help developers jump-start your development when modify and restructure these sample codes for your own design!''' &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;'''This document will help developers jump-start your development when modify and restructure these sample codes for your own design!''' &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3245&amp;oldid=prev</id>
		<title>Admin at 07:15, 15 October 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3245&amp;oldid=prev"/>
				<updated>2018-10-15T07:15:59Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 07:15, 15 October 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3244&amp;oldid=prev</id>
		<title>Admin: /* Chpater1 Using the Self-Balancing Robot */</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3244&amp;oldid=prev"/>
				<updated>2018-10-15T07:15:34Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Chpater1 Using the Self-Balancing Robot&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 07:15, 15 October 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;del style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''This document will help developers jump-start your development when modify and restructure these sample codes for your own design!''' &amp;nbsp;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;'''This document will help developers jump-start your development when modify and restructure these sample codes for your own design!''' &amp;nbsp;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== 1-1 Control the Motor ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== 1-1 Control the Motor ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3243&amp;oldid=prev</id>
		<title>Admin at 07:15, 15 October 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=3243&amp;oldid=prev"/>
				<updated>2018-10-15T07:15:11Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 07:15, 15 October 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;This document explains the functions of the Self-Balancing Robot interfaces (such as motor rotation control and tilt angle detection ), and offers a detailed description on the corresponding hardware/software control code.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;'''This document will help developers jump-start your development when modify and restructure these sample codes for your own design!''' &lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== 1-1 Control the Motor ==&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;== 1-1 Control the Motor ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=2000&amp;oldid=prev</id>
		<title>Bingxia: /* 1-5 Balanced System */</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=2000&amp;oldid=prev"/>
				<updated>2018-07-17T09:49:45Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;1-5 Balanced System&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 09:49, 17 July 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,038:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,038:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;BAL_04_User_Guide_pic_21&lt;/del&gt;.jpg|800px]]&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;PID closed-loop Control with Angle, Speed and Turn of the Robot&lt;/ins&gt;.jpg|800px]]&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-21 PID closed-loop Control with Angle, Speed and Turn of the Robot'''&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-21 PID closed-loop Control with Angle, Speed and Turn of the Robot'''&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,053:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,053:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The main routine flow chart is shown in Figure 1-22 .&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;The main routine flow chart is shown in Figure 1-22 .&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;-&lt;/td&gt;&lt;td style=&quot;background: #ffa; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;BAL_04_User_Guide_pic_22&lt;/del&gt;.&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;png&lt;/del&gt;|500px]]&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;Main Routine FLOW Chart&lt;/ins&gt;.&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;jpg&lt;/ins&gt;|500px]]&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;nbsp;  '''Figure 1-22 Main Routine FLOW Chart'''&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;nbsp;  '''Figure 1-22 Main Routine FLOW Chart'''&amp;lt;/div&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Bingxia</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1996&amp;oldid=prev</id>
		<title>Admin at 08:40, 17 July 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1996&amp;oldid=prev"/>
				<updated>2018-07-17T08:40:24Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 08:40, 17 July 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1995&amp;oldid=prev</id>
		<title>Admin at 08:40, 17 July 2018</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1995&amp;oldid=prev"/>
				<updated>2018-07-17T08:40:08Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: white; color:black;&quot;&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
			&lt;col class='diff-marker' /&gt;
			&lt;col class='diff-content' /&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='2' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 08:40, 17 July 2018&lt;/td&gt;
		&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,878:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1,878:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|-&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background: #eee; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;|}&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;nbsp;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;background: #cfc; color:black; font-size: smaller;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;color: red; font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Self_Balacing_Robot#Document|'''Back''']] &amp;lt;/div&amp;gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1994&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span style=&quot;color:#000080;&quot;&gt;Chpater1 Using the Self-Balancing Robot&lt;/span&gt; =    == 1-1 Control the Motor ==   To keep the robot in vertical balance status, user need to contro...&quot;</title>
		<link rel="alternate" type="text/html" href="http://www.terasic.com.tw/wiki/index.php?title=BAL_Battery_Package_04_User_Guide&amp;diff=1994&amp;oldid=prev"/>
				<updated>2018-07-17T08:37:57Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =    == 1-1 Control the Motor ==   To keep the robot in vertical balance status, user need to contro...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater1 Using the Self-Balancing Robot&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1-1 Control the Motor ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To keep the robot in vertical balance status, user need to control the rotation of the motor and make sure the accelerated rotation direction is reversed to the robot tilt direction. User need to learn how to control the rotation direction and speed of the motor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This section describes how to control the motor forward rotation or reverse, also describes how to control the speed of the motor. As general FPGA IOs of DE10-Nano are unable to drive the motor, an extra motor drive chip or circuit is needed to drive the motors, the motor drive chip used on the robot is Toshiba TB6612FNG, which can be used to control two DC motors simultaneously. As shown in Figure 1-1 , the control signals--- IN1, IN2, PWM (control signals of motor A and B) and STBY are connected to FPGA, the control signals --O1 and O2 output to the motor. The way to control the rotation direction and speed of the motors is described as below.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_1.png|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-1 Block Diagram of Motor Driver Control Function'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Note:''' As there are some photo couplers between the FPGA and TB6612FNG, the logic of control signals output from FPGA should be opposite to the logic described in the TB6612FNG datasheet.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Control Rotation Direction'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table 1-1 lists the TB6612FNG control function.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Table 1-1 TB6612FNG Control Function'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:17.461cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;  align=center style=&amp;quot;background-color:#bfbfbf;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''F&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;PGA Control Output'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;4&amp;quot;  align=center style=&amp;quot;background-color:#bfbfbf;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''Driver &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;Input'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  style=&amp;quot;background-color:#bfbfbf;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;div style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''Driver'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''Output'''&amp;lt;/div&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#bfbfbf;border:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''Mode&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;s&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt; description'''&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''M&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;TRX_P'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''M&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;TRX_N'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''MTR_PWMX'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''M&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;TRX_STBY'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''IN1'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''IN2'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''PWM'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''STBY'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''O1'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left    :0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | '''O2'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#f2f2f2;border:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;'''-&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;-　'''&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1/0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1/0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; |   Short brake&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | CCW&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | Short brake&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | CW&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | Short brake&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;div style=&amp;quot;color:#000000;&amp;quot;&amp;gt;  OFF&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;High Impedance)&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | Stop&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0/1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0/1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;/0&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1/0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1/0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 1/0&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | 0&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | &amp;lt;div style=&amp;quot;color:#000000;&amp;quot;&amp;gt;OFF&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;High Impedance)&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:0.5pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;color:#000000;&amp;quot; | Standby&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;margin-left:0cm;margin-right:0cm;&amp;quot;&amp;gt;Control the logic value for IN1 and IN2 can drive the motor to counterclockwise rotation (IN1 = 0; IN2 = 1) or clockwise rotation (IN1 = 1; IN2 = 0).&amp;amp;nbsp;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;margin-left:0cm;margin-right:0cm;&amp;quot;&amp;gt;The motor will stop rotation when   logics of both the two control signals (IN1 and IN2) are 0.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;margin-left:0cm;margin-right:0cm;&amp;quot;&amp;gt;STBY is equal to Chip Enable function. The motor will stop and wait for new command when STBY logic is 0.&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In summary, user can easily change the motor rotation direction via controlling the IN1 and IN2 logic value.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Control Rotation Speed'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The motor speed of the motors can be controlled by controlling the Duty Cycle of the PWM signal. As shown in Figure 1-2 , the motor speed is faster while the PWM signal Duty Cycle is higher (Which means the ratio of the high logic positive pulse duration to the total pulse period is higher).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_2.png|700px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;  '''Figure 1-2 The diagram of different Duty Cycle'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The maximum PWM frequency that TB6612FNG provides is 100KHz. For the Self-Balancing Robot, the PWM frequency is set as 7.14KHz. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Example &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Description'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Motor control IP TERASIC_DC_MOTOR_PWM.v is provided in the robot demo code. In this demo, it is packed as Qsys component and used to control the right and left motor. User can find the TERASIC_DC_MOTOR_PWM.v file in the robot system CD: Demonstrations\BAL_CAR_Nios_Code\IP\TERASIC_DC_MOTOR_PWM&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''IP Symbol'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-3 shows the symbol of TERASIC_DC_MOTOR_PWM.v and its block diagram. The main outputs are DC_MOTOR_IN1, DC_MOTOR_IN2 and PWM, others are Avalon interface signals. The DC_MOTOR_IN1 and&amp;amp;nbsp;DC_MOTOR_IN2 are the control signals that can control the motor rotation direction and stopping, which has been described in previous section. PWM control signal is responsible for controlling the motor speed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_3.png|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-3 TERASIC_DC_MOTOR_PWM.v symbol and block diagram'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Table 1-2 describes the Register Table of the motor control IP. Base Address 1~0 is the control register of PWM, Base Address 2 is the control register of motor brake control. User can read these registers value through Nios.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;  '''Table 1-2 Register Table for TERASIC_DC_MOTOR_PWM.v IP'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:14.598cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#aeaaaa;border-top:1pt solid #000000;border-bottom:0.5pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;width: 100px&amp;quot; | '''Reg Address'''&lt;br /&gt;
| style=&amp;quot;background-color:#aeaaaa;border-top:1pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | '''Bit Field'''&lt;br /&gt;
| style=&amp;quot;background-color:#aeaaaa;border-top:1pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | '''Type'''&lt;br /&gt;
| style=&amp;quot;background-color:#aeaaaa;border-top:1pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | '''Name'''&lt;br /&gt;
| style=&amp;quot;background-color:#aeaaaa;border-top:1pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Base Addr + 0&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 31:0&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | total_dur&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | PWM total duration value&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Base Addr + 1&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 31:0&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | high_dur&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | PWM high duration value&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;4&amp;quot; style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Base Addr + 2&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 31:3&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | -&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Unused&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Unused bit&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 2&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | motor_fast_decay&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Motor brake control 1 for fast brake0 for short brake &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | motor_forward&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Motor direction control : 1 for forward 0 for backward&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | 0&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | motor_go&lt;br /&gt;
| style=&amp;quot;border-top:none;border-bottom:1pt solid #000000;border-left:0.5pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0cm;padding-left:0.191cm;padding-right:0.191cm;&amp;quot; | Motor enable：1 for start 0 for stop&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''&amp;amp;nbsp;IP Code &amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;D&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;escription'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Control Rotation Direction :'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is Partial code for controlling the rotation direction:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
always @(*)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (motor_fast_decay)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// fast decay&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (motor_go)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (motor_forward)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b1, 1'b0,PWM_OUT}; // forward&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b0, 1'b1,PWM_OUT}; // reverse&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b1, 1'b1,1'b0};&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// slow decay&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (motor_go)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (motor_forward)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b1, 1'b0,PWM_OUT}; // forward&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b0, 1'b1,PWM_OUT}; // reverse&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{DC_MOTOR_IN2, DC_MOTOR_IN1,PWM} &amp;lt;= {1'b0, 1'b0,1'b0};&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The register values of motor control register are related to DC_MOTOR_IN1 and DC_MOTOR_IN2 control signals, then user can control the motor rotation direction. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To drive the motors moving forward, user need set both ''motor_go'' and ''motor_forward'' as “1”. Then the code “&amp;quot;DC_MOTOR_IN2, DC_MOTOR_IN1, PWM} &amp;lt;= {1'b1, 1'b0, PWM_OUT}; // forward&amp;quot; will be executed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DC_MOTOR_IN1 outputs logic 0 and DC_MOTOR_IN2 outputs logic 1. During the logic transmit from FPGA to motor driver IC, they will be inverted to 1 and 0 respectively through the photo coupler. IN1 and IN2 of TB6612FNG will receive logic 1 and 0 respectively. As shown in Table 4-1, in this state, the motor will be clockwise rotation to drive the robot moving forward.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User can set ''motor_fast_decay'' as 1 and ''motor_go'' as 0 if they need a fast braking. Then, the below code will be executed. &lt;br /&gt;
&lt;br /&gt;
DC_MOTOR_IN2, DC_MOTOR_IN1, PWM} &amp;lt;= {1'b1, 1'b1,1'b0};&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the IN1 and IN2 logic will receive logic 0 and logic 0 respectively. As shown in Table 4-1, the motor is stopped. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The right and left motors on the robot are assembled opposite, so their rotation direction is opposite too. As we use the same IP to control both the right and left motor, the control signals in project top level file ( DE10_Nano_Bal.v) are defined opposite, as described in code below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Qsys u0 (&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//clock &amp;amp;&amp;amp; reset&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.clk_clk&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(FPGA_CLK2_50),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// clk.clk）&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.reset_reset_n&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(1'b1),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// reset.reset_n&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//right motor control&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.dc_motor_right_conduit_end_1_pwm&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(MTR_PWMA),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// dc_motor_right_conduit_end_1.pwm&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;&amp;amp;nbsp;.dc_motor_right_conduit_end_1_motor_in1&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;MTRR_P&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.motor_in1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.dc_motor_right_conduit_end_1_motor_in2&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;MTRR_N&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#ff0000;&amp;quot;&amp;gt;),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.motor_in2&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//left motor control&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.dc_motor_left_conduit_end_1_pwm&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(MTR_PWMB),&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;// dc_motor_left_conduit_end_1.pwm&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;&amp;amp;nbsp;.dc_motor_left_conduit_end_1_motor_in1&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;MTRL_N)&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;,&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;//&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.motor_in1&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;.dc_motor_left_conduit_end_1_motor_in2&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;MTRL_P&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0033cc;&amp;quot;&amp;gt;),&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Control Rotation Speed :　'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is partial code for controlling the rotation speed:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
////////////////////////////////////////&lt;br /&gt;
&lt;br /&gt;
// PWM&lt;br /&gt;
&lt;br /&gt;
reg&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;PWM_OUT;&lt;br /&gt;
&lt;br /&gt;
reg&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;[31:0]&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;total_dur;&lt;br /&gt;
&lt;br /&gt;
reg&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;[31:0]&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;high_dur;&lt;br /&gt;
&lt;br /&gt;
reg&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;[31:0]&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;tick;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
always @ (posedge clk or negedge reset_n)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if (~reset_n)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;tick &amp;lt;= 1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else if (tick &amp;gt;= total_dur)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;tick &amp;lt;= 1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;tick &amp;lt;= tick + 1;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
always @ (posedge clk)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;PWM_OUT &amp;lt;= (tick &amp;lt;= high_dur)?1'b1:1'b0;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The'' tick'' register is the main counter, ''total_dur'' represents the total_dur&amp;amp;nbsp;register described in &amp;lt;span style=&amp;quot;color:#666699;&amp;quot;&amp;gt;'''Table 1-2'''&amp;lt;/span&amp;gt;. When the ''tick'' value equals to ''total_dur'' setting value, the whole counter will be reset and recounted. ''PWM_OUT'' represents one PWM cycle is finished. So, the longer the PWM cycle is, the larger the ''total_dur'' value will be. In this demo, the ''total_dur'' register is set to 7000 as default, it is one PWM cycle when the counter counts to 7000. The output PWM frequency is 7.14KHz (50MHz/7000).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As shown in Figure 1- , the motor speed depends on ''high_dur'' register. During one PWM cycle, when the ''tick'' value is less than ''high_dur'', the PWM output is 1; otherwise, the PWM output is 0. So, the PWM Duty Cycle depends on the ''high_dur''. Therefore, the larger the ''high_dur'' value is, the Duty Cycle will be larger and rotation speed will be faster.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_4.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1- The diagram of relationship between total_dur and high_dur in PWM'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 1-2 Detect the Motor speed and Direction ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Section 1.1''' introduces how to control motor speed and direction, this section will introduce how to use the Hall effect sensor and decoder on the motor to detect the motor speed and direction in real time.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Detection Principle'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-5 shows the appearance of motor, there are two Hall effect sensors and one magnetic Rotor on the motor. When the motor rotates, it will drive the magnetic Rotor to pass through the Hall effect sensors, and then, the Hall effect sensor magnetic force will change and generate Hall effect voltage, a digital circuit will process the Hall effect voltage and output square wave pulse (See Figure 1-6 ).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_5.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-5 the Hall effect sensor and magnetic Rotor on a motor'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;color:#4a4a4a;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_6.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-6 Hall effect sensor and the square wave pulse'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#666699;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;T&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;he two Hall effect sensors output two waves in different phases (Phase A and Phase B) as the two sensor locations are different (See Figure 1-5 ). When magnetic Rotor rotates, the first sensed sensor will output wave first, and the other sensor output will delay. That is why the two waves have different phases. So, we can know the motor rotation direction according which sensor wave phase is ahead. Figure 1-7 is the motor clockwise rotation status. In addition, we can also calculate the motor speed according to the pulse number. Over a period of time, the faster the motor rotates, the more pulses it generates.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_7.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-7 Hall effect decoder output A B Phase waves'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-8 shows the motor phase pins connecting to FPGA. We can obtain the motor speed and direction in real time by writing code to just detect the phase and pulse number of the two signals (MTRR_IN_PA, MTRR_IN_PB).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_8.png|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-8 The motor phase pins connect to FPGA'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''E&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;x&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;ample Description'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We do provide a Qsys IP in the Self-Balancing Robot demo for users to obtain the motor speed and direction, the IP can be found in folder:&lt;br /&gt;
&lt;br /&gt;
\Demonstrations\BAL_CAR_Nios_Code\IP\motor_measure\motor_measure.v &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''IP Symbol'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-9 is the symbol and the system block diagram of motor_measure.v. Here we only draw the detecting diagram of the motor on the right, and the motor on the left also has the same module to detect the speed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The module phase_AB[1:0] is used to connect the motor to receive the waves from the Hall effect sensor. The module can detect and obtain the motor speed and direction and save the data in the module register. CPU can read the data from Avalon bus.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_9.png|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-9 The motor_measure.v module and the system block diagram(for the motor on the right)'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Register Table '''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Table 1-3 '''&amp;lt;/span&amp;gt;is the IP register table. The ''Counter'' register in address “Base Addr+0” will counts the motor pulse number. The system can detect how much the motor rotates according to this register, and the positive number means clockwise direction, the negative number means counterclockwise direction. ''Counter'' is read only register, the CPU can only read the Counter value. The ''Counter'' register in address “Base Addr+2” is for write. The ''count_en'' register in address “Base Addr+1” is for controlling the two ''Counter''s. When ''count_en'' is set to 1, the ''Counter'' register will start to count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Table 1-3 motor_measure.v IP Register'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:17.357cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.212cm;&amp;quot; | '''Reg Address'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''&amp;amp;nbsp;Bit Filed'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Type'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Name'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border:0.75pt solid #797979;padding:0.026cm;&amp;quot; | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | Base Addr + 0&amp;amp;nbsp;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 31:16&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Unuse&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | -&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 15:0&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Counter (For Read)&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Read Counter value for Motor output pules&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | Base Addr + 1&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 31:30&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RW&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Unuse&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | -&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 1&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RW&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | count_en&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Enable Motor pulse counter&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | Base Addr + 2&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 31:16&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | WO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Unused&amp;amp;nbsp;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | -&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 15:0&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | WO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Couter (For Write)&amp;amp;nbsp;&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Set Counter vaule&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''IP Code Description'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is a submodule code TERAISC_AB_DECODER.v in motor_measure.v IP, this submodule can detect phase A and phase B signals from the motor, and according the different phases, the submodule can figure out whether the rotation direction is clockwise or counterclockwise. The direction result will output to DO_DIRECT port and the rotation pulse will output to DO_PULSE port. Then these two signal will pass to the motor_measure.v IP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
TERAISC_AB_DECODER u_decoder&lt;br /&gt;
&lt;br /&gt;
(&lt;br /&gt;
&lt;br /&gt;
.DI_SYSCLK(clk),&lt;br /&gt;
&lt;br /&gt;
.DI_PHASE_A(phase_AB[0]),&lt;br /&gt;
&lt;br /&gt;
.DI_PHASE_B(phase_AB[1]), &lt;br /&gt;
&lt;br /&gt;
.DO_PULSE(conter_pulse),&lt;br /&gt;
&lt;br /&gt;
.DO_DIRECT(direction)&lt;br /&gt;
&lt;br /&gt;
);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Please refer to below code list in below, the motor_measure IP has a 16bit ''Counter'' (initial value is 16'h8000) register, which is enabled only if the &amp;quot;''count_en''&amp;quot; register is set to 1. In the beging When the motor rotates clockwise (direction = 1), The ''Counter'' register will count from the initial value and increase by the number of pulses returned from the motor; If the motor rotates counterclockwise, the ''Counter'' register also will decrement with the number of pulses returned by the motor. The system will periodically read the value of this ''Counter'' register to acquire the current number of rotation speed of the motor. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
always @( posedge clk)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
if(s_cs &amp;amp;&amp;amp; s_write &amp;amp;&amp;amp; s_address==`CNT_WRITE)&lt;br /&gt;
&lt;br /&gt;
counter&amp;lt;=s_writedata[15:0];&lt;br /&gt;
&lt;br /&gt;
else if(count_en &amp;amp;&amp;amp; conter_pulse )&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
if(direction)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
if(counter&amp;lt;16'hffff)&lt;br /&gt;
&lt;br /&gt;
counter&amp;lt;=counter+1;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
else if(!direction)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
if(counter&amp;gt;0)&lt;br /&gt;
&lt;br /&gt;
counter&amp;lt;=counter-1;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
&lt;br /&gt;
counter&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Users can refer to the Nios version demo file Motor.cpp (which location is \Demonstrations\BAL_CAR_Nios_Code\software\DE10_Nano_bal) for the steps of system reading counter. During the Self-Balancing Robot system initialization process, the ''count_en'' will be set to 1, after this, the system will read the counter every 10ms. Every time after the reading, the system will set the counter back to the initial value(16'h8000) and wait for the next reading time. The system will use the latest counter value to minus the initial value (16'h8000), the result will be a positive number if the motor direction is clockwise, the result will be a negative number if the motor direction is counterclockwise.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The counter values of the two motors will finally transfer to the balancing PID algorithm.&lt;br /&gt;
&lt;br /&gt;
== 1-3 Get the tilt angle of Robot ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This section describes how to obtain the tilt angle of the Self-Balancing Robot, and how to get an   angularity correction to keep the robot balance. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''How to get the tilt angle of the body'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The idealized state of the balance car is to maintain a vertical 90-degree angle to the ground. However, there are only two wheels support the body, which is more likely to lean forward or backward. It actually exists an angle of θ showing as Figure 1-10 . Our aim is to read out this angle and feed it back to the balance system for controlling the motor rotating in the opposite direction. In this way, it will make the tilt of the Angle to become the ideal 0 degree as a correction.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_10.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-10 The tilted angle of the balance car'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
To    obtain the tilt angle of the body, the Motion Tracking device   MPU-6500 on the    robot will be used. The single-chip MPU-6500 integrates a 3-axis accelerometer, and a 3-axis gyroscope. It is able to read out the acceleration of there-axis (/g) from accelerator, and angular velocity of three axes (/Sec) from the gyroscope. The balance system will use both of these two sensors to compute the tilt angle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First of all, we need to obtain the status of the XYZ coordinates of the MPU-6500 in the robot. From Figure 1-11 , It can be seen if the balance of the car is tilted forward or backward, corresponding changes resulting the acceleration of the X-axis and Y-axis. Meanwhile, the angular velocity of the Y-axis will also change.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_11.png|400px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-11 Status of the XYZ coordinates on the mpu-6500'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Continue to introduce how to calculate the tilt angle of the balance car from the accelerometer. Figure 1-2 , ignore the horizontal acceleration of the car, there is a vertical angle θ when body tilts forward or backward. G is for the acceleration of gravity. Resolve g vector into X and Z directions, gx and gz are coordinate components for X-axis and Z-axis respectively, θ is the tangent angle of gx or gz. Read out the values of gx &amp;amp; gz from the accelerometer in the MPU-6500. Get the degree of angle θ by using the function θ = arctan(gx/gz).&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_12.png|400px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-2 The tilted angle of the self-balance Robot'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Besides, it can also get the body tilted angle from Y-axis angular rate by using the gyroscope in the MPU-6500. See below Figure 1-13 , when the body tilts, the angular rate changes as well. Obtain the angle in Y-axis via doing the integral calculation on the angular rate.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_13.png|400px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-13 The tilted angle of the self-balance Robot'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
There is an error in the angles calculated by the above two methods. When the accelerometer reads the angle, the acquired value error will increase when the outside is disturbed. Use the gyroscope's angular velocity to integrate the acquired angle, due to the integral calculation will accumulate the error, and increase with time, the error will become bigger and bigger. If you use the angle with larger error to balance the system, it will be very difficult to stabilize the robot. Therefore, so a method on Angle error correction is required.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It is common to use Kalman Filter as a method, which adopts the data fusion of two sensors (gyro and accelerometer) to get a more precise angle.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-14 shows the comparison of the original tilt Angle (blue) and the Angle (orange) by Kalman Filter. From the figure, you can see that the change in angle is large different for unfiltered angle (blue). By working with these data, the balance of the car body could not be stable. However, the varying amplitude for the orange Angle after filtering is significantly reduced.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_14.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-14 Comparison chart of the Kalman angle filter'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''MPU-6500 Operation'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
FPGA uses I2C or SPI interface to control the MPU-6500, In our demo, we use the I2C interface to read the register of the MPU-6500 with Salve Address 7'b1011001. The data registers of XYZ axis accelerator and gyroscope locate in the range of 3B(Hex) ~ 48(Hex). It requires the initial operation on starting up. For more details about the MPU-6500 and Register map, please refer to the CD\Datasheet\Sensor\. And refer to the MPU.cpp &amp;amp; MPU.h provided in CD\Demonstrations\BAL_CAR_Nios_Code\software\DE10_Nano_bal\ for control code. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Example Descriptions'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
We provide the Nios II demo for balance car by using the Open-core I2C module in Qsys. This module allows Nios II to access the mpu-6500 through the I2C interface.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The function for obtaining the tilted angle is provided in path: \Demonstrations\BAL_CAR_Nios_Code\software\DE10_Nano_bal\main.cpp, the main codes are as following:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/**************************************************************************&lt;br /&gt;
&lt;br /&gt;
Function : Get Angle value (Kalman filter)&lt;br /&gt;
&lt;br /&gt;
parameter :&lt;br /&gt;
&lt;br /&gt;
return value :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;**************************************************************************/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
void Get_Angle(void)&lt;br /&gt;
&lt;br /&gt;
{&lt;br /&gt;
&lt;br /&gt;
int16_t ax, ay, az, gx, gy, gz;&lt;br /&gt;
&lt;br /&gt;
mpu.getMotion6(&amp;amp;ax, &amp;amp;ay, &amp;amp;az, &amp;amp;gx, &amp;amp;gy, &amp;amp;gz);&lt;br /&gt;
&lt;br /&gt;
Gyro_Balance=-gy;&lt;br /&gt;
&lt;br /&gt;
x_angle=atan2(ax,az)*180/PI;&lt;br /&gt;
&lt;br /&gt;
gy=gy/16.4;&lt;br /&gt;
&lt;br /&gt;
Angle_Balance=kalman.getAngle(x_angle,-gy);&lt;br /&gt;
&lt;br /&gt;
Gyro_Turn=gz;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First, read out the acceleration of X-, Y-, &amp;amp; Z- Axes and angular rate of gyroscope.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''mpu.getMotion6(&amp;amp;ax, &amp;amp;ay, &amp;amp;az, &amp;amp;gx, &amp;amp;gy, &amp;amp;gz);''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Because the polarity of the angular rate read out is opposite to the actual value, it is necessary to do a negative operation.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Gyro_Balance=-gy;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As described above, the tilted angle is obtained by computing the acceleration of X-axis &amp;amp; Y-axis. Use function atan2() to obtain the angle. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''x_angle=atan2(ax,az)*180/PI;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As described above again, we can also get the tiled angle from Y- axis argular rate of gyroscope. However, the read-out value needs to divide by precision. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''gy=gy/16.4;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here, 16.4 is the Sensitivity Scale Factor for the gyroscope. Why use this value are introduced in the following   descriptions. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The data register of the MPU-6500 is a 16-bit register, as the MSB is sign bit, the output range of the data register is -7FFF~7FFF, same as -32767~32767 in decimal format: See the diagram as below, if the full-scale range of ±2000 degrees/sec is selected, that means -32767   corresponding to -2000(°/s) and 32767 is corresponding to 2000(°/s). While reading out the value of   gyroscope as 1000, the corresponding angular rate can be computed as below: 32767/2000 =1000/x; As x = 16.4（°/s），The corresponding   Sensitivity Scale Factor is 16.4 LSB/(°/s) in the manual. It is able to compute the angular rate as the same way if selecting the other ranges. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_15.png|1000px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''Figure 1-15 MPU-6500 datasheet-Gyroscope Specifications'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, send the Angle value obtained from the accelerometer and gyroscope the kalman filter function, to obtain the Angle of the car body with a smaller error.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Angle_Balance=kalman.getAngle(x_angle,-gy);''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When dealing with the turning of the body, the system needs to refer to the angular velocity of the z axis.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Gyro_Turn=gz;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The parameters above will be provided to system for balance PID(Proportional–Integral–Derivative) controlling to feed back the actual condition of the body to achieve a balanced state.&lt;br /&gt;
&lt;br /&gt;
== 1-4 Detect Obstacle Distance ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This section describes how to detect the obstacle distance in front of the robot by using the Ultrasonic module.* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Principle'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As shown in Figure 1-16 , the robot assembled HC-SR04 Ultrasonic module. Besides VCC and GND pin, the module is controlled mainly by TRIG and ECHO signal.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The detection process is described as below:* To start detecting the distance, input High-level logic signal to the TRIG I/O for at least 10us.&lt;br /&gt;
* The Module automatically sends eight 40 kHz and detect where there is pulse signal return.&lt;br /&gt;
* The echo port will automatically output a high-level logic when detecting a rebound signal. The duration of the high-level logic is the timing for the ultrasonic wave to be reflected back to the module after the ultrasonic wave is emitted from the module.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;  [[Image: BAL_04_User_Guide_pic_16.png|300px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-16 Ultrasonic module working diagram'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_17.png|700px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''Figure 1-17 Ultrasonic module working diagram'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Calculate Distance'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Obstacle distance= (high level logic time × Velocity of sound (340m/s) / 2&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The obstacle distance is calculated by the formula above, please note that the distance unit is meter.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_18.jpg|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''Figure 1-18 Ultrasonic Module Timing Diagram'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Demonstration Description'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The demo provides Qsys IP which can read the   obstacle distance from the Ultrasonic module, it’s located in \Demonstrations\BAL_CAR_Nios_Code\IP\sonic_distance\sonic_distance.v &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''IP symbol'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As shown in Figure 1-19 , the IP controls the TRIG pin, drives the module to start to detect obstacle, monitors whether there is reflection signal on ECHO pin and calculate the duration of the high level logic signal, then CPU will can read the data.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_19.png|800px]] &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-19 The IP symbol and block diagram'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Register Table'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table 1-4 shows the register table of the IP. measure_value register stores the ultrasonic transmission time that the module detects the obstacle distance each time. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''&amp;amp;nbsp;  Table 1-4 &amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;R&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#000000;&amp;quot;&amp;gt;egister table of the IP'''&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:14.727cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.212cm;&amp;quot; | '''Reg Address'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Bit Filed'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Type'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Name'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border:0.75pt solid #797979;padding:0.026cm;&amp;quot; | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | Base Addr + 0&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | 31:22&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Unuse&lt;br /&gt;
| style=&amp;quot;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | --&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.212cm;&amp;quot; | 21:0&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | measure_value&lt;br /&gt;
| style=&amp;quot;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Sonic wave propagation time&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''IP Code Description'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The IP is consisted of a State Machine and below is the code:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
always @(posedge av_mm_clk or negedge count_rst)&lt;br /&gt;
&lt;br /&gt;
if(~count_rst)&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;measure_count&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;trig_count&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;case(state)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3'd0:begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;sonic_trigger&amp;lt;=1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3'd1:begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if(trig_count==2000)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;sonic_trigger&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=2;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;trig_count&amp;lt;=trig_count+1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3'd2:begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if(!reg_echo&amp;amp;sonic_echo)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=3;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=2;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3'd3:begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;if(reg_echo&amp;amp;!sonic_echo)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=4;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;else&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=3;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;measure_count&amp;lt;=measure_count+1;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;end&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;3'd4:begin&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;state&amp;lt;=state;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; end&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;endcase&lt;br /&gt;
&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-20 is the state diagram of the State Machine in the IP. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; [[Image: BAL_04_User_Guide_pic_20.png|800px]] &amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;  '''Figure 1- State Diagram of the State Machine'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
When the FPGA is running, this IP will operate independently and the state machine will go to State 0. The IP include a counter to avoid the State Machine blocks in a state, the counter will accumulate continually until 22'h3fffff then trigger count_rst=0, the State Machine will be reset. Below is the code:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
always @(posedge av_mm_clk or negedge av_mm_rst)&lt;br /&gt;
&lt;br /&gt;
if(~av_mm_rst)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;counter&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
else if(counter==22'h3fffff)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;counter&amp;lt;=0;&lt;br /&gt;
&lt;br /&gt;
else counter&amp;lt;=counter+1;&lt;br /&gt;
&lt;br /&gt;
wire count_rst=(counter==22'h3fffff)?0:1;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Below is the description for each state.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''State 0:''' Set the output of TRIG pin to high level logic signal and the state machine goes to State 1.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''State 1:''' In State 1, the counter ''trig_count'' starts to accumulate until counter achieves 2000. Since, the system clock is 50MHz. Thus, the accumulation time is 10us, so the request for pulling the TRIG to logic high for 10us is complete. Then, pulls the TRIG signal to low and goes to State 2.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''State 2:''' Monitor whether the ECHO signal has rising edge state. If it has, the state machine goes to State 3, or the state machine is stay in State 2 until ''count_rst'' achieves 0, then the State machine is reset.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''State 3:''' Calculate the ultrasonic reflection time by using the ''measure_count'', the state machine goes to State 4 when ECHO pin signal has falling edge.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''State 4:''' idle state, waiting for ''count_rst'' achieve 0, reset the state machine and begin to next detection.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Software Code'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
After adding this IP to Qsys, Nios CPU can read the ultrasonic transmission and reflection time from measure_value register of the IP. Then calculate the obstacle distance by the formula, the Nios code in \Demonstrations\BAL_CAR_Nios_Code\software\DE10_Nano_bal\main.cpp is shown below and for designers’ reference:&lt;br /&gt;
&lt;br /&gt;
'' data = IORD(SONIC_DISTANCE_0_BASE,0x00);''&lt;br /&gt;
&lt;br /&gt;
''&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; distance = ('''float''')data*34.0/100000.0;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Note:''' As described in previous, the system clock in the IP is 50MHz and the distance unit is centimeter, apply to the formula, it is data&amp;amp;nbsp;* 340 * 100 / (2 * 50 * 1000000) = data*34.0/100000.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;margin-left:2.501cm;margin-right:0cm;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 1-5 Balanced System ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This section will introduce   balancing system control of the self-balancing robot. This section describes how a robot can maintain its uprightness, speed, and state of turn and how it is controlled.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As described in the previous sections, the tilt-angle measurement and rotation-angle measurement of the robot are implemented by using the MPU-6500 to measure acceleration and gyroscope. The motor rotation speed of the robot is implemented by the Hall sensor of the motor. The obstacle avoidance function is implemented by the ultrasonic sensor measurement. These measured values are used as the feedback values for   vertical control, rotation angle control and velocity control, respectively.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The status control of the robot introduces the concept of PID (Proportional–Integral–Derivative) controller, the robot uses PD (  Proportional Derivative) or PI ( Proportional Integral) to control the balancing status, which are used for vertical angle control, rotation angle control and velocity control, respectively. As these three controls are closed loop controls, they are also called as '''balance loop''', '''turn loop''' and '''speed loop''', respectively.   The balance loop is controlled by PD controller, the velocity loop is controlled by PI    controller, and the turn loop is controlled by PD controller.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''balance loop''' is controlled by PD controller, this is because the robot needs to respond quickly to the robot’s angle changing, and the derivative control just meets this requirement. The control value of P is tilt angle of the robot (the angle offset that is relative to balance status). The control value of D is the motor axial gyroscope. This loop corresponds to the ''int balance(float Angle,float Gyro)'' function in the software of our demo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''speed loop''' is controlled by PI controller, which is the most commonly used control method for velocity control. PI controller is a linear control method. The deviation is formed according to the given value and the actual output value, then the Proportional (P) and Integral (I) of the deviation are composed of the control value by the linear combination, then the velocity can be controlled. The control value of P is velocity deviation, the control value of I is  displacement. This loop corresponds to the'' int velocity (void)'' function in the software of our demo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The '''turn loop''' is a simple control. In our demo, the turn value is measured by MPU-6500 Z-axis gyroscope and the difference of two speed encoders, which is used for D and P control value, respectively, so the rotation angle can be controlled by PD controller to ensure the angle keep the set value, and the response velocity of the robot can be improved by z-axis gyroscope control. This loop corresponds to the ''int turn(float Gyro)'' function in the software of our demo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The block diagram of the three loops integrated function is shown in Figure 1-21 .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_21.jpg|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-21 PID closed-loop Control with Angle, Speed and Turn of the Robot'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Note:''' The PID parameters of the balance loop, velocity loop and turn loop have polarity, so the feedback must be formed positive feedback to become the closed loop control which is  advantageous to the robot balance.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The corresponding codes are ''Encoder_Integral=Encoder_Integral-Movement;'' in the ''int velocity(void)'' function and ''Bias+=110;'' and ''Bias-=110; ''in the int turn(float Gyro) function. When the Bluetooth and IR send control commands, the   velocity loop and turn loop start working. The robot does a linear motion at a set speed, and rotates at a set angular speed.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The status of the robot needs to be sampling controlled at regular intervals. In our demo, the interval time is 10ms. The sampling control of the angle, velocity and rotation angle can be implemented by executing the interrupt function void ''MPU_INT_ISR(void * contex, alt_u32 id)''. Meanwhile, the while function in the main code is used for polling the Bluetooth/IR control signal, ultrasonic detection obstacle distance (for obstacle avoidance) signal and power monitoring signal. &lt;br /&gt;
&lt;br /&gt;
The main routine flow chart is shown in Figure 1-22 .&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_22.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;   '''Figure 1-22 Main Routine FLOW Chart'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== 1-6 Use the Bluetooth ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This section introduces how to use the ESP32 module on the Self-balancing robot for Bluetooth connection. It enable the user to communicate the ESP32 with mobile phone via Bluetooth, and transfer the serial port protocol to FPGA for the moving control.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ESP32 is a powerful Bluetooth+WiFi module. It is easily developed. The Factory code in the ESP32 module has been written with ID Number of the Self-balancing robot, so it is able to accept the control command from mobile phone APP via Bluetooth connection.&amp;amp;nbsp;Besides it, there are also many other expandable functions such as I2C, WiFi and SPI data transmission, etc. However, in the robot, only the   Bluetooth part is currently used, so only Bluetooth part is introduced.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Example Descriptions'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-23 is for the system architecture of Self-balancing robot using the ESP32. When the ESP32 receives the string command from the app via the Bluetooth protocol, it will be transferred to the UART interface and pass to the UART IP of the QSYS within the FPGA. In this way, the NIOS CPU can easily read the value of the data register in the IP, and then compare it with the defined instruction to get an effective instruction and control the movement of the robot.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In the Quartus project of the demonstration, a PIO module is reserved in the Qsys system which is used for communicating the ESP32 module with FPGA I/O. It can be ignored as it not being used in the demo.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_23.png|800px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-23 The Block Diagram of the communication between EPS32 and FPGA'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The UART IP is a Qsys built-in component, which user guide is available in: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;Quartus install path&amp;gt;\&amp;lt;Quartus version ex: 16.1 &amp;gt;\ip\altera\university_program\communication\altera_up_avalon_rs232\doc\  RS232.pdf.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The settings for the UART IP is as Figure 1-24 , Baud Rate set as115200.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_24.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-24 Qsys uart IP Settings'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
As shown in Table 1-5 , the UART IP contains two registers: Data Register &amp;amp; Control Register. The read and write FIFOs are accessed via the data register. The Data transmitted via bluetooth will be stored here. RS232 UART Core’s interrupt generation and read-status information are controlled by the Control register. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Table 1-5 RS232 UART Core register map'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:16.159cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | '''Offset in bytes'''&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''Register'''&lt;br /&gt;
&lt;br /&gt;
'''Name'''&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''R/W'''&lt;br /&gt;
| colspan=&amp;quot;13&amp;quot;  align=center style=&amp;quot;background-color:#979797;border:0.5pt solid #000000;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''Bit description'''&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''3&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;1..24'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''2&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;3..16'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;5'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;4..11'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;0'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''9'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''8'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''7'''&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;..2'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''1'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | '''0'''&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | 0&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | data&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | RW&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;color:#00b050;&amp;quot; |   ''(1)''&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | RAVAIL&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | RVALID&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;color:#00b050;&amp;quot; | ''(1)''&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | PE&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;2)''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;2)''&amp;lt;/span&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;5&amp;quot;  align=center style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | DATA&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | 4&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | control&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | RW&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;color:#00b050;&amp;quot; | ''(1)''&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | WSPACE&lt;br /&gt;
| colspan=&amp;quot;3&amp;quot;  align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;color:#00b050;&amp;quot; | ''(1)''&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | WI&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | RI&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''(&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;1)''&amp;lt;/span&amp;gt;&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | WE&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | RE&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Notes on Table 1-5&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''(1) Reserved. Read values are undefined. Write zero.''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''(2) These bits may or may not exist, depending on the specified DataWidth.''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#00b050;&amp;quot;&amp;gt;''If they do not exist, they read zero and writing has no effect.''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Table 1-6 shows the Data Register format, the bit 8~0 are for the data transferring, bit 23~16 are for indicating the number of characters remaining in the read FIFO. We can know the data transmission completed or not via bit 23~16.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Table 1-6 Data register bits'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:15.87cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | '''Bit number'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''Bit/Filed Name'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''Read/Write'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | 8..0&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | DATA&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | R/W&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | The value to transfer to/from the RS232 UART Core. When writing, the DATA field is a character to be written to the write FIFO. When reading, the DATA field is a character read from the read FIFO.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | 9&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | PE&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | R&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | Indicates whether the DATA field had a parity&lt;br /&gt;
&lt;br /&gt;
error.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | 15&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | RVALID&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | R&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | Indicates whether the DATA and PE fields&lt;br /&gt;
&lt;br /&gt;
contain valid data.&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | 23..16&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | RVAIL&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | R&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | The number of characters remaining in the&lt;br /&gt;
&lt;br /&gt;
read FIFO (including this read).&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The following will introduce how to use Nios to read the data transmitted by ESP32 and convert it to control commands. In the main.cpp (path:\BAL_CAR_Nios_Code\software\DE10_Nano_bal), the codes for Bluetooth controlling as below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Bluetooth&amp;lt;/u&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;control&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;temp=IORD(UART_BT_BASE,0x00);&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;number=temp&amp;gt;&amp;gt;16;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(number!=0)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;szData[i]=temp&amp;amp;0xff;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;i++;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;((temp&amp;amp;0xff)==0x0a)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;i=0;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(CommandParsing(szData, &amp;amp;Command_EPS32, &amp;amp;Param)){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''switch'''&amp;lt;/span&amp;gt;(Command_EPS32){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_FOWARD''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Forward&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(cmd_ut){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(distance&amp;gt;15.0){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x01;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;flag=0x01;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnFORWARD();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''else'''&amp;lt;/span&amp;gt;{&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x01;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;flag=0x00;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnFORWARD();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_BACKWARD''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Backward&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x02;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnBACKWARD();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_LEFT''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Left&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x04;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnLEFT();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_RIGHT''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Right&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x08;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnRIGHT();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_STOP''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Stop&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x00;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Pause();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
First, read the receiving data register (Receiving data register offset address is 0)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''temp=IORD(UART_BT_BASE,0x00);''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The data width for receiving data register is 32 bits. However, when the command comes from the Bluetooth, the UART IP only transmit the 8 bits data at one time, so the full instruction needs to be received multiple times. You can know how many characters have not yet been read via checking the register data bit 23~16,&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''number=temp&amp;gt;&amp;gt;16;''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If the read data number is not 0, that is, the data is valid. Take the last 8 bits into the array, and then receive the next 8 bits cyclically, when the received data is 0x0a (which is defined as end of transmission character). When transferring a control command completed on the mobile app, it will send out this value for data sending finished, Next to the command comparision, all commands from the bluetooth are definded in the command.h.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;* Command.h&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*/&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#7b003d;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;#ifndef&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt; COMMAND_H_&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#7b003d;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;#define&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt; COMMAND_H_&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#7b003d;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;#include&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt; &amp;quot;terasic_includes.h&amp;quot;&lt;br /&gt;
&lt;br /&gt;
typedef enum{&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_FOWARD=1,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_BACKWARD,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_LEFT,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_RIGHT,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_STOP,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_AKBT,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_ATDM,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_ATUTON,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#2d4fc9;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;CMD_ATUTOFF,&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
}COMMAND_ID;&lt;br /&gt;
&lt;br /&gt;
typedef struct{&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;char szCommand[10];&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;int CommandId;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;bool bParameter;&lt;br /&gt;
&lt;br /&gt;
}COMMAND_INFO;&lt;br /&gt;
&lt;br /&gt;
COMMAND_INFO gCommandList[] = {&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATFW&amp;quot;, CMD_FOWARD, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATBW&amp;quot;, CMD_BACKWARD, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATTL&amp;quot;, CMD_LEFT, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATTR&amp;quot;, CMD_RIGHT, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATST&amp;quot;, CMD_STOP, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATAB&amp;quot;, CMD_AKBT, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATDM&amp;quot;, CMD_ATDM, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATUTON&amp;quot;, CMD_ATUTON, false},&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;{&amp;quot;ATUTOFF&amp;quot;, CMD_ATUTOFF, false},&lt;br /&gt;
&lt;br /&gt;
};&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;#endif /* COMMAND_H_ */&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Compare the command character from ESP32 with the definition in the command.h, it is able to parse the command. The source codes in main.cpp are as below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;/**************************************************************************&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;amp;nbsp;Function&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; :&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Bluetooth&amp;lt;/u&amp;gt;&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;Command Parsing&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;amp;nbsp;parameter&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp; : Command 、Command ID&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;amp;nbsp;return value : Command Parsing data&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;amp;nbsp;**************************************************************************/&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''bool'''&amp;lt;/span&amp;gt; '''CommandParsing'''(&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''char'''&amp;lt;/span&amp;gt; *pCommand, &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''int'''&amp;lt;/span&amp;gt; *pCommandID, &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''int'''&amp;lt;/span&amp;gt; *pParam){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''bool'''&amp;lt;/span&amp;gt; bFind = &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''int'''&amp;lt;/span&amp;gt; nNum, i, j , x=0;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''bool'''&amp;lt;/span&amp;gt; find_equal = &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''char'''&amp;lt;/span&amp;gt; Data[10]={0};&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;nNum&lt;br /&gt;
&lt;br /&gt;
'''sizeof'''(gCommandList)/&amp;lt;span style=&lt;br /&gt;
&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''sizeof'''&amp;lt;/span&amp;gt;(gCommandList[0]);&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''for'''&amp;lt;/span&amp;gt;(i=0;i&amp;lt;nNum &amp;amp;&amp;amp; !bFind;i++){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt; (&amp;lt;span style=&amp;quot;color:#642880;&amp;quot;&amp;gt;'''strncmp'''&amp;lt;/span&amp;gt;(pCommand, gCommandList[i].&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;szCommand&amp;lt;/span&amp;gt;, &amp;lt;span style=&amp;quot;color:#642880;&amp;quot;&amp;gt;'''strlen'''&amp;lt;/span&amp;gt;(gCommandList[i].&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;szCommand&amp;lt;/span&amp;gt;)) == 0){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;*pCommandID = gCommandList[i].&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;CommandId&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt; (gCommandList[i].&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;bParameter&amp;lt;/span&amp;gt;){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//*pParam = 10; //??&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//for(j=0;pCommand[j]!=0x0a;j++){&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''for'''&amp;lt;/span&amp;gt;(j=0;pCommand[j]!=0x0d;j++){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(find_equal==&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''true'''&amp;lt;/span&amp;gt;){&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Data[x] = pCommand[j];&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;x++;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''else'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;(pCommand[j]==&amp;lt;span style=&amp;quot;color:#2a00ff;&amp;quot;&amp;gt;'='&amp;lt;/span&amp;gt;)&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;find_equal=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''true'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;*pParam=&amp;lt;span style=&amp;quot;color:#642880;&amp;quot;&amp;gt;'''atoi'''&amp;lt;/span&amp;gt;(Data);&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;bFind = &amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''true'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;} &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;// if&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;} &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;// for&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''return'''&amp;lt;/span&amp;gt; bFind;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Finally, the control command is converted to the corresponding function for the Self-balancing robot controlling. For example, the &amp;quot;Backward&amp;quot; command processing in below:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''CMD_BACKWARD''&amp;lt;/span&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp; &amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Backward&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;led3=0x02;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;demo=&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;Car.Set_TurnBACKWARD();&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== 1-7 Using the IR Controller ==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
In addition to using the mobile phone app to control the robot via the Bluetooth, using an infrared remote control is also a simple and convenient option.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The infrared remote controller included with the kit package is an infrared remote controller that uses the NEC protocol. It uses 38K HZ frequency modulation to emit control signals to the infrared receiver on the robot. The FPGA decoder IP will decode the signal to control the robot motion.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Infrared Remote Controller Protocols'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The NEC format composes of a Leader Code, a 16-bit Custom Code, and a 8-bit Key Code. The Leader Code is transmitted first, which contains 9ms carrier frequency and 4.5ms zero signal, then followed by 16-bit Client Code, 8-bit Key Code and 8-bit Inversed Key Code, which is the reverse value of the Key Code, the robot IR receiver can use the Inversed Key Code to verify the Key Code. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The logic is judged through different time lengths, 560us carrier frequency plus 1690us 0 signal represents the transmission of logic 1, 560us carrier frequency plus 560us 0 signal represents logic 0.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_25.png|900px]]&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''Figure 1-25 NEC protocol leader &amp;amp; length variable block'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The IR receiver on the balanced car can decode the carrier frequency of 38 kHz and reverse the received signal. Therefore, it should be noted that the signal processed in the FPGA will be opposite to that of the transmitter, as shown in Figure 1-25 .&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_26.png|900px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-26 The signal received by IR receiver '''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Self-Balancing Robot motion key definition and Key Code '''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See Figure 1- for IR controller’s function and key and its corresponding Inversed Key Code, Key Code and Custom Code are shown in &amp;lt;span style=&amp;quot;color:#666699;&amp;quot;&amp;gt;'''Table 1-7.'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_27.png|300px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-27 IR controller key function'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;'''Table 1-7 Key code information for each Key on remote controller'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:15.87cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  rowspan=&amp;quot;2&amp;quot; align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;width: 100px;&amp;quot; | '''IR Controller key'''&lt;br /&gt;
|  colspan=&amp;quot;2&amp;quot;  align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''Custom Code'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''Key code'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | '''Inversed Key Code'''&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''D[3:0]'''&amp;lt;/span&amp;gt; &amp;lt;span style=&amp;quot;background-color:#979797;&amp;quot;&amp;gt;'''D[7:4]'''&amp;lt;/span&amp;gt;&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | '''D[11:8] D[15:12]'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | '''D[19:16] D[23:20]'''&lt;br /&gt;
| align=center style=&amp;quot;background-color:#979797;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | '''D[27:24] D[31:28]'''&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_28.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;color:#4a4a4a;&amp;quot; | 0F&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_29.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;3&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;C&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_30.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_31.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_32.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_33.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;2&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;D&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_34.jpg|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;3&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;C&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_35.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_36.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;5&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;A&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_37.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;9&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_38.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;7&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_39.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;7&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_40.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;9&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_41.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;2&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;D&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_42.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;A&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;5&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_43.png|250px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_44.png|200px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;4&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_45.png|200px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_46.png|80px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;C&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;0&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;3&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;F&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_47.png|80px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| align=center style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | [[Image: BAL_04_User_Guide_pic_48.png|80px]]&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;8&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;B&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #000000;border-bottom:0.5pt solid #000000;border-left:0.5pt solid #000000;border-right:none;padding:0.212cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;6&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;1&amp;lt;/span&amp;gt;&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #000000;padding:0.026cm;&amp;quot; | &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;9&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;E&amp;lt;/span&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;div style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Example Descriptions'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We provide an IR control decoder IP in the Self-Balancing Robot demonstrations folder, which location is \Demonstrations\BAL_CAR_Nios_Code\IP\TERASIC_IRM\TERASIC_IRM.v.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Figure 1-28 is the block diagram of FPGA using TERASIC_IRM.v to decode IR control signal. The IR receiver receives signal and send the signal to this IP, this IP provides Avalon interface,&amp;amp;nbsp;a submodule irda_receive_terasic.v will do the decoding work. The decoded Custom Code and Key Code information will be sent to TERASIC_IRM. V and stored in the register. At the same time, an interrupt signal is sent to the CPU and the Nios CPU will read the key value that has just been decoded. The register format is shown as Table 1-8 :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;[[Image: BAL_04_User_Guide_pic_49.png|500px]]&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Figure 1-28 &amp;lt;span style=&amp;quot;color:#333333;&amp;quot;&amp;gt;&amp;amp;nbsp;Block diagram of using TERASIC_IRM.v to decode IR signal&amp;amp;nbsp;'''&amp;lt;/span&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt; '''Table 1-8 Register Format'''&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; style=&amp;quot;border-spacing:0;width:14.649cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.212cm;&amp;quot; | '''Reg Address'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''&amp;amp;nbsp;Bit Filed'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Type'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border-top:0.75pt solid #797979;border-bottom:0.75pt solid #797979;border-left:0.75pt solid #797979;border-right:none;padding:0.026cm;&amp;quot; | '''Name'''&lt;br /&gt;
| style=&amp;quot;background-color:#979797;border:0.75pt solid #797979;padding:0.026cm;&amp;quot; | '''Description'''&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Base Addr + 0&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | 31:24&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Inversed Key Code&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Inversed Key Code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | 24:16&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Key Code&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Key Code&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | 15:0&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | RO&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border-top:0.75pt solid #cccccc;border-bottom:0.75pt solid #cccccc;border-left:0.75pt solid #cccccc;border-right:none;padding:0.026cm;&amp;quot; | Custom Code&lt;br /&gt;
| style=&amp;quot;background-color:#ffffff;border:0.75pt solid #cccccc;padding:0.026cm;&amp;quot; | Custom Code: &amp;amp;nbsp;16'h6b86&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If pressing IR controller key “2”, the register value will be 32'hfd026b86, the &amp;quot;6b86&amp;quot; is Custom Code,&amp;amp;nbsp;the &amp;quot;02&amp;quot; is Key Code, the “fd” is Inversed Key Code, which is the reversed value of “02”. After the Nios CPU receives IR interrupt signal, the Nios CPU will read the register value and compare it with the defined code table, and then, judge the meaning of the instruction.&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;IR controller key codes(32bits) are defined in the file &amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;IrRx.h&amp;lt;/span&amp;gt;, as followed code lines: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''typedef'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''enum'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;{&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_POWER''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xed126b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_CH_UP''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;=&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe51a6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_CH_DOWN''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe11e6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_VOL_UP''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe41b6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_VOL_DOWN''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe01f6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_MUTE''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf30c6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_ADJ_LEFT''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xeb146b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_ADJ_RIGHT''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe7186b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_PLAY_PAUSE''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= 0xe9166b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_0''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xff006b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_1''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xfe016b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_2''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xfd026b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_3''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xfc036b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_4''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xfb046b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_5''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xfa056b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_6''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf9066b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_7''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf8076b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_8''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf7086b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_9''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf6096b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_A''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xf00f6b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_B''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xec136b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_C''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xef106b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_RETURN''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xe8176b86,&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_MENU''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;= &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;0xee116b86&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;};&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;amp;nbsp;In main.cpp file, there are code lines for detecting IR: &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;// IR Remote control&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;(!IR.IsEmpty()){&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Command_IR = IR.Pop();&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Command_IR = IORD(IR_RX_BASE,0x00);&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;&amp;lt;u&amp;gt;printf&amp;lt;/u&amp;gt;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;(&amp;quot;0000h\r\n&amp;quot;,&amp;amp;nbsp; Command_IR);&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''switch'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;(Command_IR){&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#005032;&amp;quot;&amp;gt;CIrRx&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;::&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_5''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Stop&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x00;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Pause();&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''case'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#005032;&amp;quot;&amp;gt;CIrRx&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;::&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#0000c0;&amp;quot;&amp;gt;''IR_NUM_2''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;:&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#3f7f5f;&amp;quot;&amp;gt;//Forward&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;(mode==0x02){&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''if'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;(distance&amp;gt;15.0){&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x01;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;flag=0x02;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnFORWARD();&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''else'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;{&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;led3=0x01;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;flag=0x00;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;demo=&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''false'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;Car.Set_TurnFORWARD();&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;}&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#7f0055;&amp;quot;&amp;gt;'''break'''&amp;lt;/span&amp;gt;&amp;lt;span style=&amp;quot;color:#4a4a4a;&amp;quot;&amp;gt;&amp;lt;nowiki&amp;gt;;&amp;lt;/nowiki&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Using IR.IsEmpty to detect&amp;amp;nbsp;whether IR data is received or not, using IR.Pop to read register DATA_BUF value, and compare it with the defined code table, and then, judge the meaning of the instruction and control the Self-Balancing Robot moving forward or backward. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;div style=&amp;quot;text-align:center;&amp;quot;&amp;gt;&amp;lt;/div&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;Chpater2 Additional Information&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;color:#000080;&amp;quot;&amp;gt;'''Getting Help'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Here is the contact information where you can get help if you encounter problems:&lt;br /&gt;
*Terasic Inc.9F, No.176, Sec.2, Gongdao 5th Rd, East Dist, Hsinchu City, Taiwan 300-70&lt;br /&gt;
*Email&amp;amp;nbsp;: [mailto:support@terasic.com support@terasic.com]&lt;br /&gt;
*Web&amp;amp;nbsp;: [http://www.terasic.com/ www.terasic.com]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Revision History&lt;br /&gt;
&lt;br /&gt;
{|style=&amp;quot;border-spacing:0;width:13.781cm;&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | '''Date'''&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | '''Version'''&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | '''Changes'''&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | '''2018.03.16'''&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | '''First publication'''&lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;color:#ff0000;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border-top:0.5pt solid #999999;border-bottom:0.5pt solid #999999;border-left:0.5pt solid #999999;border-right:none;padding:0cm;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;border:0.5pt solid #999999;padding:0cm;&amp;quot; | &lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>