发布时间:2026/7/31 3:51:47
norflash.h /******************************************************************************************************* file norflash.h* author 正点原子团队(ALIENTEK)* version V1.0* date 2020-04-24* brief NOR FLASH(25QXX) 驱动代码* license Copyright (c) 2020-2032, 广州市星翼电子科技有限公司***************************************************************************************************** attention** 实验平台:正点原子 STM32F103开发板* 在线视频:www.yuanzige.com* 技术论坛:www.openedv.com* 公司网址:www.alientek.com* 购买地址:openedv.taobao.com** 修改说明* V1.0 20200424* 第一次发布******************************************************************************************************/#ifndef __norflash_H#define __norflash_H#include ../../SYSTEM/sys/sys.h/******************************************************************************************//* NORFLASH 片选信号 */#define NORFLASH_CS(x) do{ x ? \HAL_GPIO_WritePin(NORFLASH_CS_GPIO_Port, NORFLASH_CS_Pin, GPIO_PIN_SET) : \HAL_GPIO_WritePin(NORFLASH_CS_GPIO_Port, NORFLASH_CS_Pin, GPIO_PIN_RESET); \}while(0)/* FLASH芯片列表 */#define W25Q80 0XEF13 /* W25Q80 芯片ID */#define W25Q16 0XEF14 /* W25Q16 芯片ID */#define W25Q32 0XEF15 /* W25Q32 芯片ID */#define W25Q64 0XEF16 /* W25Q64 芯片ID */#define W25Q128 0XEF17 /* W25Q128 芯片ID */#define W25Q256 0XEF18 /* W25Q256 芯片ID */#define BY25Q64 0X6816 /* BY25Q64 芯片ID */#define BY25Q128 0X6817 /* BY25Q128 芯片ID */#define NM25Q64 0X5216 /* NM25Q64 芯片ID */#define NM25Q128 0X5217 /* NM25Q128 芯片ID */extern uint16_t norflash_TYPE; /* 定义FLASH芯片型号 *//* 指令表 */#define FLASH_WriteEnable 0x06#define FLASH_WriteDisable 0x04#define FLASH_ReadStatusReg1 0x05#define FLASH_ReadStatusReg2 0x35#define FLASH_ReadStatusReg3 0x15#define FLASH_WriteStatusReg1 0x01#define FLASH_WriteStatusReg2 0x31#define FLASH_WriteStatusReg3 0x11#define FLASH_ReadData 0x03#define FLASH_FastReadData 0x0B#define FLASH_FastReadDual 0x3B#define FLASH_FastReadQuad 0xEB#define FLASH_PageProgram 0x02#define FLASH_PageProgramQuad 0x32#define FLASH_BlockErase 0xD8#define FLASH_SectorErase 0x20#define FLASH_ChipErase 0xC7#define FLASH_PowerDown 0xB9#define FLASH_ReleasePowerDown 0xAB#define FLASH_DeviceID 0xAB#define FLASH_ManufactDeviceID 0x90#define FLASH_JedecDeviceID 0x9F#define FLASH_Enable4ByteAddr 0xB7#define FLASH_Exit4ByteAddr 0xE9#define FLASH_SetReadParam 0xC0#define FLASH_EnterQPIMode 0x38#define FLASH_ExitQPIMode 0xFF/* 普通函数 */void norflash_init(void); /* 初始化25QXX */uint16_t norflash_read_id(void); /* 读取FLASH ID */void norflash_write_enable(void); /* 写使能 */uint8_t norflash_read_sr(uint8_t regno); /* 读取状态寄存器 */void norflash_write_sr(uint8_t regno,uint8_t sr); /* 写状态寄存器 */void norflash_erase_chip(void); /* 整片擦除 */void norflash_erase_sector(uint32_t saddr); /* 扇区擦除 */void norflash_read(uint8_t *pbuf, uint32_t addr, uint16_t datalen); /* 读取flash */void norflash_write(uint8_t *pbuf, uint32_t addr, uint16_t datalen); /* 写入flash */#endif

相关新闻

2026/7/31 3:51:47

从PPG原理到实践:手把手教你设计高精度电子脉搏计

1. 从零到一:一个电子脉搏计项目的诞生几年前,我接手了一个健康监测设备的小项目,核心需求是设计一个能稳定、准确测量人体脉搏的便携式设备。当时市面上虽然有各种智能手环,但要么精度存疑,要么数据封闭,无…

2026/7/31 3:51:47

改考!速看!408改信号!

西南大学官方于今年6月29日发布了关于2027年硕士研究生招生专业及考试科目参阅范围的公告,涉及到信号与系统的一个专业。详情如下: 图1:西南大学改考通告 https://ceie.swu.edu.cn/info/1058/6119.htm图2:西南大学27初试科目参阅范…

2026/7/31 3:51:47

如何通过Rectangle实现macOS窗口管理革命:新手完整指南

如何通过Rectangle实现macOS窗口管理革命:新手完整指南 【免费下载链接】Rectangle Move and resize windows on macOS with keyboard shortcuts and snap areas 项目地址: https://gitcode.com/gh_mirrors/re/Rectangle 你是否曾经在Mac上同时打开多个窗口&…

2026/7/31 4:51:49

AI写作工具在学术专著创作中的高效应用

1. AI写作工具在学术专著创作中的革命性应用当我在2022年第一次尝试用AI工具辅助完成我的第三本专业著作时,那种效率提升的震撼感至今难忘。传统专著写作往往需要耗费学者数月甚至数年的心血,而现在,合理运用AI工具可以将初稿产出时间缩短60%…

2026/7/31 4:51:49

LangGraph 工作流:为什么 Agent 能跑通却不敢上线?

聊《一次LangGraph项目复盘,问题最后出在流程而不是模型》之前,先说一句实在的:别急着背概念,先看它在真实项目里到底解决什么问题。摘要摘要: 从 Demo 到生产,Agent 应用最危险的环节往往不是模型精度&…

2026/7/31 4:51:49

STM32串口通信实战:CH340驱动安装、硬件连接与程序下载全攻略

1. 项目概述:从零开始玩转STM32与CH340串口通信如果你刚拿到一块STM32最小系统板,比如最常见的STM32F103C8T6“蓝色药丸”,第一件事可能就是想着怎么把程序下载进去,或者怎么让板子跟电脑“说上话”。这时候,你大概率会…

2026/7/31 4:51:49

树形DP核心解析:从AcWing 285看状态转移与C++实现

1. 项目概述:从一道题看透树形DP的骨架最近在带新人刷题,发现很多朋友卡在AcWing 285这道题上。题目本身不复杂,但它是理解“树形动态规划”这个经典算法范式的绝佳入口。很多人学算法,一上来就背状态转移方程,结果换个…

2026/7/31 4:51:49

Coze 零代码实战|基于RAG知识库+双数据库联动搭建AI学习智能客服

传统AI客服大多仅支持简单的闲聊对话,功能单一、扩展性极差,不仅无法读取私有专属学习资料,容易出现大模型幻觉问题,还不具备自动化资料整理、在线答题测评、报告生成等实用能力,很难满足专业化AI学习服务场景需求。本…

2026/7/31 4:46:49

逻辑回归 + 交叉验证:信用卡欺诈检测中的样本不均衡解决方案

前言在机器学习分类问题中,样本不均衡是一个非常常见且棘手的问题。以信用卡欺诈检测为例,正常交易的数量远远多于欺诈交易(通常欺诈比例不到1%)。如果直接将这样的数据丢给模型,模型会倾向于将所有样本预测为“正常”…

2026/7/29 22:32:30

PDF合并与动态水印的工程化方案:2026国内免费工具实测对比

一、背景与测试方案 在实际项目交付中,PDF文件合并与版权保护水印的叠加是一个高频但容易被低估的技术需求。典型的处理链路涉及:多源PDF的文件流合并、页面级水印渲染(含透明度混合与图层叠加)、输出文件体积控制。看似简单的操作…

2026/7/31 0:01:11

物理复制比逻辑复制好在哪?数据库复制原理详解

数据库复制是把主库数据同步到备库的机制,分为逻辑复制和物理复制两种。逻辑复制传输的是 SQL 语句或行变更事件,物理复制传输的是存储引擎底层的物理日志。阿里云 PolarDB(云原生数据库)采用物理复制,在同步延迟、数据…

2026/7/31 0:01:11

BilibiliDown:3分钟学会B站视频下载的终极指南

BilibiliDown:3分钟学会B站视频下载的终极指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/bi/Bilib…

2026/7/31 0:01:11

有哪些游戏数据AI平台?游戏行业Data+AI融合方案盘点

当前,游戏行业的“DataAI融合”已从概念验证进入价值落地阶段。根据IDC 2025年数据,中国AI游戏云市场规模已达18.6亿元;同时,游戏研发环节AI渗透率高达86%,生成式AI内容普及率超过50%。面对庞大的市场,游戏…

2026/7/31 0:38:56

3个高效策略:快速掌握Axure中文界面配置

3个高效策略:快速掌握Axure中文界面配置 【免费下载链接】axure-cn Chinese language file for Axure RP. Axure RP 简体中文语言包。支持 Axure 11、10、9。不定期更新。 项目地址: https://gitcode.com/gh_mirrors/ax/axure-cn 还在为Axure RP的英文界面感…