紫光同创PDS自动构建

1.开发背景

        随着开发进度的不断迭代,需要对代码实行管控,FPGA代码管控也很重要,这个篇章主要是对紫光同创 PDS 开发环境下实现代码自动构建功能

2.开发需求

设计实验:

        1)点击一个脚本自动编译工程

        2)工程路径和环境安装目录可配置

        3)编译生成 .sfc 烧录固件

3.开发环境

        window10 + PDS2022.2-SP4.2

4.实现步骤

4.1 实现代码

        bat 脚本 build.bat,主要使用 pds_shell.exe 工具实现编译功能

@echo off

::启用命令扩展
setlocal enabledelayedexpansion

REM 设置PDS安装路径
set PDS_PATH="D:\pango\PDS_2022.2-SP4.2-ads\bin"

REM 设置工程路径和工程名称
set SHELL_PATH="C:\Users\REETOO\Desktop\1_led2\build.ps1"
set PROJECT_PATH="C:\Users\REETOO\Desktop\1_led2\prj"
set PROJECT_NAME="led.pds"

REM 切换到工程目录
cd /d %PROJECT_PATH%

REM 调用PDS命令行工具进行编译
%PDS_PATH%\pds_shell.exe -project %PROJECT_NAME%
echo "pds_shell execute ok"

REM 通过 POWERSHELL 打开终端执行 SFC 文件生成功能
powershell -ExecutionPolicy Bypass -File %SHELL_PATH%

REM 检查编程结果

echo "auto build over"
exit

pause

        powershell 脚本 build.ps1,主要实现将 sbit 文件转换成 sfc 文件

$PDS_PATH="D:\pango\PDS_2022.2-SP4.2-ads\bin"
$PROJECT_PATH="C:/Users/REETOO/Desktop/1_led2/prj"
$PROJECT_NAME="led.pds"
$STRING_CMD="cfg_gen_sfc -device_name W25Q128Q -opcode 11 -sbit_start_address 0 -sbit $PROJECT_PATH/generate_bitstream/led.sbit"

# 启动 cdt_cfg_shell.exe 并设置工作目录
Start-Process -FilePath "$PDS_PATH\cdt_cfg_shell.exe"

# 等待终端窗口出现
Start-Sleep -Seconds 1

# 发送 dir 命令
$wshell = New-Object -ComObject wscript.shell
$wshell.AppActivate('cdt_cfg_shell.exe')
Start-Sleep -Milliseconds 500

# sbit 转换 sfc 
Set-Clipboard -Value $STRING_CMD
$wshell.SendKeys("^v")
$wshell.SendKeys("{ENTER}")

Set-Clipboard -Value "exit"
$wshell.SendKeys("^v")
$wshell.SendKeys("{ENTER}")

其中,$STRING_CMD 从开发环境中拷贝过来即可

4.2 执行过程

       1) 点击 build.bat,执行编译

        2)等待编译完成

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值