deep

a Cross Development Platform for Java

User Tools

Site Tools


first_example

Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
first_example [2019/11/06 14:10] – [Example on mpc5200] ursgraffirst_example [2020/09/06 14:27] ursgraf
Line 1: Line 1:
 ====== First Example ====== ====== First Example ======
-===== Using System.out on a mpc555 Board ===== +===== Using System.out on a target board =====
- +
-This example will demonstrate how to use the deep compiler to translate a simple Java program and run it on a mpc555 target platform. For 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 target platform. 
   - 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//.
   - Create a new deep project with //File// -> //New// -> select //Project..., Deep -> //select// Deep Project//. \\ {{:newdeepproject.png?300|}}   - Create a new deep project with //File// -> //New// -> select //Project..., Deep -> //select// Deep Project//. \\ {{:newdeepproject.png?300|}}
Line 68: Line 67:
   - 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 ===== ===== Example on mpc5200 =====
 If you use a mpc5200 platform the following steps have to be altered: If you use a mpc5200 platform the following steps have to be altered: