第7篇:Linux程序访问控制FPGA端LEDR<五>

**Q:**如何设计.c程序代码实现FPGA端外设LEDR流水灯?

**A:**在DE1-SoC开发板上实现的流水灯效果:一次只点亮一个红色LED,初始状态为向左移动直至点亮LEDR9,然后改变移动的方向为向右直至点亮LEDR0,以此循环往复,同样可通过调用Linux库函数 nanosleep() 使LEDR以适当的速度移动。

根据当前LEDR的状态以及流水灯的移动方向来控制下一状态:如果当前的移动方向为右移,则判断LEDR0是否点亮,如果点亮则改变移动方向为向左,否则继续向右移点亮右侧的LEDR;如果当前的移动方向为向左移,则判断LEDR9是否点亮,如果点亮则改变移动方向为向右,否则继续向左移点亮左侧的LEDR。

在DE1-SoC-UP Linux系统中编译并运行程序后,可观察到DE1-SoC开发板最右边的LEDR0点亮,然后向左每隔0.5秒移动一次依次点亮LEDR1、LEDR2直到LEDR9后,改变流水灯移动的方向为向右,然后向右每隔0.5秒移动一次依次点LEDR8、LEDR7直到LEDR0,循环往复。

相关推荐
智感子1 天前
测控链路:从传感器到上位机
人工智能·嵌入式硬件·fpga开发
szxinmai主板定制专家1 天前
基于Zynq的高精度多通道数据采集卡完整解决方案(工业振动/高速采集/边缘传输)
fpga开发·zynq·数据采集卡
szxinmai主板定制专家2 天前
基于TI AM62x+FPGA的24bit高精度数据采集卡设计(振动/风电/发动机监测)
人工智能·fpga开发·arm+fpga·rk3588+fpga
szxinmai主板定制专家2 天前
基于 ARM+FPGA 雕刻机控制系统的设计
arm开发·人工智能·fpga开发·rk3576·半导体设备
吉他英雄一里3 天前
zynq入门教程
fpga开发·zynq
XMAIPC_Robot3 天前
RK3576/RK3588+FPGA+AI数据采集系统:实时性与边缘AI算力兼顾
人工智能·fpga开发·机器人·数据采集·rk3588+fpga·rk3576+fpga
156082072193 天前
JFMRFVU3P5G的bit正常,但烧录mcs程序后加载异常
fpga开发
狂奔蜗牛(bradley)3 天前
把 EtherCAT 初始化从 FPGA 搬到 ARM:命令通道的接口设计与11个坑
arm开发·人工智能·fpga开发·架构
女神下凡5 天前
芯参谋(37):EEPROM_电路设计指南
arm开发·单片机·嵌入式硬件·fpga开发·设计规范
szxinmai主板定制专家6 天前
工业视觉新思路:FPGA图像预处理+RK NPU推理,实现高速缺陷检测
人工智能·嵌入式硬件·fpga开发·rk3576+codesys