deep

a Cross Development Platform for Java

User Tools

Site Tools


first_example_mpc555

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Last revisionBoth sides next revision
first_example_mpc555 [2020/09/06 14:35] – external edit 127.0.0.1first_example_mpc555 [2020/09/23 09:58] ursgraf
Line 1: Line 1:
-====== First Example ====== +====== Hello World on the NTB mpc555 Board ======
-===== Using System.out on mpc555 Board =====+
  
-This example will demonstrate how to use the deep compiler to translate a simple Java program and run it on a mpc555 target platformFor other platforms see at the bottom of this page.+This example will demonstrate how to use the deep compiler to translate a simple Java program and run it on a [[https://wiki.ntb.ch/infoportal/embedded_systems/mpc555/headerboard/start|NTB mpc555 Headerboard]].
  
   - Start eclipse, choose a new workspace and open the deep perspective with //Window -> Open Perspective -> Other -> Deep//.   - Start eclipse, choose a new workspace and open the deep perspective with //Window -> Open Perspective -> Other -> Deep//.
Line 9: Line 8:
    - Target Configuration:    - Target Configuration:
     - Select a board: //NTB MPC555 header board//     - Select a board: //NTB MPC555 header board//
 +    - Select a operating System: //Simple Tasking System for PPC//
     - Select a programmer: //NTB MPC555 USB-BDI//     - Select a programmer: //NTB MPC555 USB-BDI//
-    - Select a operating System: //NTB Simple Tasking System for PPC// +    - If you like to have an image file, you can select the corresponding checkbox. This option is not necessary if you use the //NTB MPC555 USB-BDI// to download to the target. Please make sure that the file path does not include spaces or hyphens. \\ {{targetconfiguration555.png?300|}}
-    - If you like to have an image file, you can select the corresponding checkbox. This option is not necessary if you use the //NTB MPC555 USB-BDI// to download to the target. \\ {{targetconfiguration555.png?300|}}+
   - Project name:   - Project name:
     - Choose a project name (no spaces, no special characters such as "umlauts")     - Choose a project name (no spaces, no special characters such as "umlauts")
Line 49: Line 48:
  libpath = "I:\deep\lib";  libpath = "I:\deep\lib";
  boardtype = ntbMpc555HB;  boardtype = ntbMpc555HB;
- ostype = ntbSTS_ppc;+ ostype = sts_ppc;
  programmertype = ntbMpc555UsbBdi;  programmertype = ntbMpc555UsbBdi;
 +# programmeropts = ;
 +# imgfile = "M:\EUser\runtime-EclipseApplication-arm\HelloWorld\HelloWorld.bin";
 +# imgformat = BIN;
 +# pl_file = none;
  
 # enter names of rootclasses, e.g. # enter names of rootclasses, e.g.
Line 68: Line 71:
   - See [[eclipse:flashing|Flashing your Program]] for how to write your program to permanent flash memory.   - See [[eclipse:flashing|Flashing your Program]] for how to write your program to permanent flash memory.
  
-===== Example on ZYBO board ===== 
-If you use a zynq7000 platform such as the ZYBO board the following steps have to be altered: 
- 
-4. Target Configuration 
-    - Select a board, e.g.: //ZYBO7000// 
-    - Select a programmer: //OpenOCD// 
-    - Select a operating System: //NTB Simple Tasking System for ARM// 
-    - Select the checkbox //Create image file// and choose the location to save the image file and the desired image file format, preferably //BIN//. Default save location is the project folder. 
- 
-10. The source code changes to : <code java> 
-import java.io.PrintStream; 
-import ch.ntb.inf.deep.runtime.zynq7000.driver.UART; 
- 
-public class HelloWorld { 
- static { 
- // Initialize UART (115200 8N1) 
- UART uart = UART.getInstance(UART.pUART1); 
- uart.start(115200, UART.NO_PARITY, (short)8); 
-  
- // Use the uart for stdout 
- System.out = new PrintStream(uart.out); 
-  
- // Print a string to the stdout 
- System.out.println("Hello world"); 
- } 
-} 
-</code> 
- 
-12. The project file will look like <code> 
-#deep-1 
- 
-meta { 
- version = "Mon Jan 05 12:40:12 CET 2015"; 
- description = "deep project file for HelloWorld"; 
-} 
- 
-project HelloWorld { 
- libpath = "I:\deep\lib"; 
- boardtype = ZYBO7000; 
- ostype = ntbSTS_arm; 
- programmertype = openOCD; 
- programmeropts = localhost_4444; 
- 
-# enter names of rootclasses, e.g. 
-# rootclasses = "test.MyFirstTestClass","other.MySecondTestClass"; 
- rootclasses = "test.HelloWorld"; 
- 
- imgfile = "M:\Workspace\HelloWorld\HelloWorld.bin"; 
- imgformat = BIN; 
-} 
-</code> 
- 
-16. //Run// will compile, link and download the image file. For downloading and debugging [[openocd:start|OpenOCD]] will be used. Make sure to have it installed.  
-===== Example on mpc5200 ===== 
-If you use a mpc5200 platform the following steps have to be altered: 
- 
-4. Target Configuration 
-    - Select a board, e.g.: //Phytec PhiCORE-MPC5200io// 
-    - Select a programmer: //none// 
-    - Select a operating System: //NTB Simple Tasking System for PPC// 
-    - Select the checkbox //Create image file// and choose the location to save the image file and the desired image file format, preferably //BIN//. Default save location is the project folder. 
- 
-10. The source code changes to : <code java> 
-import java.io.PrintStream; 
-import ch.ntb.inf.deep.runtime.mpc5200.driver.UART3; 
- 
-public class HelloWorld { 
- static { 
- // Initialize UART (9600 8N1) 
- UART3.start(9600, UART3.NO_PARITY, (short)8); 
-  
- // Use the UART3 for stdout 
- System.out = new PrintStream(UART3.out); 
-  
- // Print a string to the stdout 
- System.out.println("Hello world"); 
- } 
-} 
-</code> 
- 
-12. The project file will look like <code> 
-#deep-1 
- 
-meta { 
- version = "Mon Jan 05 12:40:12 CET 2015"; 
- description = "deep project file for HelloWorld"; 
-} 
- 
-project HelloWorld { 
- libpath = "I:\deep\lib"; 
- boardtype = phyCoreMpc5200io; 
- ostype = ntbSTS_ppc; 
-# programmertype = ; 
- 
-# enter names of rootclasses, e.g. 
-# rootclasses = "test.MyFirstTestClass","other.MySecondTestClass"; 
- rootclasses = "test.HelloWorld"; 
- 
- imgfile = "M:\Workspace\HelloWorld\HelloWorld.bin"; 
- imgformat = BIN; 
-} 
-</code> 
- 
-16. //Run// will compile, link and create the image file. Use an external debugging device such as an [[http://wiki.ntb.ch/infoportal/embedded_systems/abatron_bdi/start|Abatron BDI]] to download the program. 
- 
-If the boot loader //uBoot// is present on the board, it will start up and configure the memory and clocks. Now, it's possible to download a program without using an Abatron device. For this, you have to choose in step 4 the target configuration //Phytec PhiCORE-MPC5200uBoot//. This configuration is valid for the //tiny// and the //io// board.   
-Connect a terminal program on PSC3 with 115200, no parity, 8 bit. Also connect the Ethernet of the board to your local server, which must have a TFTP server running. Run the following command: <code>tftp 0x400000 myDir/test.bin bin</code> 
-Please make sure that your image file resides in the right directory on your TFTP server. Finally start your program with <code>go 0x400100</code>