PHY+MAC - 网络接口帧的发送与接收机制

264 篇文章

已下架不支持订阅

本文介绍了网络接口的PHY和MAC层在数据帧发送与接收中的作用。PHY层负责帧封装、信号调制、调制解调和时钟同步,而MAC层则处理帧封装与解封装、数据发送接收、帧检错和优先级管理,确保车联网中的高效、可靠通信。

PHY+MAC - 网络接口帧的发送与接收机制

网络接口是计算机系统中负责进行数据帧的发送和接收的重要组件,它由物理层(PHY)和介质访问控制层(MAC)两部分构成。在AutoSAR领域,网络接口的设计和实现至关重要,因为它直接关系到车联网中的通信性能和可靠性。

  1. 物理层(PHY)

物理层负责将数据帧从网络接口送入物理介质,并将来自物理介质的数据帧传递给网络接口。具体而言,PHY层需要完成以下任务:

a. 帧封装(Frame Enapsulation):将从上层传来的数据帧添加必要的物理层头部和尾部,形成完整的物理层帧。这些头部和尾部通常包含帧起始标记、帧长度、校验和等字段。

b. 信号调制(Signal Modulation):根据使用的物理介质类型(如以太网、CAN总线等),将数字信号转换为模拟信号,并通过物理介质进行传输。不同的物理介质可能采用不同的调制方式,如振幅调制(AM)、频率调制(FM)或相位调制(PM)等。

c. 调制解调(Modulation and Demodulation):在发送端,物理层通过将数字信号转换为模拟信号进行调制。而在接收端,物理层则需要将从物理介质接收到的模拟信号转换为数字信号,以供上层进行处理。

d. 时钟同步(Clock Synchronization):为了确保发送和接收的数据能够正确解码和还原,物理层需要与远程设备进行时钟同步,以保持数据传输的稳定性和准确性。

  1. 介质访问控制层(MAC)

介质访问控制层负责调度和管理网络接口的数据传输。它需要完成以下任务:

a. 帧封装与解封装(Frame En

已下架不支持订阅

由于当前环境为文本交互模式,无法直接生成或上传图像类文件(如PDF、PNG、SCH等格式的原理图),但我可以为你**详细描述一个基于GD32F407ZGT6的完整硬件原理图结构设计**,包括各模块的器件连接关系、关键信号命名和外围电路参数。你可以根据此描述在Altium Designer、KiCad或其他EDA工具中绘制实际原理图。 --- ### 可行的硬件原理图设计方案(适用于GD32F407) #### 一、主控核心:GD32F407ZGT6 - 封装:LQFP-144 - 工作电压:3.3V - 外接晶振:8MHz主时钟 + 32.768kHz RTC备用时钟 - BOOT0 接 10kΩ 上拉至 VDD,BOOT1 接 GND,支持从 Flash 启动 > 所有 NC 引脚悬空,未使用的 I/O 配置为模拟输入或下拉接地。 --- #### 二、电源系统设计 | 模块 | 方案 | |------|------| | 输入电源 | DC 24V(工业标准) | | 转换为5V | LM2596 或 MP2307 DC-DC(效率高) | | 转换为3.3V | AMS1117-3.3 或 SPX3819,输入5V | | 模拟供电 AVDD | 使用磁珠隔离 DVDD,单独走线 | | 隔离电源 | B0505S(5V输入→5V双输出,隔离1500V)供 ADM2682 使用 | > 所有电源入口加10μF电解+0.1μF陶瓷去耦电容 --- #### 三、功能模块电路设计(逐项对应技术要求) ##### 1. **16路 DA 输出(0–5V)** - 使用 **4 片 AD5663BRUZ(16位四通道 DAC)**,SPI 接口 - SPI 连接: - MOSI → PB15 (SPI2_MOSI) - SCLK → PB13 (SPI2_SCK) - CS → PC0~PC3(独立片选) - 每片 DAC 输出经 **OPA2192 运放** 配置为电压跟随器,再通过 **增益放大电路(G=1.5)** 将 0–3.3V → 0–4.95V ≈ 0–5V - 所有 DAC 基准来自 REF5025(2.5V)或板载稳压源 ##### 2. **8路 AD 采集(±15V、5V)** - 信号调理电路: - ±15V → 分压比 1:5(R1=40kΩ, R2=10kΩ),中心点偏置 1.65V(虚地) - 输出 = $ \frac{(Vin + 15)}{5} \times 3.3 $,范围 0–3.3V - 5V 输入 → 1:2 分压(10kΩ+10kΩ) - 滤波:每通道串联 100Ω 电阻 + 100nF 对地电容(低通滤波) - 保护:TVS 二极管 SMAJ3.3CA 防止过压 - 接入 GD32 的 ADC1_IN0 ~ ADC1_IN7(PA0~PA7) ##### 3. **2路隔离 RS-422 通信(ADM2682)** - 使用 **ADM2682EBRIZ** - 连接至 USART1(PA9: TX, PA10: RX) - DIR 控制由 PA8 提供方向使能 - 一侧接 MCU 3.3V 系统,另一侧由 B0505S 提供隔离 5V - 差分输出 A/B 接 DB9 接口,末端并联 120Ω 匹配电阻 ##### 4. **4路非隔离 RS-422 通信(26C31/26C32)** - 发送端:26C31(四通道差分驱动器) - 输入来自 USART2/3/6/TIMx_PWM(模拟发送- 如:USART2_TX(PA2) → 26C31_IN1 → OUT → 422_A - 接收端:26C32(四通道差分接收器) - 422_B/A → 26C32_IN → OUT → PA3(USART2_RX) - 支持两组 HDLC 协议通信(需软件实现结构) ##### 5. **4路带电指令输出(28V/15V/5V 可选)** - 开关器件:P沟道 MOSFET(如SI2301DS)或继电器 - 电源选择:通过跳线或拨码开关预设每路输出电压源(28V/15V/5V 来自外部供电) - 控制信号:PB0~PB3 → 光耦 TLP521 → 驱动 MOSFET 栅极为低有效 - 示例: ```text PB0(HIGH) → TLP521导通 → MOSFET栅极拉低 → 输出28V接通负载 ``` ##### 6. **4路不带电指令输出** - 使用光耦输出(如PC817) - 一端接内部3.3V,另一端开漏输出至端子排 - 负载端自行供电,形成“干接点”效果 ##### 7. **4路指令/开关量采集** - 输入端子 → 限流电阻(1kΩ)→ 光耦 TLP521 输入侧(并联反向并联二极管防反) - 输出侧:3.3V → 上拉电阻(4.7kΩ)→ PD0~PD3(GPIO输入) - 支持 0V(断开)和 +24V(闭合)识别 ##### 8. **6路脉冲信号输出** - 使用 GD32 定时器 PWM 输出: - TIM2_CH1~4 → PA0, PA1, PA2, PA3 - TIM3_CH1~2 → PA6, PA7 - 频率范围:1Hz ~ 100kHz 可调 - 输出经 SN74HCT244 缓冲后送出,增强驱动能力 ##### 9. **2路网口通信** - 利用 GD32 内置 EMAC 控制器 - 第1路:RMII 接口 → LAN8720A(地址0)→ 百兆网口 - 第2路:需外加 KSZ8863MLL 或 W5500 芯片扩展第二 MAC/PHY - 使用 SPI 接口连接 W5500(替代方案) - 网口变压器集成于 RJ45 模块(HR911105A) --- #### 四、调试接口 - **SWD 下载口**:PA13(SWDIO), PA14(SWCLK),带 10kΩ 下拉 - **串口调试口**:USART3 → USB转TTL(CH340G) - **LED 指示灯**:PC13(运行指示),PD1(错误报警) - **按键复位**:NRST 外部复位按钮,10kΩ上拉 --- #### 五、推荐 PCB 设计要点 1. 数字地模拟地单点连接(靠近ADC区域) 2. 所有高速信号线(RMII、SPI)等长布线,差分对保持 5mil 间距 3. 电源平面分割清晰,4层板优先(Top → Signal, GND Plane, PWR Plane, Bottom → Signal) 4. 高压信号(±15V、28V)其他弱电信号保持 >2mm 安全距离 --- ### 总结:整体系统框图(文字版) ```text +------------------+ +---------------------+ | 外部电源 |------>| DC-DC → 5V → LDO → 3.3V | +------------------+ +----------+----------+ | +------------------v------------------+ | GD32F407ZGT6 | | (Core: CM4 @ 168MHz, 1MB Flash) | +------------------+-------------------+ | +----------------+------------+--------------+-----------------+ | | | | +-------v------+ +-------v------+ +----------v---------+ +-----v--------+ | AD5663×4 | | ADM2682×2 | | 26C31/26C32×2 | | Switch Input | | (DAC 16ch) | | (Isolated 422)| | (Non-isol. 422) | | (Opto x4) | +--------------+ +--------------+ +----------------------+ +--------------+ | | | | +-------v------+ +-------v------+ +----------v---------+ +-----v--------+ | Voltage Out | | RS422 Port | | RS422 Port | | GPIO In | | (0–5V) | | Isolated | | Non-Isolated | |采集指令 | +--------------+ +--------------+ +----------------------+ +--------------+ | | | | +-------v------+ +-------v------+ +----------v---------+ +-----v--------+ | Relays/MOSFET| | LAN8720 |<--------| RMII Interface | | PWM Output | | (Power Ctrl) | | (Ethernet) | | TIM2/3 PWM → Buffer | | (6 channels) | +--------------+ +--------------+ +----------------------+ +--------------+ | | | | +-------v------+ +-------v------+ +----------v---------+ +-----v--------+ | Powered Out | | RJ45 Jack | | User Comm Port | | Pulse Out | | (28V/15V/5V) | | | | HDLC Support | | | +--------------+ +--------------+ +----------------------+ +--------------+ ``` --- ### 知识点 **1. 多通道DAC外扩SPI总线管理** 通过SPI总线挂载多个DAC芯片,利用独立CS片选实现多路模拟输出扩展。 **2. 工业电平信号采集安全隔离技术** 使用电阻分压、偏置电路将高压信号适配至MCU ADC范围,并结合光耦保障系统安全。 **3. 嵌入式以太网硬件接口设计(RMII+PHY)** 掌握RMII协议引脚定义,正确连接GD32 EMAC外部PHY芯片(如LAN8720),实现TCP/IP通信基础。 --- > ✅ 说明:以上内容已足够作为你在 Altium Designer/KiCad 中绘制完整原理图的设计依据。若你需要 `.sch` 或 `.pdf` 输出,请告知我具体格式,我可以继续提供模块化原理图代码(如KiCad Schematic Text Format)或分页说明。改为28V输入。
最新发布
11-21
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

编码实践

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值