---
title: 基于香橙派鲲鹏Pro开发板实现FPGA的LED灯控制-官方技术文章-鲲鹏社区
description: 本文介绍了基于香橙派鲲鹏Pro开发板上携带的FPGA硬件以及操作系统自带的Gowin IDE软件，实现LED灯的控制。
keywords: Pro,FPGA,LED,基于香橙派鲲,开发板实现,灯控制,官方技术文章,鲲鹏社区
url: https://www.hikunpeng.com/developer/techArticles/20250526-2?envFlag=1
section: (其他)
---

# 基于香橙派鲲鹏Pro开发板实现FPGA的LED灯控制-官方技术文章-鲲鹏社区

URL: https://www.hikunpeng.com/developer/techArticles/20250526-2?envFlag=1
描述: 本文介绍了基于香橙派鲲鹏Pro开发板上携带的FPGA硬件以及操作系统自带的Gowin IDE软件，实现LED灯的控制。
关键词: Pro,FPGA,LED,基于香橙派鲲,开发板实现,灯控制,官方技术文章,鲲鹏社区

官方技术文章 [了解详情](https://www.hikunpeng.com/zh/developer/techArticles)

基于香橙派鲲鹏Pro开发板实现FPGA的LED灯控制

基于香橙派鲲鹏Pro开发板实现FPGA的LED灯控制

香橙派鲲鹏pro

发表于 2025/05/27

0

作者|楼佳明

## 1.实验环境说明

- 香橙派鲲鹏 Pro开发板、显示器+键鼠一套、openEuler22.03操作系统；
- 每套实验环境可供1名学员上机操作。

## 2.实验原理介绍

FPGA上总共有16个可编程的LED。下图显示了这些LED的位置、其在原理图中的信号名称，以及在FPGA代码中驱动它们对应的FPGA引脚。

本实验案例通过在开发板上自带的Gowin IDE软件，实现LED灯的闪烁控制。

## 3.实验步骤

### 3.1 启动Gowin IDE软件

#### 步骤1 打开终端

#### 通过显示器连接到开发板后，以root用户完成登录，输入密码openEuler并按Enter键。

登录成功后点击桌面左上角的活动，然后点击终端。

步骤2  进入Gowin IDE启动程序所在文件夹

在终端中运行下面的命令进入Gowin IDE启动程序所在文件夹。

```
cd /opt/Gowin/IDE/bin
```

步骤3 运行软件

运行下面的命令打开Gowin IDE。

```
./gw_ide
```

Gowin IDE打开后的界面显示如下所示：

### 3.2 创建工程

使用Gowin IDE创建一个名为led_on的工程。

步骤1 创建保存FPGA工程的文件夹

创建一个名为opimsoc的文件夹，用于保存在本手册中创建的FPGA工程文件。

```
mkdir -p /root/opimsoc
```

#### 步骤2 创建FPGA工程

Gowin IDE启动后打开的页面如下图所示，主要分为分为4个板块：

1）Recent Projects：显示近期打开过的工程。

2）Quick Start：用来快速的创建一个新工程、打开已有工程和打开工程样例。

3）Tools：包括 FloorPlanner（物理约束编辑器）、Timing

Constrains Editor（时序约束编辑器）和Programmer（FPGA下载器软件）工具。

4）User Manuals：用户手册，点击可进入高云官网的产品介绍。

步骤3 新建工程

在Quick Start中点击New Project来新建一个Gowin FPGA工程。

接着点击OK按键即可。

步骤4  完成Project wizard

然后在Project wizard界面中填写工程名称以及设置工程文件保存到前面创建的opimsoc文件夹。再根据实际情况是否勾选Use as default project location，勾选之后，下一次建立工程的时候，将会默认保存到opimsoc文件夹中。设置完成之后，点击

注意，工程名称中不能有中文字符和空格。

步骤5 设置FPGA的器件信息

然后在Select Device界面中设置OPi MSOC使用的FPGA的器件信息，选择完成之后，再点击Next。

a)Series：用来过滤系列，OPi MSOC需要选择GW5AT。

b)Device：用来过滤器件，OPi MSOC需要选择GW5AT-138。

c)Package：用来过滤封装类型,OPi MSOC需要选择PGBA484A。

d)Speed：用来过滤速度等级，OPi MSOC需要选择C1/10。

e)Device Version：用来过滤器件的版本，OPi MSOC需要选择B。

f)Part Number：用来选择型号，该栏中会显示所选择器件的详细资源信息。

步骤6  完成工程创建

最后会出现Summary界面，然后点击Finish，完成工程的创建。

工程创建好后显示的界面如下所示：

### 3.3 编写FPGA源文件

在Design板块的空白处点击鼠标右键。

然后选择New File。

然后输入Verilog File源文件名字，led_on。再点击OK即可。

然后在Design板块中会自动新建一个Verilog Files文件夹，并且该文件夹下会包含刚才创建的名为led_on.v的Verilog 源文件。

然后在代码编辑框中就可以编写Verilog的代码了。

在led_on.v文件中输入下面代码，控制前8个LED灯，其中4个点亮，4个熄灭。

```
module led_on(
    output wire [7:0] LED
);

    //Assign LED to be ON
assign LED = 8'b01010101;// Turn on the LED

endmodule

```

编写完成后，请点击下图所示位置的按钮来保存下Verilog源文件。

### 3.4 分析综合

通过运行工具栏中的Run Synthesis按钮来运行综合。

运行完成后，如果Console中没有出现任何错误，说明综合成功了，如果有报错，就需要根据报错来修改代码，再重新执行综合。

### 3.5 物理约束

直接点击工具栏中的快捷按钮来运行物理约束。

然后会打开FloorPlanner界面。

然后点击左下角的I/O Constraints进行I/O约束，分别设置成如下图所示的引脚位置。

约束完成之后，请点击下图所示的位置保存下物理约束文件。

FloorPlanner页面，再回到Design窗口中，可以看到会多了一个cst格式的文件,并且里面有刚才设置的物理约束的内容。

LED[0]对应OPi MSOC开发板上丝印为2的LED灯，程序会控制其点亮。

LED[1]对应OPi MSOC开发板上丝印为3的LED灯，程序会控制其熄灭。

LED[2]对应OPi MSOC开发板上丝印为4的LED灯，程序会控制其点亮。

LED[3]对应OPi MSOC开发板上丝印为5的LED灯，程序会控制其熄灭。

LED[4]对应OPi MSOC开发板上丝印为6的LED灯，程序会控制其点亮。

LED[5]对应OPi MSOC开发板上丝印为7的LED灯，程序会控制其熄灭。

LED[6]对应OPi MSOC开发板上丝印为8的LED灯，程序会控制其点亮。

LED[7]对应OPi MSOC开发板上丝印为9的LED灯，程序会控制其熄灭。

### 3.6 布局布线

直接点击工具栏中的快捷按钮来运行布局布线。

布局布线完成后的打印如下所示，然后还会生成fs格式的比特流文件。

### 3.7 板级验证

在OPi MSOC开发板上测试编写的程序，LED灯的显示情况正常应该和下图所示的一样。

直接点击工具栏中的快捷按钮来打开Programmer。

然后如果弹出了下图所示的界面，说明OPi MSOC已正常连接到了OPi Kunpeng Pro开发板上。

首先点击USB Cable Setting,然后再点击弹框中的Save按钮进行保存。

点击Gowin Programmer中的Program按钮，就会将生成的fs比特流文件下载至FPGA的SRAM中。

Programmer下载成功fs文件后会打印下图所示的信息。

下载比特流文件到FPGA的SRAM中后会自动运行，此时可以看到OPi MSOC开发板上对应的LED灯被点亮。

至此本实验案例顺利完成。

# 4.更多学习资源

更多学习内容和资源请扫码报名参加 “鲲鹏技术学习加油站”及浏览鲲鹏开发板专区。

1）香橙派鲲鹏Pro开发板技术学习加油站：

2）香橙派鲲鹏Pro开发板专区二维码：

本页内容
