【黑金云课堂】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.BINimage.ubrootfs 到 eMMC
  • 切换启动拨码,从 eMMC 启动系统

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

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

系列 内容定位
Verilog开发 硬件描述语言基础、逻辑设计、仿真调试
Vitis开发 Zynq软硬件协同、外设驱动、网络协议栈
Linux开发 嵌入式Linux系统移植、驱动编写、应用开发
相关推荐
小眼睛FPGA6 小时前
【紫光HiYou开源入门轻量级PCIE开发板PG2L25G】实验例程3-基于紫光FPGA 的UART 串口通信
fpga开发
wxmtwfx6 小时前
Googletest Mock示例
linux·mock·googletest
ch3nyuyu6 小时前
网络编程拟面试题
linux·网络
无限进步_6 小时前
【Linux】Makefile:让编译自动化
linux·运维·自动化
猫头虎6 小时前
【Trea】Trea国内版|国际版|海外版下载|Mac版|Windows版|Linux下载配置教程
linux·人工智能·windows·macos·aigc·ai编程·agi
流浪0016 小时前
告别静态打印:Linux C 实现实时刷新进度条
linux·运维·c语言
小此方6 小时前
Re:Linux系统篇(二十)进程篇·五:深入理解 Linux 进程优先级:从底层逻辑到实战修改
linux·运维·服务器
路溪非溪6 小时前
Linux下物理总线驱动模型之SDIO驱动框架
linux·驱动开发
深圳市九鼎创展科技6 小时前
九鼎创展 X7110 开发板(JH7110):国产 RISC-V 多媒体平台全解析
大数据·linux·人工智能·嵌入式硬件·ubuntu·risc-v