0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

WIZnet W55MH32以太网单片机开发教程 第十章 基本定时器

W55MH32 ? 来源:W55MH32 ? 作者:W55MH32 ? 2025-05-28 09:51 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

单芯片解决方案,开启全新体验——W55MH32 高性能以太网单片机

W55MH32是WIZnet重磅推出的高性能以太网单片机,它为用户带来前所未有的集成化体验。这颗芯片将强大的组件集于一身,具体来说,一颗W55MH32内置高性能Arm? Cortex-M3核心,其主频最高可达216MHz;配备1024KB FLASH与96KB SRAM,满足存储与数据处理需求;集成TOE引擎,包含WIZnet全硬件TCP/IP协议栈、内置MAC以及PHY,拥有独立的32KB以太网收发缓存,可供8个独立硬件socket使用。如此配置,真正实现了All-in-One解决方案,为开发者提供极大便利。

在封装规格上,W55MH32 提供了两种选择:QFN68和QFN100。

W55MH32Q采用QFN68封装版本,尺寸为8x8mm,它拥有36个GPIO、3个ADC、12通道DMA、17个定时器、2个I2C、3个串口、2个SPI接口(其中1个带I2S接口复用)、1个CAN以及1个USB2.0。在保持与同系列其他版本一致的核心性能基础上,仅减少了部分GPIO以及SDIO接口,其他参数保持一致,性价比优势显著,尤其适合网关模组等对空间布局要求较高的场景。紧凑的尺寸和精简化外设配置,使其能够在有限空间内实现高效的网络连接与数据交互,成为物联网网关、边缘计算节点等紧凑型设备的理想选择。 同系列还有QFN100封装的W55MH32L版本,该版本拥有更丰富的外设资源,适用于需要多接口扩展的复杂工控场景,软件使用方法一致。

此外,本W55MH32支持硬件加密算法单元,WIZnet还推出TOE+SSL应用,涵盖TCP SSL、HTTP SSL以及MQTT SSL等,为网络通信安全再添保障。

为助力开发者快速上手与深入开发,基于W55MH32Q这颗芯片,WIZnet精心打造了配套开发板。开发板集成WIZ-Link芯片,借助一根USB C口数据线,就能轻松实现调试、下载以及串口打印日志等功能。开发板将所有外设全部引出,拓展功能也大幅提升,便于开发者全面评估芯片性能。

wKgZO2gbOfaAVPzkACJSygzv-rI600.png

第十章 基本定时器

W55MH32微控制器集成了丰富的定时器资源,共计17个定时器,包括:10个通用16位定时器(每定时器支持4通道输入捕获/输出比较/PWM/脉冲计数及增量编码器接口)、2个带死区控制和紧急刹车功能的16位高级控制定时器(专为电机控制优化)、2个看门狗定时器(独立型和窗口型)、1个24位系统时间定时器(递减计数)以及2个16位基本定时器,全面覆盖工业控制电机驱动、系统监控及实时计数等应用场景。

本章分为如下几个小节:

1 基本定时器 简介

2 寄存器描述

1 基本定时器简介

W55MH32的基本定时器为TIM6和TIM7。

1.1 TIM6和TIM7简介

基本定时器 TIM6 和 TIM7 各包含一个 16 位自动装载计数器,由各自的可编程预分频器驱动。它们可以作为通用定时器提供时间基准,特别地可以为数模转换器(DAC)提供时钟。实际上,它们在芯片内部直接连接到 DAC 并通过触发输出直接驱动 DAC。这 2 个定时器是互相独立的,不共享任何资源。

1.2 TIM6和TIM7的主要特性

TIM6和TIM7 定时器的主要功能包括:

?16 位自动重装载累加计数器。

?16 位可编程(可实时修改)预分频器,用于对输入的时钟按系数为 1~65536 之间的任意数值分频。

?触发DAC的同步电路。

?在更新事件(计数器溢出)时产生中断请求。

wKgZO2g2a8qAcXK6AAD945UOHro212.png

基本定时器框图

1.3 TIM6和TIM7的功能

时基单元

这个可编程定时器的主要部分是一个带有自动重装载的 16 位累加计数器,计数器的时钟通过一个预分频器得到。

软件可以读写计数器、自动重装载寄存器和预分频寄存器,即使计数器运行时也可以操作。时基单元包含:

?计数器寄存器(TIMx_CNT)

?预分频寄存器(TIMx_PSC)

?自动重装载寄存器(TIMx_ARR)

自动重装载寄存器是预加载的,每次读写自动重装载寄存器时,实际上是通过读写预加载寄存器实现。根据 TIMx_CR1 寄存器中的自动重装载预加载使能位(ARPE),写入预加载寄存器的内容能够立即或在每次更新事件时,传送到它的影子寄存器。当 TIMx_CR1 寄存器的 UDIS 位为'0',则每当计数器达到溢出值时,硬件发出更新事件;软件也可以产生更新事件;关于更新事件的产生,随后会有详细的介绍。计数器由预分频输出 CK_CNT 驱动,设置 TIMx_CR1 寄存器中的计数器使能位(CEN)使能计数器计数。

注意: 实际的设置计数器使能信号 CNT_EN 相对于 CEN 滞后一个时钟周期。

预分频器

预分频可以以系数介于 1 至 65536 之间的任意数值对计数器时钟分频。它是通过一个 16 位寄存器(TIMx_PSC)的计数实现分频。因为 TIMx_PSC 控制寄存器具有缓冲,可以在运行过程中改变它的数值,新的预分频数值将在下一个更新事件时起作用。以下两图是在运行过程中改变预分频系数的例子。

wKgZPGg2a3WAWVb_AADeMehBsSo367.png

预分频系数从 1 变到 2 的计数器时序图

wKgZPGg2a3WAKbZ8AADZxxQElRI938.png

预分频系数从 1 变到 4 的计数器时序图

计数模式

计数器从 0 累加计数到自动重装载数值(TIMx_ARR 寄存器),然后重新从 0 开始计数并产生一个计数器溢出事件。每次计数器溢出时可以产生更新事件;(通过软件或使用从模式控制器)设置 TIMx_EGR 寄存器的UG 位也可以产生更新事件。设置 TIMx_CR1 中的 UDIS 位可以禁止产生 UEV 事件,这可以避免在写入预加载寄存器时更改影子寄存器。在清除 UDIS 位为'0'之前,将不再产生更新事件,但计数器和预分频器依然会在应产生更新事件时重新从 0 开始计数(但预分频系数不变)。另外,如果设置了 TIMx_CR1 寄存器中的 URS(选择更新请求),设置 UG 位可以产生一次更新事件 UEV,但不设置 UIF 标志(即没有中断)。当发生一次更新事件时,所有寄存器会被更新并(根据 URS位)设置更新标志(TIMx_SR寄存器的 UIF位):

?传送预装载值(TIMx_PSC 寄存器的内容)至预分频器的缓冲区。

?自动重装载影子寄存器被更新为预装载值(TIMx_ARR)。

以下是一些在 TIMx_ARR=0x36 时不同时钟频率下计数器工作的图示例子。

wKgZPGg2a3WAfeKNAACdaid69kQ296.png

计数器时序图,内部时钟分频系数为 1

wKgZO2g2a3WANKxDAACBIb8gR4w887.png

计数器时序图,内部时钟分频系数为 2

wKgZO2g2a3WANKxDAACBIb8gR4w887.png

计数器时序图,内部时钟分频系数为 4

wKgZPGg2a3WAYpkTAAB3d-K1zsk467.png

计数器时序图,内部时钟分频系数为 N

wKgZO2g2a3WACjZoAADJzc2fpP4653.png

计数器时序图,当 ARPE=0 时的更新事件(TIMx_ARR 没有预装载)

计数器时序图,当 ARPE=1 时的更新事件(预装载 TIMx_ARR)

时钟源

计数器的时钟由内部时钟(CK_INT)提供。TIMx_CR1 寄存器的 CEN 位和 TIMx_EGR 寄存器的 UG 位是实际的控制位,(除了 UG 位被自动清除外)只能通过软件改变它们。一旦置 CEN 位为'1',内部时钟即向预分频器提供时钟。下图示出控制电路和向上计数器在普通模式下,没有预分频器时的操作。

wKgZO2g2a3WARGH_AACLIBI4v60091.png

普通模式时序图,内部时钟分频系数为 1

1.4 调试模式

当微控制器进入调试模式(Cortex-M3 核心停止)时,根据 DBG 模块中的配置位 DBG_TIMx_STOP 的设置,TIMx 计数器或者继续计数或者停止工作。

2 寄存器描述

TIM6 和 TIM7 寄存器:可以用半字(16 位)或字(32 位)的方式操作这些外设寄存器。

2.1 TIM6和TIM7控制寄存器 1(TIMx_CR1)

偏移地址:0x00

复位值:0x0000

wKgZO2g2a3aALiamAATogyPArt4300.png

2.2 TIM6和TIM7控制寄存器 2(TIMx_CR2)

偏移地址:0x04

复位值:0x0000

wKgZPGg2a3aARlP7AAOLIozTFdc217.png

2.3 TIM6和TIM7DMA/中断使能寄存器(TIMx_DIER)

偏移地址:0x0C

复位值:0x0000

wKgZPGg2a3aAKG0mAAHHM13sljs555.png

2.4 TIM6和TIM7状态寄存器(TIMx_SR)

偏移地址:0x10

复位值:0x0000

wKgZPGg2a3aAd29ZAAGN_F3UMJ8338.png

2.5 TIM6和TIM7事件产生寄存器(TIMx_EGR)

偏移地址:0x14

复位值:0x0000

wKgZO2g2a3aABmX9AAE00gsRxTk694.png

2.6 TIM6和TIM7计数器(TIMx_CNT)

偏移地址:0x24

复位值:0x0000

wKgZPGg2a3WADaJdAAB57Ur17y8509.png

2.7 TIM6和TIM7预分频器(TIMx_PSC)

偏移地址:0x28

复位值:0x0000

wKgZO2g2a3aAOXMGAAD-L3TOlfQ415.png

2.8 TIM6和TIM7自动重装载寄存器(TIMx_ARR)

wKgZO2g2a3aAZgwWAAETNuGLoJE645.png

2.9 TIM6和TIM7寄存器

下表中将 TIMx 的所有寄存器映射到一个 16 位可寻址(编址)空间。

wKgZPGg2a3aAPcQxAAFXqaoE380575.png

WIZnet 是一家无晶圆厂半导体公司,成立于 1998 年。产品包括互联网处理器 iMCU?,它采用 TOE(TCP/IP 卸载引擎)技术,基于独特的专利全硬连线 TCP/IP。iMCU? 面向各种应用中的嵌入式互联网设备。

WIZnet 在全球拥有 70 多家分销商,在香港、韩国、美国设有办事处,提供技术支持和产品营销。

香港办事处管理的区域包括:澳大利亚、印度、土耳其、亚洲(韩国和日本除外)。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6068

    文章

    45032

    浏览量

    651953
  • 寄存器
    +关注

    关注

    31

    文章

    5439

    浏览量

    124932
  • 计数器
    +关注

    关注

    32

    文章

    2292

    浏览量

    96539
  • 定时器
    +关注

    关注

    23

    文章

    3302

    浏览量

    119371
  • WIZnet
    +关注

    关注

    3

    文章

    20

    浏览量

    42475
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    第十章 W55MH32中断应用概览

    本章讲述了W55MH32中断应用,涵盖异常类型、NVIC介绍、优先级定义与分组,阐述中断编程三要点(使能中断、配置 NVIC、编写服务函数),并强调优先级分组设置注意事项。
    的头像 发表于 05-22 17:07 ?1106次阅读
    <b class='flag-5'>第十章</b> <b class='flag-5'>W55MH32</b>中断应用概览

    自己编的信号与系统(西安电子科大版)第十章课后答案...

    分享 一下 自己编写的信号与系统(西安电子科大版)的第十章课后习题的Matlab程序。
    发表于 11-21 13:06

    明德扬视频分享点拨FPGA课程--第十章 ?GVIM的使用

    第十章GVIM的使用1. GVIM使用2http://yunpan.cn/cjZTiDA9pY56x访问密码 c359
    发表于 11-10 08:59

    《测控电路》习题完整参考答案(第十章

    《测控电路》习题完整参考答案(第十章).pdf
    发表于 05-07 11:43

    HCIE复习资料第十章 特性

    HCIE复习资料第十章 特性,HCIE全套复习资料
    发表于 05-10 17:22 ?0次下载

    《测控电路》习题完整参考答案(第十章

    《测控电路》习题完整参考答案(第十章
    发表于 02-14 17:01 ?0次下载

    WIZnet高性能以太网单片机W55MH32重磅发布!

    WIZnet高性能以太网单片机W55MH32重磅发布!本文详细解析了W55MH32芯片的高性能网络处理能力与硬件资源,以及两款
    的头像 发表于 05-07 16:17 ?474次阅读
    <b class='flag-5'>WIZnet</b>高性能<b class='flag-5'>以太网</b><b class='flag-5'>单片机</b><b class='flag-5'>W55MH32</b>重磅发布!

    即刻启程,踏上W55MH32高性能以太网单片机学习之路!

    即刻启程,踏上W55MH32高性能以太网单片机学习之路!即刻开启W55MH32学习之旅!本教系列程配套官方手册与W55MH32L
    的头像 发表于 05-07 18:51 ?453次阅读
    即刻启程,踏上<b class='flag-5'>W55MH32</b>高性能<b class='flag-5'>以太网</b><b class='flag-5'>单片机</b>学习之路!

    第十二章 SysTick——系统定时器

    本章介绍了W55MH32的SysTick系统定时器,它是24位递减计数,含4个寄存,可配置定时、中断,用于产生时基 等。
    的头像 发表于 05-22 17:16 ?516次阅读
    <b class='flag-5'>第十二章</b> SysTick——系统<b class='flag-5'>定时器</b>

    第一 W55MH32 高性能以太网单片机的学习方法概述

    本章介绍W55MH32的学习方法,建议先了解硬件资源,按基础篇、入门篇循序渐进学习。参考两份手册,提供例程资料,还给出官、github 等学习资料查找渠道。让我们一起踏上W55MH32高性能
    的头像 发表于 05-26 09:07 ?157次阅读
    第一<b class='flag-5'>章</b> <b class='flag-5'>W55MH32</b> 高性能<b class='flag-5'>以太网</b><b class='flag-5'>单片机</b>的学习方法概述

    第二 开发板与芯片介绍 详解W55MH32芯片及开发

    本章介绍了W55MH32芯片及开发板。该芯片采用Cortex-M3内核,主频216MHz,集成以太网功能,有L和Q两种型号。配套开发板L-EVB功能丰富、Q-EVB为最小系统板,均含仿
    的头像 发表于 05-26 09:19 ?469次阅读
    第二<b class='flag-5'>章</b> <b class='flag-5'>开发</b>板与芯片介绍  详解<b class='flag-5'>W55MH32</b>芯片及<b class='flag-5'>开发</b>板

    WIZnet W55MH32以太网单片机开发教程 第十一章 通用定时器(上篇)

    本章介绍了W55MH32的通用定时器TIM2~TIM5,其由 16 位计数等构成,具输入捕获等功能,有多种计数模式及时钟选择。对例程进行了讲解并下载验证,TIM9~14功能类似,详见《W55
    的头像 发表于 05-28 10:12 ?421次阅读
    <b class='flag-5'>WIZnet</b> <b class='flag-5'>W55MH32</b><b class='flag-5'>以太网</b><b class='flag-5'>单片机</b><b class='flag-5'>开发</b>教程 <b class='flag-5'>第十</b>一章 通用<b class='flag-5'>定时器</b>(上篇)

    WIZnet W55MH32以太网单片机开发教程第十一章 通用定时器(下篇)

    本章为W55MH32通用定时器的下篇,介绍了TIM_InputCapture 等 4 个程序设计例程,涉及输入捕获、PWM 输出、中断测试、触摸检测等功能和例程下载验证情况,如串口输出、波形检测等。
    的头像 发表于 05-28 10:48 ?515次阅读
    <b class='flag-5'>WIZnet</b> <b class='flag-5'>W55MH32</b><b class='flag-5'>以太网</b><b class='flag-5'>单片机</b><b class='flag-5'>开发</b>教程<b class='flag-5'>第十</b>一章 通用<b class='flag-5'>定时器</b>(下篇)

    第二 W55MH32 DHCP示例

    本文介绍 DHCP?协议,包括其在 IP?网络自动分配参数的功能、便捷配置等特点、工作原理、报文格式和应用场景。通过 W55MH32?实战例程展示动态获取网络地址信息过程,含注册定时器中断、启用模式和获取信息等步骤,烧录后可完成检测与信息打印,PC?端能 PING?通设备
    的头像 发表于 07-24 09:02 ?184次阅读
    第二<b class='flag-5'>章</b> <b class='flag-5'>W55MH32</b> DHCP示例

    第十章 W55MH32 SNTP示例

    本文讲解了如何在W55MH32芯片上实现SNTP授时功能,通过实例详细展示了从SNTP服务同步时间的实现流程,包括时间请求、响应解析和本地时间校准等核心步骤。文章还对SNTP的应用场景进行了分析,帮助读者理解其在时间同步中的实际应用价值。
    的头像 发表于 07-24 09:43 ?298次阅读
    <b class='flag-5'>第十章</b> <b class='flag-5'>W55MH32</b> SNTP示例