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
Last revisionBoth sides next revision
first_example [2020/09/06 16:39] – [Flashing a LED] ursgraffirst_example [2020/12/01 14:24] – [Running Demo Programs] ursgraf
Line 1: Line 1:
 ====== First Example ====== ====== First Example ======
 ===== Hello World with System.out ===== ===== Hello World with System.out =====
-  * [[first_example_mpc555|Using System.out on the NTB mpc555 board]] +  * [[first_example_mpc555| Hello World on the NTB mpc555 Board]] 
-  * [[first_example_mpc5200|Using System.out on the Phytec phyCore mpc5200 board]] +  * [[first_example_mpc5200| Hello World on the Phytec phyCore mpc5200 board]] 
-  * [[first_example_microzed|Using System.out on the Avnet MicroZed board]]   +  * [[first_example_microzed| Hello World on the Avnet MicroZed board]]   
-  * [[first_example_zybo|Using System.out on the Digilent Zybo board]]+  * [[first_example_zybo| Hello World on the Digilent Zybo board]]
  
 +===== Developing on the Avnet MicroZed Board =====
 +As this board contains a FPGA which must be loaded with a suitable configuration, you have to carefully select one of the following methods.
 +  * [[first_example_microzed_sysdev| System Developer]] 
 +  * [[first_example_microzed_appdev| Application Developer]] 
 +  * [[first_example_microzed_deploy| Deploying]] 
 ===== Running Demo Programs ===== ===== Running Demo Programs =====
 +The deep runtime library offers a couple of demo programs, e.g. using serial output or flashing a led. Create a new project as given above and open the //deep// project file. Navigate to //Referenced Libraries// entry in the //Package Explorer// and find a suitable demo program, e.g. ch.ntb.inf.runtime.zynq7000.microzed.demo.Blinker
 +{{:demoprograms.png?250|}}
  
-===== Example on mpc5200 ===== +Edit the //rootclasses// entry in the //deep// project file as follows 
-If you use a mpc5200 platform the following steps have to be altered: +<code>
- +
-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. # enter names of rootclasses, e.g.
 # rootclasses = "test.MyFirstTestClass","other.MySecondTestClass"; # rootclasses = "test.MyFirstTestClass","other.MySecondTestClass";
- rootclasses = "test.HelloWorld"; + rootclasses = "org.deepjava.runtime.zynq7000.microzed.demo.Blinker";
- +
- imgfile = "M:\Workspace\HelloWorld\HelloWorld.bin"; +
- imgformat = BIN; +
-}+
 </code> </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. +Create a run configuration and run the program as given in [[first_example|Hello World with System.out]]. Be aware of the fact that all the examples using //flink// devices (which are implemented in the FPGA) need suitable configuration loaded into the FPGA at startup.
- +
-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 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 runningRun 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> +