【黑金云课堂】FPGA技术教程Linux开发:电压温度检测/USB/eMMC

一、电压温度 AD 检测(SYSMON/XADC)

核心模块

  • XADC:7 系列 / Zynq-7000 片上 ADC,12 位,监控芯片温度、核心电压,支持外部模拟采集。
  • SYSMON:UltraScale/UltraScale+(Zynq MPSoc)片上监控,分 PS SYSMON(仅 PS 监控)与 PL SYSMON(PL 监控 + 外部采集)。

Linux 读取方法

  • 路径:/sys/bus/iio/devices/iio:device0
  • 计算公式:
    • 温度:Temp = (temp_scale × (temp_raw + temp_offset)) / 1000
    • 电压:Vcc = vcc_scale × vcc_raw / 1000

开发流程

  1. Vivado:默认使能 SYSMON,导出 xsa
  2. Petalinux:配置设备树、使能自动登录与 bc 工具
  3. 制作脚本 ams_monitor.sh,在 Linux 下执行读取温度 / 电压

二、USB 接口

基础知识点

  • 协议版本:USB 1.0~USB4 2.0(速率 1.5Mbps~80Gbps)
  • 接口类型:Type-A/B、Mini/Micro、Type-C(全功能,支持 PD / 视频 / 雷电)
  • 四层协议:功能层 → 传输层 → 数据链路层 → 物理层

Linux 实操

  • Petalinux:配置 USB 为 OTG 模式,使能 gstreamer、usbutils、v4l2-utils
  • 测试模式 :
    • HOST :识别 U 盘(lsblk)、USB 摄像头(v4l2-ctl + gst-launch 预览)
    • SLAVE :虚拟 U 盘(g_mass_storage 驱动,Windows 可识别)

三、EMMC 读写

基础概念

EMMC 是板载嵌入式存储,集成闪存 + 控制器,支持 ECC、磨损均衡。

核心操作

分区与格式化
  • 查看:ls /dev/mmcblk*
  • 分区:fdisk /dev/mmcblk0
  • 格式化:mkfs.vfat / mkfs.ext4
  • 挂载:mount 手动挂载
独立启动 Linux
  • Petalinux 配置根文件系统与挂载点
  • 烧写 BOOT.BIN、image.ub、rootfs 到 eMMC
  • 切换启动拨码,从 eMMC 启动系统

💡 完整视频讲解可前往 ALINX 视频号进行直播回看

更多细节欢迎关注我们黑金云课堂全年免费直播课,
黑金云课堂五月直播日历 我们将在每周二、三、四,同步推进 Verilog开发、Vitis开发、Linux开发三大系列,带你从零开始,稳扎稳打掌握 FPGA 开发全流程!

系列 内容定位
Verilog开发 硬件描述语言基础、逻辑设计、仿真调试
Vitis开发 Zynq软硬件协同、外设驱动、网络协议栈
Linux开发 嵌入式Linux系统移植、驱动编写、应用开发
相关推荐
贵州诚鑫致达科技有限公司8 小时前
Linux的yum源怎么重启?源不是服务
linux·运维·服务器
Terasic友晶科技9 小时前
答疑解惑|Agilex 5如何指定Boot Core及设定Core的运行频率?
fpga开发·hps·terasic·cortex-a55·cortex-a76·boot core
澜山奕秋11 小时前
RHCSA
linux·运维·服务器
Web极客码12 小时前
告别流式截断:我用客户端中间件解决长文本 API 跨国 SSE 断连与数据自愈
linux·agent 图
cnnews12 小时前
Chromebox3安装Ubuntu后内存化与最小化 eMMC 写入优化
linux·运维·ubuntu
flytalei12 小时前
Ubuntu 24.04 单节点 K3s 部署实践:从环境评估到故障排查与验收
linux·运维·ubuntu
Starry-sky(jing)13 小时前
Hermes Agent 部署后怎么升级?v0.21.7 Linux 源代码版实测
linux·人工智能·ai agent·版本升级·hermes agent
水饺编程13 小时前
第2章:Linux 基础,clear 命令
linux·c语言·汇编
GeW14 小时前
新质生产力路线图Linux和数据库自主可控实践指南
linux
yunwei3714 小时前
eBPF 教程:BPF 迭代器用于内核数据导出
linux·后端·性能优化