你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

RM0090文档和KEIL上的ETH_MMCTIMR寄存器的TGFM位不一致

[复制链接]
jfity 提问时间:2025-1-7 10:25 / 已解决

image.png

image.png

文档上TGFM是在bit21,KEIL上在bit16。哪个才是正确的?KEIL用的是STM32F407ZGT6芯片

收藏 评论2 发布时间:2025-1-7 10:25

举报

2个回答
xmshao 最优答案 回答时间:前天 13:50
这个问题还真有点稀罕。


我这边查看、测试了三种可用于STM32开发的IDE, KEIL, IAR, stm32cbueIDE,他们对TGFM的定义都在位16,
而手册明明是位21.


结合手册定义和相关代码的写法,经过我的初步判断,应该是IDE这个地方弄错了。


下面是头文件中的定义:


/* Bit definition for Ethernet MMC Transmit Interrupt Mask Register */
#define ETH_MMCTIMR_TGFM_Pos                          (21U)
#define ETH_MMCTIMR_TGFM_Msk                          (0x1UL Instance->MMCTIMR, ETH_MMCTIMR_TGFM | ETH_MMCTIMR_TGFMSCM | \
          ETH_MMCTIMR_TGFSCM);


这个地方我会再确认后,这里进一步回复你。
sklaoshiren 回答时间:前天 13:18

以芯片手册为准,keil显示的值是0x0020C000,是三个bit置1,和手册三个有效的bit位一致,正好是bit21bit15bit14置1,keil标注的位置错了,TGFM应该是在bit21

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版