news 2026/4/15 21:03:10

简单理解:如何操作寄存器清理对应的位,举例如下。

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
简单理解:如何操作寄存器清理对应的位,举例如下。

想只清倍频因子位(bit8~13)、丝毫不碰其他配置?必背底层位操作模板 + 完整规则解析,新手也能一次搞定:XT_CKCU->COREPLLCFGR &= ~(0x3F << 8);

一、先掌握 &= 核心规则(操作的根本逻辑)

&=(按位与赋值)是实现 “精准清位、保留其他” 的关键,规则只有两条,记死就行:

✅ 掩码对应位 = 1 → 保留寄存器原有值(1 & 原有值 = 原有值,不改动);

❌ 掩码对应位 = 0 → 强制将寄存器位清 0(0 & 原有值 = 0,必清空);我们的目标:仅清 bit8~13,其余位保留 → 必须打造 “bit8~13=0,其他位 = 1” 的理想掩码。

二、模板逐段拆解(每一步都为 &= 规则服务)

0x3F:十六进制 = 二进制00111111,6 个连续 1 → 作为 “6 位宽的目标位圈定器”,明确要操作 6 个连续位,为后续定位打基础;

<< 8:左移 8 位 → 把 6 个 1 精准平移到 bit8~13(PLL 倍频因子对应的位),锁定目标位置,避免操作跑偏到 bit0~5;

~:按位取反 → 把 “bit8~13=1,其他位 = 0” 的初始掩码,转换成 “bit8~13=0,其他位 = 1” 的理想掩码,完美匹配 &= 清位规则;

&=:按位与赋值 → 用理想掩码与寄存器原值运算,最终仅 bit8~13 被清 0,时钟源、分频系数等其他关键配置完全保留!

三、避坑三禁令(违背 &= 规则必出错)

  1. 禁省<<8:少了左移,6 个 1 停在 bit0~5,&= 后误清无关位,PLL 倍频因子没变化;
  2. 禁省~:省了取反,掩码是 “bit8~13=1,其他 = 0”,&= 后目标位保留、其他位全清,PLL 直接瘫痪;
  3. 禁换0x3F为 0:6 个 0 无法圈定目标位,掩码全 0,&= 后所有位清 0,寄存器配置全丢。

这行代码的精髓,就是让每一段都精准适配 &= 的位运算规则,实现 “最小改动、精准清位”——HC32 PLL 配置、寄存器目标位更新直接套用,收藏即用不踩坑!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/16 14:32:10

Docker安装Prometheus监控TensorFlow容器资源

Docker安装Prometheus监控TensorFlow容器资源 在现代AI工程实践中&#xff0c;一个常见的挑战是&#xff1a;如何在多任务并发的容器环境中&#xff0c;清晰掌握每个深度学习训练或推理任务的真实资源消耗&#xff1f;尤其是在使用TensorFlow这类高负载框架时&#xff0c;CPU飙…

作者头像 李华
网站建设 2026/4/16 11:05:54

Markdown流程图mermaid.js绘制Transformer架构图

使用 Mermaid.js 绘制 Transformer 架构图&#xff1a;轻量级可视化与 TensorFlow 开发环境的融合实践 在深度学习模型日益复杂的今天&#xff0c;如何清晰、高效地表达模型结构&#xff0c;已经成为科研与工程实践中不可忽视的一环。尤其是在 Transformer 架构主导 NLP、CV 和…

作者头像 李华
网站建设 2026/4/16 14:27:24

conda activate激活TensorFlow-v2.9虚拟环境常见问题

Conda 激活 TensorFlow-v2.9 环境的实战解析与问题排查 在深度学习项目开发中&#xff0c;环境配置常常是“第一道坎”。哪怕是最简单的 conda activate tensorflow_v29 命令&#xff0c;也可能因为路径、权限或依赖冲突导致失败。更令人头疼的是&#xff0c;错误提示往往模糊不…

作者头像 李华
网站建设 2026/4/16 11:02:09

conda env create -f重建TensorFlow-v2.9开发环境

使用 conda env create -f 重建 TensorFlow 2.9 开发环境&#xff1a;从实践到工程落地 在深度学习项目中&#xff0c;你是否遇到过这样的场景&#xff1f;模型在本地训练完美&#xff0c;部署到服务器却报错“找不到 cudart64_110.dll”&#xff1b;或者同事跑通的代码&#x…

作者头像 李华
网站建设 2026/4/16 11:56:38

5分钟搞定ggraph:让网络图可视化变得如此简单!

5分钟搞定ggraph&#xff1a;让网络图可视化变得如此简单&#xff01; 【免费下载链接】ggraph Grammar of Graph Graphics 项目地址: https://gitcode.com/gh_mirrors/gg/ggraph 还在为复杂的关系数据可视化发愁吗&#xff1f;面对网络图、树状图这类特殊数据结构&…

作者头像 李华
网站建设 2026/4/16 10:16:25

Java虚拟线程在高并发场景下的稳定性挑战:99%的团队都忽略了这4点

第一章&#xff1a;Java虚拟线程生产环境迁移的背景与必要性随着现代互联网应用对高并发处理能力的需求持续增长&#xff0c;传统基于操作系统线程的Java并发模型逐渐暴露出资源消耗大、上下文切换开销高等问题。每个传统线程在JVM中通常对应一个操作系统线程&#xff0c;创建数…

作者头像 李华