<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://rtime.felk.cvut.cz/hw/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jenkicar</id>
	<title>HW wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://rtime.felk.cvut.cz/hw/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jenkicar"/>
	<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php/Special:Contributions/Jenkicar"/>
	<updated>2026-05-18T10:47:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4084</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4084"/>
		<updated>2013-04-25T15:53:06Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* CCS5 in Ubuntu 12.04 65bits */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux).&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for Windows only, but also runs quite well in Wine).&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]]&lt;br /&gt;
&lt;br /&gt;
=== CCS5 in Ubuntu 12.04 65bits ===&lt;br /&gt;
&lt;br /&gt;
After installation the application can be run with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cd &amp;lt;install_dir&amp;gt;/ccsv5/eclipse/&lt;br /&gt;
&lt;br /&gt;
./ccstudio&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application fails to start is because CCS5 is a 32bits application a thus requires 32bits libraries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo apt-get install libgtk2.0-0:i386 libxtst6:i386&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application crashes with a segmentation fault do:&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;&amp;lt;install_dir&amp;gt;/ccsv5/eclipse/plugins/com.ti.ccstudio.branding_&amp;lt;your version number&amp;gt;/plugin_customization.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And change key &amp;lt;code&amp;gt;org.eclipse.ui/showIntro&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Choose &amp;quot;FREE License - for use with XDS100 JTAG Emulators&amp;quot; on the licensing options.&lt;br /&gt;
&lt;br /&gt;
You may create a symbolic link and a desktop entry:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo ln -s &amp;lt;install_dir&amp;gt;/ccsv5/eclipse/ccstudio /usr/local/bin/ccstudio&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And put in &amp;lt;code&amp;gt;~/.local/share/applications/ccs5.desktop&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
[Desktop Entry]&lt;br /&gt;
Version=1.0&lt;br /&gt;
Type=Application&lt;br /&gt;
Terminal=false&lt;br /&gt;
Exec=ccstudio&lt;br /&gt;
Name=Code Composer Studio&lt;br /&gt;
Icon=/usr/local/ti/ccsv5/eclipse/icon.xpm&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default the device (if nothing more connected then &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt;) is added with permissions 664 with &lt;br /&gt;
&amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need write access for current user. To do so we need &lt;br /&gt;
to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;br /&gt;
&lt;br /&gt;
== RS232 communication setup ==&lt;br /&gt;
&lt;br /&gt;
Connect serial communication pins to computer&#039;s RS232 port or to USB through a FTDI adapter. If using RS232 port the&lt;br /&gt;
device should be &amp;lt;code&amp;gt;/dev/ttyS0&amp;lt;/code&amp;gt;, if using FTDI it should be something like &amp;lt;code&amp;gt;/dev/ttyUSBx&amp;lt;/code&amp;gt; &lt;br /&gt;
(check &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; for details).&lt;br /&gt;
&lt;br /&gt;
Make sure minicom or similar terminal program is installed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install minicom&lt;br /&gt;
&lt;br /&gt;
Then configure minicon:&lt;br /&gt;
&lt;br /&gt;
 sudo minicom -s&lt;br /&gt;
&lt;br /&gt;
And use the following configuration &amp;quot;9600 81N&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 Serial Device         : /dev/ttyS0&lt;br /&gt;
 Lockfile Location     : /var/lock&lt;br /&gt;
 Callin Program        :&lt;br /&gt;
 Callout Program       :&lt;br /&gt;
 Bps/Par/Bits          : 9600 8N1&lt;br /&gt;
 Hardware Flow Control : No&lt;br /&gt;
 Software Flow Control : No&lt;br /&gt;
&lt;br /&gt;
Start terminal session and type &amp;lt;code&amp;gt;HELP&amp;lt;/code&amp;gt; command to test communication.&lt;br /&gt;
&lt;br /&gt;
== Contacts ==&lt;br /&gt;
&lt;br /&gt;
* Management: [http://dce.felk.cvut.cz/hanzalek/ Prof. Zdeněk Hanzálek]&lt;br /&gt;
* Technical: [http://cmp.felk.cvut.cz/~pisa/ Pavel Píša, Ph.D.]&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4083</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4083"/>
		<updated>2013-04-25T15:41:58Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* Installing CCS5 in Ubuntu 12.04 65bits */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux).&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for Windows only, but also runs quite well in Wine).&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]]&lt;br /&gt;
&lt;br /&gt;
=== CCS5 in Ubuntu 12.04 65bits ===&lt;br /&gt;
&lt;br /&gt;
After installation the application can be run with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cd &amp;lt;install_dir&amp;gt;/ccsv5/eclipse/&lt;br /&gt;
&lt;br /&gt;
./ccstudio&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application fails to start is because CCS5 is a 32bits application a thus requires 32bits libraries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo apt-get install libgtk2.0-0:i386 libxtst6:i386&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application crashes with a segmentation fault do:&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;&amp;lt;install_dir&amp;gt;/ccsv5/eclipse/plugins/com.ti.ccstudio.branding_&amp;lt;your version number&amp;gt;/plugin_customization.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And change key &amp;lt;code&amp;gt;org.eclipse.ui/showIntro&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Choose &amp;quot;FREE License - for use with XDS100 JTAG Emulators&amp;quot; on the licensing options.&lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default the device (if nothing more connected then &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt;) is added with permissions 664 with &lt;br /&gt;
&amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need write access for current user. To do so we need &lt;br /&gt;
to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;br /&gt;
&lt;br /&gt;
== RS232 communication setup ==&lt;br /&gt;
&lt;br /&gt;
Connect serial communication pins to computer&#039;s RS232 port or to USB through a FTDI adapter. If using RS232 port the&lt;br /&gt;
device should be &amp;lt;code&amp;gt;/dev/ttyS0&amp;lt;/code&amp;gt;, if using FTDI it should be something like &amp;lt;code&amp;gt;/dev/ttyUSBx&amp;lt;/code&amp;gt; &lt;br /&gt;
(check &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; for details).&lt;br /&gt;
&lt;br /&gt;
Make sure minicom or similar terminal program is installed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install minicom&lt;br /&gt;
&lt;br /&gt;
Then configure minicon:&lt;br /&gt;
&lt;br /&gt;
 sudo minicom -s&lt;br /&gt;
&lt;br /&gt;
And use the following configuration &amp;quot;9600 81N&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 Serial Device         : /dev/ttyS0&lt;br /&gt;
 Lockfile Location     : /var/lock&lt;br /&gt;
 Callin Program        :&lt;br /&gt;
 Callout Program       :&lt;br /&gt;
 Bps/Par/Bits          : 9600 8N1&lt;br /&gt;
 Hardware Flow Control : No&lt;br /&gt;
 Software Flow Control : No&lt;br /&gt;
&lt;br /&gt;
Start terminal session and type &amp;lt;code&amp;gt;HELP&amp;lt;/code&amp;gt; command to test communication.&lt;br /&gt;
&lt;br /&gt;
== Contacts ==&lt;br /&gt;
&lt;br /&gt;
* Management: [http://dce.felk.cvut.cz/hanzalek/ Prof. Zdeněk Hanzálek]&lt;br /&gt;
* Technical: [http://cmp.felk.cvut.cz/~pisa/ Pavel Píša, Ph.D.]&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4082</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4082"/>
		<updated>2013-04-25T15:38:30Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* Programming */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux).&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for Windows only, but also runs quite well in Wine).&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]]&lt;br /&gt;
&lt;br /&gt;
=== Installing CCS5 in Ubuntu 12.04 65bits ===&lt;br /&gt;
&lt;br /&gt;
After installation the application can be run with:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
cd &amp;lt;install_dir&amp;gt;/ccsv5/eclipse/&lt;br /&gt;
&lt;br /&gt;
./ccstudio&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application fails to start is because CCS5 is a 32bits application a thus requires 32bits libraries:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo apt-get install libgtk2.0-0:i386 libxtst6:i386&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If the application crashes with a segmentation fault do:&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;&amp;lt;install_dir&amp;gt;/ccsv5/eclipse/plugins/com.ti.ccstudio.branding_&amp;lt;your version number&amp;gt;/plugin_customization.ini&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
And change key &amp;lt;code&amp;gt;org.eclipse.ui/showIntro&amp;quot;&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;false&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default the device (if nothing more connected then &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt;) is added with permissions 664 with &lt;br /&gt;
&amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need write access for current user. To do so we need &lt;br /&gt;
to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;br /&gt;
&lt;br /&gt;
== RS232 communication setup ==&lt;br /&gt;
&lt;br /&gt;
Connect serial communication pins to computer&#039;s RS232 port or to USB through a FTDI adapter. If using RS232 port the&lt;br /&gt;
device should be &amp;lt;code&amp;gt;/dev/ttyS0&amp;lt;/code&amp;gt;, if using FTDI it should be something like &amp;lt;code&amp;gt;/dev/ttyUSBx&amp;lt;/code&amp;gt; &lt;br /&gt;
(check &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; for details).&lt;br /&gt;
&lt;br /&gt;
Make sure minicom or similar terminal program is installed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install minicom&lt;br /&gt;
&lt;br /&gt;
Then configure minicon:&lt;br /&gt;
&lt;br /&gt;
 sudo minicom -s&lt;br /&gt;
&lt;br /&gt;
And use the following configuration &amp;quot;9600 81N&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 Serial Device         : /dev/ttyS0&lt;br /&gt;
 Lockfile Location     : /var/lock&lt;br /&gt;
 Callin Program        :&lt;br /&gt;
 Callout Program       :&lt;br /&gt;
 Bps/Par/Bits          : 9600 8N1&lt;br /&gt;
 Hardware Flow Control : No&lt;br /&gt;
 Software Flow Control : No&lt;br /&gt;
&lt;br /&gt;
Start terminal session and type &amp;lt;code&amp;gt;HELP&amp;lt;/code&amp;gt; command to test communication.&lt;br /&gt;
&lt;br /&gt;
== Contacts ==&lt;br /&gt;
&lt;br /&gt;
* Management: [http://dce.felk.cvut.cz/hanzalek/ Prof. Zdeněk Hanzálek]&lt;br /&gt;
* Technical: [http://cmp.felk.cvut.cz/~pisa/ Pavel Píša, Ph.D.]&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4080</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4080"/>
		<updated>2013-02-22T14:22:41Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* Setup XDS100v2 on Linux */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux)&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for WIn only, but also runs quite well in Wine)&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]] &lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default the device (if nothing more connected then &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt;) is added with permissions 664 with &lt;br /&gt;
&amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need write access for current user. To do so we need &lt;br /&gt;
to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;br /&gt;
&lt;br /&gt;
== RS232 communication setup ==&lt;br /&gt;
&lt;br /&gt;
Connect serial communication pins to computer&#039;s RS232 port or to USB through a FTDI adapter. If using RS232 port the&lt;br /&gt;
device should be &amp;lt;code&amp;gt;/dev/ttyS0&amp;lt;/code&amp;gt;, if using FTDI it should be something like &amp;lt;code&amp;gt;/dev/ttyUSBx&amp;lt;/code&amp;gt; &lt;br /&gt;
(check &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; for details).&lt;br /&gt;
&lt;br /&gt;
Make sure minicom or similar terminal program is installed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install minicom&lt;br /&gt;
&lt;br /&gt;
Then configure minicon:&lt;br /&gt;
&lt;br /&gt;
 sudo minicom -s&lt;br /&gt;
&lt;br /&gt;
And use the following configuration &amp;quot;9600 81N&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 Serial Device         : /dev/ttyS0&lt;br /&gt;
 Lockfile Location     : /var/lock&lt;br /&gt;
 Callin Program        :&lt;br /&gt;
 Callout Program       :&lt;br /&gt;
 Bps/Par/Bits          : 9600 8N1&lt;br /&gt;
 Hardware Flow Control : No&lt;br /&gt;
 Software Flow Control : No&lt;br /&gt;
&lt;br /&gt;
Start terminal session and type &amp;lt;code&amp;gt;HELP&amp;lt;/code&amp;gt; command to test communication.&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4079</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4079"/>
		<updated>2013-02-22T14:15:00Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux)&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for WIn only, but also runs quite well in Wine)&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]] &lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default the device (if nothing more connected then &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt;) is added with permissions 664 with &lt;br /&gt;
&amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need write access for current user. To do so we need &lt;br /&gt;
to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 ACTION==&amp;quot;add&amp;quot;, SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== RS232 communication setup ==&lt;br /&gt;
&lt;br /&gt;
Connect serial communication pins to computer&#039;s RS232 port or to USB through a FTDI adapter. If using RS232 port the&lt;br /&gt;
device should be &amp;lt;code&amp;gt;/dev/ttyS0&amp;lt;/code&amp;gt;, if using FTDI it should be something like &amp;lt;code&amp;gt;/dev/ttyUSBx&amp;lt;/code&amp;gt; &lt;br /&gt;
(check &amp;lt;code&amp;gt;dmesg&amp;lt;/code&amp;gt; for details).&lt;br /&gt;
&lt;br /&gt;
Make sure minicom or similar terminal program is installed:&lt;br /&gt;
&lt;br /&gt;
 sudo apt-get install minicom&lt;br /&gt;
&lt;br /&gt;
Then configure minicon:&lt;br /&gt;
&lt;br /&gt;
 sudo minicom -s&lt;br /&gt;
&lt;br /&gt;
And use the following configuration &amp;quot;9600 81N&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
 Serial Device         : /dev/ttyS0&lt;br /&gt;
 Lockfile Location     : /var/lock&lt;br /&gt;
 Callin Program        :&lt;br /&gt;
 Callout Program       :&lt;br /&gt;
 Bps/Par/Bits          : 9600 8N1&lt;br /&gt;
 Hardware Flow Control : No&lt;br /&gt;
 Software Flow Control : No&lt;br /&gt;
&lt;br /&gt;
Start terminal session and type &amp;lt;code&amp;gt;HELP&amp;lt;/code&amp;gt; command to test communication.&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4078</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4078"/>
		<updated>2013-02-22T14:02:35Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* Debug over JTAG */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux)&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for WIn only, but also runs quite well in Wine)&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]] &lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default device &amp;lt;code&amp;gt;/dev/ttyUSB0&amp;lt;/code&amp;gt; is added with permissions 664 with &amp;lt;code&amp;gt;root&amp;lt;/code&amp;gt; as user and group. You access the device we need&lt;br /&gt;
write access for current user. To do so we need to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 ACTION==&amp;quot;add&amp;quot;, SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like &amp;lt;code&amp;gt;idVendor&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;idProduct&amp;lt;/code&amp;gt; with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
	<entry>
		<id>https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4077</id>
		<title>TMS570LS3137</title>
		<link rel="alternate" type="text/html" href="https://rtime.felk.cvut.cz/hw/index.php?title=TMS570LS3137&amp;diff=4077"/>
		<updated>2013-02-22T14:01:20Z</updated>

		<summary type="html">&lt;p&gt;Jenkicar: /* XDS100v2 JTAG Interface from Ti */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[File:TMS570LS31x HDK Kit.jpg|right|300px]]&lt;br /&gt;
[[File:Rpp.jpg|right]]&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
* [http://www.ti.com/product/tms570ls3137 Main TI page] containing datasheets.&lt;br /&gt;
* [http://e2e.ti.com/support/microcontrollers/hercules/f/312.aspx TI TMS570 related forum]&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:TMS570 TMS570 Wiki]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/HALCoGen_Ethernet_Driver_and_lwIP_Integration_Demonstration LwIP integration]&lt;br /&gt;
&lt;br /&gt;
* [[Media:Studim_procesoru.pdf]] Notes from documentation (in Czech language)&lt;br /&gt;
&lt;br /&gt;
== Programming ==&lt;br /&gt;
Tools recommended by TI for programming of this microcontroller:&lt;br /&gt;
* [http://processors.wiki.ti.com/index.php/Category:Code_Composer_Studio_v5 Code Composer Studio] (runs on Win and Linux)&lt;br /&gt;
* [http://www.ti.com/tool/halcogen HalCoGen] (for WIn only, but also runs quite well in Wine)&lt;br /&gt;
** [[TMS570LS3137 HalCoGen Bugs|TMS570LS3137 HalCoGen Bugs]] &lt;br /&gt;
&lt;br /&gt;
== FreeRTOS ==&lt;br /&gt;
Installation is easy, simply create new project in HalCoGen &lt;br /&gt;
&lt;br /&gt;
* New -&amp;gt; Project&lt;br /&gt;
* Select Family:TMS570LS31x&lt;br /&gt;
* Select Device: TMS570LS3137ZWT_FREERTOS&lt;br /&gt;
&lt;br /&gt;
All necessary files will be added into project automaticaly.&lt;br /&gt;
&lt;br /&gt;
== Hardware ==&lt;br /&gt;
Developement board we are using: [http://processors.wiki.ti.com/index.php?title=TMS570LS31x_HDK_Kit TMS570LS31x_HDK_Kit]&lt;br /&gt;
&lt;br /&gt;
===SCI port===&lt;br /&gt;
We have connected serial port on Expansion Connector P3 (see HDK documentation) pin W3 and N2. TX is connected to N2 pin and RX to W3 pin. This brings us consequences as both pins are mutexed.&lt;br /&gt;
&lt;br /&gt;
When you want to use SCI, you have to set few things in HalCoGen.&lt;br /&gt;
* Enable driver SCI (not LIN or SCI2 driver)&lt;br /&gt;
* In tab PINMUX select SCI and check conflict with other drivers&lt;br /&gt;
* In tab SCI choose and set data format.&lt;br /&gt;
When you want use interrupts in adittion, do the following:&lt;br /&gt;
* In tab VIM Channel 64-95 select interrupt 64: SCI level0 interrupt for high level interrupt or 74: SCI Level1 for low level interrupt&lt;br /&gt;
* In SCI tab enable TX and/or RX interrupt and select High or Low.&lt;br /&gt;
* In your code enable IRQ using _enable_IRQ() function, than enable notification using sciEnableNotification() function.&lt;br /&gt;
* Implement notification callback sciNotification() in notificatin.c&lt;br /&gt;
&lt;br /&gt;
In your code don&#039;t forget to initialize sci using sciInit() function.&lt;br /&gt;
&lt;br /&gt;
== Debug over JTAG ==&lt;br /&gt;
&lt;br /&gt;
=== XDS100v2 JTAG Interface from Ti ===&lt;br /&gt;
&lt;br /&gt;
The XDS100v2 is equipped with Ti specific 14-pin JTAG connector.&lt;br /&gt;
Next cable wires placement allows to use it with TMS570LS31x_HDK_Kit&lt;br /&gt;
or other device with ARM JTAG pin placement.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; &lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 14 pin Ti&lt;br /&gt;
!colspan=&amp;quot;2&amp;quot;| 20 pin ARM&lt;br /&gt;
|-&lt;br /&gt;
| 1	|| TMS	|| TMS	|| 7&lt;br /&gt;
|-&lt;br /&gt;
| 2	|| TRST	|| NTRST	|| 3&lt;br /&gt;
|-&lt;br /&gt;
| 3	|| TDI	|| TDI	|| 5&lt;br /&gt;
|-&lt;br /&gt;
| 4	|| DIS	|| GND	|| 6&lt;br /&gt;
|-&lt;br /&gt;
| 5	|| VD	|| VREF	|| 1 (2)&lt;br /&gt;
|-&lt;br /&gt;
| 6	|| NC || || --&lt;br /&gt;
|-&lt;br /&gt;
| 7	|| TDO	|| TDO	|| 13&lt;br /&gt;
|-&lt;br /&gt;
| 8	|| GND	|| GND	|| (4)&lt;br /&gt;
|-&lt;br /&gt;
| 9	|| RTCK	|| RTCK	|| 11&lt;br /&gt;
|-&lt;br /&gt;
| 10	|| GND	|| GND	|| 8 (12)&lt;br /&gt;
|-&lt;br /&gt;
| 11	|| TCK	|| TCK	|| 9&lt;br /&gt;
|-&lt;br /&gt;
| 12	|| GND	|| GND	|| 10 (14)&lt;br /&gt;
|-&lt;br /&gt;
| 13	|| EMU0	|| 	||&lt;br /&gt;
|-&lt;br /&gt;
| 14	|| EMU1	|| 	|| &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Setup XDS100v2 on Linux ===&lt;br /&gt;
&lt;br /&gt;
By default device `/dev/ttyUSB0` is added with permissions 664 with `root` as user and group. You access the device we need&lt;br /&gt;
write access for current user. To do so we need to create a new udev rules:&lt;br /&gt;
&lt;br /&gt;
 sudo nano /etc/udev/rules.d/45-pes-rpp.rules&lt;br /&gt;
&lt;br /&gt;
And add line:&lt;br /&gt;
&lt;br /&gt;
 ACTION==&amp;quot;add&amp;quot;, SUBSYSTEM==&amp;quot;usb&amp;quot;, ATTR{idVendor}==&amp;quot;0403&amp;quot;, ATTR{idProduct}==&amp;quot;a6d0&amp;quot;, MODE=&amp;quot;0660&amp;quot;, GROUP=&amp;quot;plugdev&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Then reload udev rules with:&lt;br /&gt;
&lt;br /&gt;
 sudo udevadm control --reload-rules&lt;br /&gt;
&lt;br /&gt;
You can check device properties like `idVendor` or `idProduct` with the following command:&lt;br /&gt;
&lt;br /&gt;
 udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)&lt;/div&gt;</summary>
		<author><name>Jenkicar</name></author>
	</entry>
</feed>