ソフトウェア作成
4. ソフトウェア作成
ここからはSDKでの作業に移ります。
この手順ではPCとの通信およびPL部との通信を行うソフトウェアを作成します。
まず、先ほどのVivadoプロジェクトのFileタブの Export -> Export Hardware を実行します。
以下のウィンドウが表示されるので、Include bitstreamにチェックをいれ OK ボタンを押します。
FileタブのLaunch SDKを実行し、表示されるウィンドウはデフォルトのままOKボタンを押すと、
SDKが立ち上がります。
Fileタブ New -> Application Projectを押します。
表示される以下のウィンドウではProject Name を led_blink とし、
他はデフォルトのまま Next ボタンを押します。
Templates では Hello World を指定し、Finish ボタンを押します。
画面左 Project Explorer に led_blink, led_blink_bsp が追加されるので、
led_blink -> src -> helloworld.c をダブルクリックして内容を以下のように編集します。
#include "xparameters.h" #include "xgpio.h" #include#include int main() { XGpio led; XGpio_Config led_config; char s_interval[100]; int i_interval = 1000; int count; led_config.DeviceId = XPAR_AXI_GPIO_0_DEVICE_ID; XGpio_CfgInitialize(&led, &led_config, XPAR_AXI_GPIO_0_BASEADDR); XGpio_SetDataDirection(&led, 1, 0); while(1){ printf("input Interval[ms] (now %d [ms])\n", i_interval); scanf("%s",s_interval); i_interval = atoi(s_interval); printf("set %d[ms]\n\n",i_interval); count = i_interval * 50000; //50000 = 50000000[MHz] / 1000 (input [ms]) XGpio_DiscreteWrite(&led,1,count); } return 0; }
ctrl + B でプロジェクトをビルドします。
作成された led_blink -> Debug -> led_blink.elf が、PS部で動かすためのプログラムです。