例说FPGA:可直接用于工程项目的第一手经验【3.5】

例说FPGA:可直接用于工程项目的第一手经验【3.5】

第17章 工程实例15——工业现场实时监控界面设计

本章导读

既然是玩显示,并且是用灵活可编程的FPGA来玩,那么我们就一定要玩出点花样来。这不,笔者特意用这个工程实例设计了如同示波器般能够实时采集波形并逐点移动的显示界面,说起来简单,但其中奥妙恐怕只有读者深入其中才能够体会得到。

17.1 功能概述

本实例在之前几个案例的基础上加上了SF-BASE子板模块,使用该子板模块上的AD采集功能,将AD采集数据在7寸液晶屏上进行实时的播放,达到模拟工业现场实时监控界面的效果。

如图17-1所示,这是本实例的功能框图。AD采集控制由一个专门的模块负责,通过片上系统的一个8pin输入PIO连接到NIOS II供读取。波形控制部分也有一个专门的模块组件,即wave_controller组件,挂在NIOS II的Avalon-MM总线下,在NIOS II软件层可以通过这个组件实现波形区域的设置、波形点数据的写入。与在前面工程中单纯只是LCD驱动不同,该工程还必须在lcd_driver.v模块中产生一些波形控制的特殊逻辑。在波形显示效果上,NIOS II每写入一个新的波形点数据,LCD上的波形就将会如同示波器一样向左滚动一个点,如果写入速度足够快,那么就可以达到和示波器一样的实时显示效果。该功能应用和心电图显示也非常类似。

当然了,本实例工程除了上述的AD采集波形显示功能外,我们还演示了方波波形、三角波波形和正弦波波形的实时滚动播放,这三种波形和AD采集波形之间通过触摸屏点击显示界面的按钮进行切换。

17.2 装配说明

本工程实例的装配如图17-2所示。VIP板的3个插座都用上了,VIP核心板的P2连接SF-USB子板P1,SF-USB子板上的UART将用于显示界面背景图的烧录以及字库的烧录;VIP核心板的P3连接SF-BASE子板的P1,用于AD采集数据的传输;VIP核心板的P4连接SF-L70子板的P3,进行LCD的显示驱动。

17.3 IP核配置——双口RAM

①在新建的工程中,执行菜单Tools→MegaWizard Plug-In Manager命令。在弹出的选项卡中选择“Creat a new custom megafunction variation”,然后单击Next按钮。

②接着选择我们所需要的IP核,如图17-3所示进行设置。

·在“Select a megafunction from the list below”下面的列表框中选择IP核为“Memory Compiler→RAM:2-PORT”。

·在“Which device family will you be using”后面的下拉栏中选择我们所使用的器件系列为“Cyclone IV E”。

·在“Which type of output file do you want to create?”下面选择语言为“Verilog HDL”。

·在“What name do you want for the output file?”下面输入工程所在的路径,并且在最后面加上一个名称,这个名称是我们现在正在例化的片内双口RAM IP核的名称,这里我们可以为其起名叫waveRAM,然后单击Next按钮进入下一个页面。

Read more

AI绘画建筑设计提示词:从基础到高级的完整创作指南

AI绘画建筑设计提示词:从基础到高级的完整创作指南

一、核心逻辑:高质量建筑提示词的 7 大组成部分 AI 对建筑的理解需要 “分层引导”,一个完整的提示词通常包含 7 个关键模块,你可根据需求灵活组合或删减,基础逻辑为:先明确 “画什么”,再定义 “怎么画”,最后优化 “画得好”。具体结构如下: [主体/建筑类型] + [风格/建筑师参考] + [环境/场景设定] + [细节与材质] + [构图与视角] + [灯光与氛围] + [画质/技术参数] 这一结构能让 AI 清晰捕捉设计核心,避免因信息模糊导致的 “偏离预期”,是高效创作的基础框架。 二、分模块详解:建筑提示词词汇库与应用技巧 1. 主体 / 建筑类型:明确 “画什么” 的核心 这是提示词的 “根基”,需精准定义建筑的功能与形态,避免笼统表述。

华为昇腾910B(Ascend 910B)+ LLaMA-Factory 对 Qwen3.5-32B 模型进行 LoRA 微调 的全流程操作指南

华为昇腾910B(Ascend 910B)+ LLaMA-Factory 对 Qwen3.5-32B 模型进行 LoRA 微调 的全流程操作指南

华为昇腾910B(Ascend 910B)上 LLaMA-Factory 对 Qwen3.5-32B 模型进行 LoRA 微调 的保姆级全流程操作指南 华为昇腾910B(Ascend 910B)上使用 LLaMA-Factory 对 Qwen3.5-32B 模型进行 LoRA 微调 的保姆级全流程操作指南,包含环境配置、依赖安装、数据准备、训练启动、验证与推理等完整步骤。本教程基于 Ubuntu 20.04 + CANN 8.0 + MindSpore/PyTorch NPU + LLaMA-Factory v0.9.3+ 环境,适用于 8卡昇腾910B服务器。 ✅ 前提条件 项目 要求 硬件

【花雕动手做】数年电机轮子收集,深度 DIY 机器人移动底座全记录

【花雕动手做】数年电机轮子收集,深度 DIY 机器人移动底座全记录

DIY 机器人的核心,莫过于作为 “移动基座” 的底盘,它是机器人实现移动、承载与稳定的根本。数年来我陆续收集各类电机与轮子,只为打造专属的机器人移动底座,在实践中梳理出一套完整的基础知识体系。本文将从核心组成、驱动转向方案、动力电源搭配、底盘结构搭建、传感器与控制实现,再到实操中的选型避坑,全方位记录并拆解机器人移动底座的 DIY 全流程。 一、机器人底盘的核心组成部分 一个完整的 DIY 机器人底盘,通常包含 6 大模块,缺一不可: 底盘框架:机器人的 “骨架”,承载所有部件,决定尺寸、承重与结构强度。 驱动系统:电机 + 减速机构 + 轮子,提供前进、后退、调速的动力。 转向系统:决定机器人的运动方式(差速、舵机转向、全向等)。 电源系统:电池 + 稳压模块,为电机、

【AIGC】冷启动数据与多阶段训练在 DeepSeek 中的作用

【AIGC】冷启动数据与多阶段训练在 DeepSeek 中的作用

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳]本文专栏: AIGC |ChatGPT 文章目录 * 💯前言 * 💯冷启动数据的作用 * 冷启动数据设计 * 💯多阶段训练的作用 * 阶段 1:冷启动微调 * 阶段 2:推理导向强化学习(RL) * 阶段 3:拒绝采样与监督微调(SFT) * 阶段 4:多场景强化学习 * 💯代码示例:冷启动数据与多阶段训练的实现 * 1. 冷启动微调阶段 * 作用与应用: * 2. 推理导向的强化学习阶段 * 作用与应用: * 3. 拒绝采样与监督微调阶段 * 作用与应用: * 4. 多场景强化学习 * 作用与应用: * 总体流程 * DeepSeek 中的应用 * 💯总结 💯前言 在人工智能领域,深度学习模型的训练和优化往往需要大量的标注数据和计算资源。然而,面对复杂任务时,即使是最先进的技术和大量的训练数据也未必能够保证模型的最优表现。DeepSeek