deep

a Cross Development Platform for Java

User Tools

Site Tools


firstexample:first_example_microzed

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
firstexample:first_example_microzed [2020/12/09 19:59] ursgraffirstexample:first_example_microzed [2022/12/20 15:53] (current) ursgraf
Line 1: Line 1:
 ====== Hello World on the Avnet MicroZed Board ====== ====== Hello World on the Avnet MicroZed Board ======
  
-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/zynq7000/microzed|MicroZed board]].+This example will demonstrate how to use the deep compiler to translate a simple Java program and run it on a [[https://wiki.bu.ost.ch/infoportal/embedded_systems/zynq7000/microzed|MicroZed board]]. This is a simple //Hello World// example. It does not allow to use the FPGA part of the zynq7000. See [[firstexample:first_example_microzed_appdev|Application Development]] or [[firstexample:first_example_microzed_sysdev|System Developer]] for that purpose.
  
   - 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|}}
   - On the Target Library wizard page you have to choose where the deep target runtime library is located. You can use the default library path or uncheck the box and browse to the location where you've installed the library. You can always set the default library path in [[eclipse:perspective#Setting_Deep_Preferences|deep Perspective and deep Preferences]]. Click //Next//. \\ {{targetlibrary.png?300|}}    - On the Target Library wizard page you have to choose where the deep target runtime library is located. You can use the default library path or uncheck the box and browse to the location where you've installed the library. You can always set the default library path in [[eclipse:perspective#Setting_Deep_Preferences|deep Perspective and deep Preferences]]. Click //Next//. \\ {{targetlibrary.png?300|}} 
    - Target Configuration:    - Target Configuration:
Line 11: Line 11:
     - Select a programmer: //OpenOCD//     - Select a programmer: //OpenOCD//
     - Select programmer options: //localhost_4444//     - Select programmer options: //localhost_4444//
-    - 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. Please make sure that the file path does not include spaces or hyphens. \\ {{targetconfigurationmicrozed.png?300|}}+    - Select the checkbox //Create image file// and choose the location to save the image file. Default save location is the project folder. You can use relative or absolute paths. 
 +    - Select the checkbox //Download PL file// and select a suitable configuration file if you are going to use the programmable logic part (FPGA) on the Zynq7000 processor. This is not necessary for the simple hello world program.\\ {{targetconfigurationmicrozed.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 dashes, no special characters such as "umlauts")
     - Use default location or choose a location \\ {{{{projectname.png?300|}}     - Use default location or choose a location \\ {{{{projectname.png?300|}}
   - //Finish// creates the project   - //Finish// creates the project
Line 21: Line 22:
   - Open class and enter source code:<code java>   - Open class and enter source code:<code java>
 import java.io.PrintStream; import java.io.PrintStream;
-import ch.ntb.inf.deep.runtime.zynq7000.driver.UART;+import org.deepjava.runtime.zynq7000.driver.UART;
  
 public class HelloWorld { public class HelloWorld {
Line 42: Line 43:
  
 meta { meta {
- version = "Mon Jan 05 12:40:12 CET 2015";+ version = "Mon Jan 15 09:08:35 CET 2020";
  description = "deep project file for HelloWorld";  description = "deep project file for HelloWorld";
 } }
  
 project HelloWorld { project HelloWorld {
- libpath = "I:\deep\lib";+ libpath = "//ost.ch/dfs/bsc.sys/public-programme/deep/lib";
  boardtype = MicroZed;  boardtype = MicroZed;
  ostype = sts_arm;  ostype = sts_arm;
  programmertype = openOCD;  programmertype = openOCD;
  programmeropts = localhost_4444;  programmeropts = localhost_4444;
- imgfile = "D:\work\HelloWorld.bin"+ imgfile = "./"; 
- imgformat = BIN+# pl_file = "";
-# pl_file = none;+
  
 # enter names of rootclasses, e.g. # enter names of rootclasses, e.g.
Line 61: Line 61:
 } }
 </code> </code>
-  - Connect the hardware to your host machine by an USB cable and JTAG-HS3 adapter (J3)+  - Plug a [[https://wiki.bu.ost.ch/infoportal/embedded_systems/jtaghs3/start|JTAG-HS3]] adapter into J3 of your board and connect it with your host machine by an USB cable. This will create USB Serial Converter device on your machine. 
-  - Make sure that you select the proper driver for your adapter [[https://wiki.bu.ost.ch/infoportal/embedded_systems/jtaghs3/start]]. +  We use [[openocd:start|OpenOCD]] for downloading and debugging programs. Make sure to have it installed, see [[:installation#Install_Libraries_to_Access_the_Hardware|Download and Installation]]. Next, set the deep preferences so that the OpenOCD command and command options suits your installation, please refer to [[eclipse:perspective#Setting_Deep_Preferences|Setting Deep Preferences]] and [[openocd:starting_openocd|Starting OpenOCD]]
-  - Start [[https://deepjava.org/openocd/starting_openocd|OpenOCD]] +  - Make sure that you select the //WinUSB// driver for your JTAG-HS3 adapter [[https://wiki.bu.ost.ch/infoportal/embedded_systems/jtaghs3/start]]. 
-  - Set the jumpers on your MicroZed board as follows \\ {{:jtagboot.png?200|}}. \\ This will boot the device from JTAG. The settings of the jumpers will be read only at powerup! Connect your host machine with another USB cable to the MicroZed board (J2). This applies power to the target. +  - Set the jumpers on your MicroZed board as follows \\ {{jtagboot.png?200|}}. \\ This will boot the device from JTAG. The settings of the jumpers will be read only at powerup!  
-  - Use a terminal program such as ''putty'' or ''realterm'' to open the COM-port on J2 (baudrate = 115200). Alternatively open a terminal program as an eclipse view. Select the appropriate serial port number. Check your host operating settings for this number. If there is no associated serial port yet - make sure, that you have the proper driver installed ([[https://www.silabs.com/community/interface/knowledge-base.entry.html/2016/12/30/downloading_cp210xd-ek07|Downloading CP210x drivers]]). +  - Connect your host machine with another USB cable to the MicroZed board on connector J2. This applies power to the target and creates a USB to UART bridge device (COM port)
-  - Create a new run configuration by marking the project file //HelloWorld.deep//. Then, right-click on it and choose //Run As -> Deep Application//. If you already created such a run configuration you can select from the pulldown menu of the run-button. \\ {{runas_context.png?280|}} {{ runas_pulldown.png?280|}}  +  - Use a terminal program such as ''putty'' or ''realterm'' to open the COM-port on J2 (baudrate = 115200). Select the appropriate COM port number. Check your host operating settings for this number. If there is no associated serial port yet - make sure, that you have the proper driver installed ([[https://www.silabs.com/community/interface/knowledge-base.entry.html/2016/12/30/downloading_cp210xd-ek07|Downloading CP210x drivers]]). 
-  - //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+  - Create a new run configuration by marking the project file //HelloWorld.deep//. Then, right-click on it and choose //Run As -> Deep Application//\\ {{runas_context.png?280|}} \\ If you already created such a run configuration you can select it from the pulldown menu of the run-button. \\ {{runas_pulldown.png?280|}} \\  
-  - The terminal window will show //Hello, World//.+  - //Run// will compile, link and download the image file. Downloading automatically starts OpenOCD. 
 +  - The terminal window will show //Hello world//.
   - With {{run.jpg}} you can recompile and rerun the program.   - With {{run.jpg}} you can recompile and rerun the program.
  
  
firstexample/first_example_microzed.1607540346.txt.gz · Last modified: 2020/12/09 19:59 by ursgraf