Q5.1 Set Bits

手把手教你用STM32CubeMX和Keil5给F411开发板驱动W25Q64 Flash(附完整代码) 本文详细介绍了如何使用STM32CubeMX和Keil5为F411开发板驱动W25Q64 Flash芯片的全流程。从硬件连接到软件配置,包括SPI接口设置、驱动代码实现及性能优化,提供了完整的实战指南和代码示例,帮助开发者快速掌握嵌入式存储解决方案。 阅读详情
Q:

You are given two 32-bit numbers, N and M, and two bit positions, i and j. Write a method to set all bits between i and j in N equal to M (e.g., M becomes a substring of N located at i and starting at j).

EXAMPLE:

Input: N = 10000000000, M = 10101, i = 2, j = 6

Output: N = 10001010100

A:

先将N的第0为到i位保存到ret,不包括第i位, 接下来将N的第0位到第j位置0, 包括第j位。 最后或上(m<<i) | ret。 

#include <iostream>
#include <vector>
using namespace std;

void print_binary(int n) {
	vector<int> bit;
	int m = 1;
	int len = 8*sizeof(int);
	while(len--) {
		if (n&m) bit.push_back(1);
		else bit.push_back(0);
		m <<= 1;
	}
	while (!bit.empty()) {
		cout<<bit.back();
		bit.pop_back();
	}
	cout<<endl;
}

int update_bits(int n, int m, int i, int j) {
	int ret = (1<<i)-1;
	ret &= n;
	return (n>>(j+1))<<(j+1) | (m<<i | ret);
}

int main(){
    int n = 1<<10, m = 21;
    int ans = update_bits(n, m, 2, 6);
    print_binary(n);
    print_binary(m);
    print_binary(ans);
    return 0;
}


FPD-Link III解串器DS90UB940N-Q1寄存器配置实战与调试指南 在高速视频传输系统中,串行器/解串器(SerDes)技术是解决长距离、高带宽数据可靠传输的核心。其原理是通过并串转换、时钟嵌入与恢复,在单对差分线上实现多路信号的同步传输,从而大幅减少线缆数量、降低EMI并提升系统可靠性。这项技术的核心价值在于为汽车摄像头、工业视觉等对实时性要求严苛的应用提供了稳定、低延迟的物理层解决方案。在实际工程中,SerDes芯片的性能发挥高度依赖于其内部寄存器的正确配置,这直接决定了链路建立、信号完整性、数据路径控制及系统功能实现。本文以德州仪器(TI)车规级FPD-Link II 阅读详情

相关推荐

DS90UB662-Q1传感器集线器:I2C时序与FPD-Link III到CSI-2桥接实战

在嵌入式视觉与车载系统中,串行解串行(SerDes)技术是解决多传感器高速数据传输与布线复杂性的核心。其原理在于将并行数据通过差分线对进行远距离、抗干扰传输,而I2C总线则作为系统的控制神经,负责精准配置传感器与串行器。这项技术的核心价值在于简化系统架构、降低EMC设计难度,并提升信号完整性,广泛应用于ADAS、环视系统等场景。本文聚焦于德州仪器的FPD-Link III传感器集线器DS90UB662-Q1,深入解析其如何作为高速数据枢纽,将多个摄像头数据流聚合并转换为标准的MIPI CSI-2输出。通过剖

wentao365的专栏 401

fastdds:wait-set

读取数据的方式有两种:Listener和Wait-set。Listener方式,使用简单,参考fastdds example中的hello_world,创建一个DataReaderListener的派生类,实现对应的虚函数;创建data reader的时候将这个对象当做listener的实参进行传递即可。这样当有DataWriter match的时候或者有数据到来的时候就,对应的回调函数就可以被调用到。

weixin_38184628的博客 995

GLM-5.1模型结构深度解析:MoE、Attention与Config工程耦合机制

大语言模型的结构设计是性能与部署效能的核心基础。从Transformer通用范式出发,MoE(Mixture of Experts)通过动态路由提升参数效率,Attention机制决定长程建模能力,而config文件则承载着架构意图与硬件适配约束。三者并非独立模块,而是深度耦合的技术闭环:MoE路由依赖Attention输出的token级置信度,Attention行为又受config中qk_norm、rope_linear_decay、structured_dropout等定制化参数联合调控,而config

weixin_30394981的博客 389

Win8.1永久禁用Windows Update的三层防御方案

Windows Update禁用本质上是系统服务依赖管理与策略控制问题。其核心原理在于阻断wuauserv服务的启动路径、BITS等依赖服务的唤醒机制,以及组策略刷新导致的配置回滚。技术价值体现在稳定性、可逆性与无第三方依赖,适用于老旧工业设备、医疗终端及中小企业IT运维场景。尤其针对Win8.1系统中Windows Update Medic Service自愈、CryptSvc签名验证、服务依赖链自动恢复等隐蔽机制,需结合服务配置、组策略锁定与注册表权限控制实现真正‘失能’。本文详解基于sc命令、gped

WGH100817的博客 477

手把手教你用STM32CubeMX和HAL库搞定W25Q64外部Flash读写(基于F411-WeAct开发板)

本文详细介绍了如何使用STM32CubeMX和HAL库在F411开发板上实现W25Q64外部Flash的读写操作。从硬件连接到SPI配置,再到HAL库驱动的开发与优化,提供了完整的实战指南。特别关注了工程实践中的关键细节和常见问题排查方法,帮助开发者高效完成嵌入式存储扩展项目。

weixin_30800807的博客 366

W25Q256JV的QE位陷阱:QSPI模式失效排查与状态寄存器配置指南

在嵌入式系统中,SPI NOR Flash 因其容量大、接口简单,常被用作固件存储、日志记录和 FOTA 升级的介质。而 QSPI 四线模式能大幅提升读取带宽,是高速运行的常见选择。但往往不是时序或供电问题,而是 Flash 内部的状态寄存器配置不当,尤其是 QE(Quad Enable)位未正确置 1,导致四线读写全部异常。状态寄存器是 NOR Flash 的“控制中枢”,它管理着写保护、区块锁定、Quad 功能使能等关键特性。理解其寄存器布局与读写命令,是调试 Flash 的基础。本文从一次 Winbo

weixin_34327223的博客 291

ik_llama.cpp CPU 提示词处理提速第三弹:非交错量化类型的 Q8 行交错重打包 GEMM 优化解析

本篇技术指南聚焦 ik_llama.cpp 项目中 PR #534《Much faster CPU prompt processing (part 3)》所实现的 CPU 端 prompt processing(PP)加速方案。该 PR 是此前 #531、#533 两个提速工作的延续,目标是为剩余的非交错(non-interleaved)量化类型——`Q2_K`、`IQ4_XS`、`IQ4_NL`

gitblog_00162的博客 959

OpenHarmony 5.1 RK3568 开发板烧录:从源码编译到镜像写入的 6 步实战

本文详细解析了OpenHarmony 5.1在RK3568开发板上的全链路开发流程,包括环境搭建、源码编译、镜像烧录等6个关键步骤。通过实战指南和避坑技巧,帮助开发者快速掌握OpenHarmony系统的烧录与定制能力,提升物联网设备开发效率。

weixin_33722405的博客 343

VS2019中bits/stdc++.h缺失原因与安全添加方案

bits/stdc++.h 是 GNU C++ 标准库(libstdc++)提供的非标准头文件聚合体,本质是编译器特定的便捷封装,并非 C++ 标准组成部分。其原理在于一次性包含 STL 常用组件,但会显著增加编译开销、破坏依赖可见性并引发跨实现兼容性问题。在 Microsoft Visual Studio 2019 中,因底层采用 MSVC STL 而非 libstdc++,该头文件天然不被支持——这不是 Bug,而是标准库实现差异导致的技术隔离。其技术价值仅限于算法竞赛等对编译速度不敏感、强调编码效率的

weixin_34013044的博客 348

VCSA的vmware-updatemgr服务无法启动和vSAN界面报“certificate chain is not trusted and thumbprint doesn‘t match”处理

"Unable to update CM service info"和"Server certificate chain is not trusted and thumbprint doesn't match"问题处理

jetliu05的博客 1882

基于gem5模拟trace的cache模拟器的实现

在做计算机体系结构的时候,模拟器是一个重要且又有效的工具。其中gem5集成了gem和m5的优点,使用起来比较简单和方便。其中包括了se模式和fs模式,se模式是在gem5运行我们已经编译好的程序,可以获取cache,cpu状态等数据,fs模式下可以模拟操作系统,我们可以将我们自己修改的linux内核加载到哥们上运行。下面介绍了使用gem5的se模式,运行编译好的ARM可执行文件。获取访存的trac

gaoxiang的专栏 8891

GDAL JAXA PALSAR 驱动详解:读取 ALOS PALSAR L1.1/L1.5 处理产品的完整指南

本指南围绕 GDAL 栅格驱动家族中的 **JAXAPALSAR** 驱动展开,讲解如何在 GDAL 生态中直接打开并读取日本宇宙航空研究开发机构(JAXA)及其合作地面站(ASF、ESA)分发的 ALOS PALSAR 雷达处理产品。读完本文,你将掌握 PALSAR 产品(VOL- 卷目录文件 + IMG-* 影像文件 + LED 领航文件)的目录结构认知、正确的打开方式、Level 1.1/1

gitblog_00392的博客 169

别再调参了!用Simulink手把手教你搞定FOC电机速度环PI控制器(附模型下载)

本文详细介绍了如何使用Simulink搭建FOC电机速度环PI控制器,通过模最优准则和系统化调试方法,避免传统手动调参的繁琐过程。文章包含从传递函数推导到参数自动整定的完整流程,并提供了实战调试技巧与异常处理指南,帮助工程师快速实现电机控制系统的稳定运行。

weixin_42519985的博客 413

TL16C752CI-Q1增强型UART芯片:RS-485与IrDA模式配置与实战解析

串口通信(UART)作为嵌入式系统中最基础、最广泛应用的异步串行通信接口,其核心原理是通过起始位、数据位和停止位的时序组合实现设备间的数据交换。在工业控制、传感器网络等复杂场景中,标准UART常面临多节点、长距离和高可靠性的挑战。为此,增强型UART芯片通过集成深度FIFO、硬件流控和专用协议支持等高级功能,显著提升了通信效率和稳定性。其技术价值在于将工程师从繁琐的底层时序管理中解放出来,实现更可靠的工业级通信。典型应用场景包括RS-485总线网络和IrDA红外数据传输。本文聚焦于TL16C752CI-Q1

weixin_34345753的博客 281

2026年4月AI爆发周:阿里连推三款模型、字节全双工语音上线,国内大模型进入“落地竞速“新阶段

**摘要:**2026年4月初,国内AI大模型迎来密集发布,阿里、字节、腾讯分别推出新产品。阿里一周发布三款模型,覆盖通用推理、多模态轻量化和长文档处理,API价格大幅下降;字节推出全双工语音模型,实现实时交互,技术难度高;腾讯混元3.0强调工程化和生态整合,面向企业私有化部署。趋势显示,行业从性能竞赛转向落地竞赛,多模态成为主战场,API成本降低,开发者选择更丰富。国内大模型竞争重点转向实际应用和生态整合。

weixin_45526015的博客 1万+

OFDM基本原理

OFDM基础介绍,包括OFDM的核心思想,数学推导了OFDM信号的调制解调过程。

伊丽莎白的学习之路 8908

STC3115电池监控方案与PIC18F57Q43的工程实践

电池管理系统(BMS)是电子设备稳定运行的核心组件,其核心在于精确监控电池状态。传统电压测量方法存在较大误差,而库仑计数技术通过实时跟踪电荷量,将电量估算误差控制在5%以内。STC3115芯片结合专利技术,实现了高精度电量监测,配合PIC18F57Q43 MCU,可扩展充放电曲线分析、温度补偿等高级功能。在工业传感器、智能家居等场景中,这种方案能有效避免数据丢失和突然断电问题。热词:库仑计数、电池健康度评估。

weixin_30915275的博客 388

第9.3章 从CMake基础到自动驾驶实战:构建跨平台C/C++项目的全能指南

《CMake构建实战:项目开发卷》精要指南 本文系统梳理了许宏旭《CMake构建实战》核心内容,涵盖C++构建全流程: 基础构建:详解MSVC/GCC编译器使用、Makefile编写及静态/动态库构建方法 CMake核心:解析语法结构、变量控制、文件操作等关键命令,阐述项目全生命周期管理 实战应用:通过快速排序、手写数字识别项目演示现代CMake实践,特别针对自动驾驶领域给出多传感器融合、SLAM等场景的CMake配置方案 特色价值:本书填补了官方文档实例不足的空白,提供300+代码示例,是掌握工业级C++

行知SLAM 1343

别再乱调SPI时钟了!手把手教你用STM32CubeMX配置SPI速率(附W25Q64读写实战)

本文详细介绍了如何使用STM32CubeMX配置SPI时钟速率,解决W25Q64 Flash读写异常问题。通过分析SPI时钟原理、常见误区及CubeMX可视化配置流程,帮助开发者在速度与稳定性之间找到最佳平衡点,提升SPI通讯速率与信号完整性。

weixin_33976072的博客 502

用 OP-TEE 给 AI 模型“上锁”:密文存储、TEE 解密放行、推理后销毁(实战可落地)

本文提出一种基于OP-TEE的AI模型保护方案,通过两级密钥体系确保模型静态存储为密文,运行时仅在TEE内解密。方案采用KEK+DEK架构,DEK永不出TEE,支持分块解密与可验证擦除。该方案能有效防御静态分析、应用层逆向等威胁,但需承认其物理级攻击的局限性。文章详细描述了端到端架构、文件格式设计及TA实现要点,包括密钥管理、分块解密策略和销毁机制,为设备侧AI部署提供了工程可行的安全解决方案。

Interview_TC的博客 288

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

x16-PRos 开发者贡献完整指南:NASM 编码规范 + 程序模板 + 提交 PR 流程

x16-PRos 是一个完全用 **NASM 汇编语言**从零编写的 16 位实模式(real mode)操作系统,自带终端、GUI 桌面、FAT12 文件系统、原生汇编器和 40+ 内置程序。无论你是想写第一个 "Hello World" 终端程序,还是贡献一个窗口化 GUI 应用,这份开发者贡献指南都会带你走完:搭建环境 → 遵循 NASM 编码规范 → 套用程序模板 → 提交 PR 的完整流

gitblog_00499的博客 303

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

GD25Q80E与STM32 QSPI深度协同实战指南

SPI NOR Flash是一种具备独立状态机、指令集和擦写寿命约束的非易失性存储器件,其本质不是被动外设而是智能存储子系统。理解其JEDEC兼容性、Quad Enable机制、状态寄存器(SR1/Flag SR)双校验逻辑及页编程边界规则,是实现可靠通信的基础。技术价值在于支撑OTA固件升级、Bootloader安全跳转与GUI资源缓存等关键嵌入式场景;而工程落地必须兼顾物理层时序裕量(如tDS/tDH)、CubeMX中QSPI寄存器级配置(Address Size、Dummy Cycles、Memory

weixin_34199405的博客 264

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

MC6470与PIC18F47Q10实现高精度运动控制方案

惯性测量单元(IMU)作为运动感知的核心器件,通过加速度计和磁力计的组合实现空间姿态检测。MC6470作为6自由度IMU传感器,配合PIC18F47Q10微控制器构建的嵌入式系统,能够实现亚毫米级精度的运动跟踪。在工业自动化、消费电子等领域,这类方案广泛应用于机械臂控制、无人机定位等场景。通过I2C接口配置、传感器数据校准以及互补滤波等算法处理,系统可输出稳定的三维姿态数据。特别在PID控制器设计和低功耗优化方面,展现了嵌入式硬件与运动控制算法的深度结合。

weixin_30879833的博客 384

GD25Q80E实战:从SPI到QSPI的嵌入式Flash驱动开发

在嵌入式系统开发中,片内存储空间往往受限,外部串行存储芯片成为扩展存储的常见方案。SPI NOR Flash凭借接口简洁、读取速度快、容量适中,成为固件存储、OTA升级与字库保存的理想选择。理解SPI通信协议、命令时序与状态寄存器轮询机制,是驱动该芯片的底层基础。从GPIO软SPI验证时序,到STM32硬件SPI提升稳定性,再到DMA降低CPU占用,最后使用QSPI外设将读取带宽提升数倍,这一完整路径能帮助开发者高效掌握NOR Flash驱动开发。本文以GD25Q80E为例,结合典型踩坑案例,详细介绍SPI

weixin_34025151的博客 375

STM32F407通过CubeMX配置SPI读写W25Q128 NorFlash完整指南

在嵌入式开发中,SPI是一种广泛使用的同步串行通信接口,以其高速、全双工和简洁的接线方式成为连接主控与存储芯片的首选。NorFlash作为非易失性存储器,具备随机读取快、擦写寿命长等特点,常用于固件升级和参数持久化存储。STM32CubeMX作为意法半导体官方配置工具,能够快速生成HAL库工程,大幅降低外设初始化的复杂度。但在实际使用SPI驱动W25Q128等NorFlash芯片时,开发者常常遇到时钟配置错误、片选时序异常、跨页写入回卷等棘手问题。本文从SPI协议的基本原理出发,梳理CPOL/CPHA模式选

weixin_34319374的博客 264

国产电视去广告:开源桌面 Aerial 两天 2000+ 星,把开机满屏推荐流换回干净桌面

一个开源项目,**两天从 0 涨到 2000+ 星**、100 多个 Fork,还从程序员圈子一路传到了微博和科技媒体。它叫 **Aerial**,定位就一句话:**给国产电视做"电视去广告"的开源桌面**——没有推荐流、没有会员角标,开机只看到你的 App、一张壁纸和一个大时钟。 ## 开机先看的那块"广告牌" 先把画面放回去:按下开机键,先是一段去不掉的广告;进了桌面,一半屏幕是"猜你喜欢

gitblog_00889的博客 399
上一篇: Q4.9 Find all paths which sum to a given value
下一篇: Q5.2 Print the binary representation
「已注销」
博客等级 码龄15年 5粉丝 218原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值