Clion开发stm32之微妙延迟(采用nop指令实现)
前言
- 需要借助逻辑分析仪动态调整参数
- 此次测试的开发芯片为stm32f103vet6
延迟函数
声明
#define NOP_US_DELAY_MUL_CNT 5 /*nop 微妙延迟需要扩大的倍数(根据实际动态修改)*/
void bsp_us_delay_nop(uint32_t us);void bsp_ms_delay_nop(uint32_t ms);
定义
void bsp_us_delay_nop(uint32_t us) {us = us * NOP_US_DELAY_MUL_CNT;while (us--) {__NOP();}
}void bsp_ms_delay_nop(uint32_t ms) {for (uint32_t i = 0; i < ms; ++i) {bsp_us_delay_nop(1);}
}
测试
static void TEST_init() {stm_pin_define_t *pb_5_ptr = stm_get_pin(PB5);stm32_pin_define_mode_set(pb_5_ptr, pin_mode_output);while (true) {stm32_pin_define_toggle(pb_5_ptr);bsp_us_delay_nop(2);}
}sys_init_export(TEST, TEST_init);
结果
满足预期效果

相关文章:
Clion开发stm32之微妙延迟(采用nop指令实现)
前言 需要借助逻辑分析仪动态调整参数此次测试的开发芯片为stm32f103vet6 延迟函数 声明 #define NOP_US_DELAY_MUL_CNT 5 /*nop 微妙延迟需要扩大的倍数(根据实际动态修改)*/ void bsp_us_delay_nop(uint32_t us);void bsp_ms_delay_nop(uint32_t ms);定义 void bsp_us_dela…...
Spring MVC -- 获取参数(普通对象+JSON对象+URL地址参数+文件+Cookie/Session/Header)
目录 1.获取参数 1.1获取单个参数 1.2获取多个参数 传参注意事项: 2.获取对象 3.后端参数重命名RequestParam 4.获取JSON对象RequestBody 5.从 URL 地址中获取参数 PathVariable 6.上传文件 RequestPart 7.获取Cookie/Session/Header 7.1 获取 Request 和…...
Langchain 的 Conversation summary memory
Langchain 的 Conversation summary memory 现在让我们看一下使用稍微复杂的内存类型 - ConversationSummaryMemory 。这种类型的记忆会随着时间的推移创建对话的摘要。这对于随着时间的推移压缩对话中的信息非常有用。对话摘要内存对发生的对话进行总结,并将当前摘…...
Safari 查看 http 请求
文章目录 1、开启 Safari 开发菜单2、显示 JavaScript 控制台 1、开启 Safari 开发菜单 Safari 设置中,打开开发菜单选项 *** 选择完成后,Safari 的目录栏就会出现一个 开发 功能。 2、显示 JavaScript 控制台 开启页面后,在开发中选中 显…...
kafka权限控制功能
参考链接: https://www.clougence.com/cc-doc/dataMigrationAndSync/database/privs_for_kafka Kafka需要的权限 | CloudCanal of ClouGence Kafka Topic 权限控制可以通过使用 Apache Kafka 的内置安全特性来实现。这主要涉及到两个方面:认证&#…...
公司内部重要文件如何加密防止泄露?
现如今,是互联网时代,数据安全在互联网时代中的数据安全岌岌可危,企业中,都会拥有终端,终端中每天都要处理文档,文件,表格,产生一系列的数据问题等,这个时候就要先企业中…...
C语言或Java-x型图案
描述 KiKi学习了循环,BoBo老师给他出了一系列打印图案的练习,该任务是打印用“*”组成的X形图案。 输入描述 多组输入,一个整数(2~20),表示输出的行数,也表示组成“X”的反斜线和正斜线的长度。…...
FTP客户端登录报错:Login failed
FTP客户端登录报错:Login failed 是selinux的问题,一般用户无法登录用户主目录 [rootchenshuyi ~]# setsebool -P tftp_home_dir 1...
Linux相关指令(上)
常见指令: 1 pwd:查看用户当前所在目录 以下面的路径为例: 2 ls:对于目录,该命令列出该目录下的所有子目录与文件。 对于文件,将列出文件名以及其他信息 ls-l(or ll):列…...
电压放大器在管道缺陷检测中应用有哪些
管道是一种重要的输送工业介质的设施,广泛应用于石油、化工、水利等领域。然而,由于长期使用和外界环境因素等原因,管道内部常会出现各种缺陷和损伤,如腐蚀、裂纹、磨损等,这些问题如果得不到及时发现和修复࿰…...
NLP(六十二)HuggingFace中的Datasets使用
Datasets库是HuggingFace生态系统中一个重要的数据集库,可用于轻松地访问和共享数据集,这些数据集是关于音频、计算机视觉、以及自然语言处理等领域。Datasets 库可以通过一行来加载一个数据集,并且可以使用 Hugging Face 强大的数据处理方法…...
Windows下基于VSCode搭建C++开发环境(包含整合MinGW64、CMake的详细流程)
最近想写写C,装了VisualStudio 2022,折腾半天。对于一个用惯VSCode的人来说,总感觉IDE太笨重。于是自己网上各种查资料,自己琢磨,搭建了一套Windows下基于VSCode和CMake的C轻量级开发环境。 具体搭建步骤 1. 下载并安…...
springboot+mybatis-plus+vue+element+vant2实现短视频网站,模拟西瓜视频移动端
目录 一、前言 二、管理后台 1.登录 2.登录成功,进入欢迎页 编辑 3.视频分类管理 4. 视频标签管理 5.视频管理 6.评论管理 编辑 7.用户管理 8.字典管理 (类似于后端的枚举) 9.参数管理(富文本录入) 10.管…...
MySQL学习-第二部分
文章目录 MySQL数据库学习1 表1.1 表中的数据类型1.2 表的创建1.3 表的删除1.4 default设置字段默认值1.5 表结构的修改1.5.1 表名的修改1.5.2 字段名的修改1.5.3 修改字段类型1.5.4 添加字段1.5.5 删除字段1.5.6 表的复制 1.6 表的约束1.6.1 什么是约束?1.6.2 not …...
TortoiseGit 入门指南17:使用子模块
如果你想在自己的代码仓库中嵌入其它仓库,这称为引入子模块(Submodule)。使用右键菜单TortoiseGit - Submodules Add 选项,弹出添加子模块对话框,可以将一个外部仓库嵌入到源代码树的专用子目录中。 Repository&#x…...
谷粒商城篇章5 ---- P173-P192 ---- 检索服务【分布式高级篇二】
目录 1 检索服务 1.1 搭建页面环境 1.1.1 引入依赖 1.1.2 将检索页面放到gulimall-search的src/main/resources/templates/目录下 1.1.3 调整搜索页面 1.1.4 将静态资源放到linux的nginx相关映射目录下/root/docker/nginx/html/static/ search/ 1.1.5 SwitchHosts配置域…...
N位分频器的实现
N位分频器的实现 一、 目的 使用verilog实现n位的分频器,可以是偶数,也可以是奇数 二、 原理 FPGA中n位分频器的工作原理可以简要概括为: 分频器的作用是将输入时钟频率分频,输出低于输入时钟频率的时钟信号。n位分频器可以将输入时钟频率分频2^n倍…...
华为OD真题--分苹果-带答案
有A,B两个同学想要分苹果。A的想法是使用二进制进行,1 1相加不进一位,如(9 5 1001 101 12)。B同学的想法是使用十进制进行,并且进一位。会输入两组数据,一组是苹果总数,一组分别…...
【前端实习评审】对小说详情模块更新的后端接口压力流程进行了人群优化
大家好,本篇文章分享一下【校招VIP】免费商业项目“推推”第一期书籍详情模块 前端同学的开发文档周最佳作品。该同学来自安徽科技学院土木工程专业。本项目亮点难点: 1.热门书籍在更新点的访问压力; 2.书籍更新通知的及时性和有效性…...
Factorization Machines(论文笔记)
样例一: 一个简单的例子,train是一个字典,先将train进行“one-hot” coding,然后输入相关特征向量,可以预测相关性。 from pyfm import pylibfm from sklearn.feature_extraction import DictVectorizer import numpy as np tra…...
Phi-3-vision-128k-instruct 生成效果鉴赏:复杂信息图表的自动化摘要
Phi-3-vision-128k-instruct 生成效果鉴赏:复杂信息图表的自动化摘要 1. 当AI遇见数据图表:一场视觉理解的革命 想象一下这样的场景:你面前摊开一份50页的上市公司年报,里面充斥着各种复杂的柱状图、折线图和饼图。作为分析师&a…...
一键部署GLM-4.6V-Flash-WEB:GitCode镜像真香,省去半天环境搭建时间
一键部署GLM-4.6V-Flash-WEB:GitCode镜像真香,省去半天环境搭建时间 1. 为什么选择GLM-4.6V-Flash-WEB 在多模态大模型快速发展的今天,开发者最头疼的不是模型性能,而是如何快速部署和运行。GLM-4.6V-Flash-WEB作为智谱AI最新开…...
16S rDNA测序数据下载实战:从NCBI到HMP的保姆级指南(附避坑技巧)
16S rDNA测序数据获取全流程:从数据库检索到实战分析的深度解析 刚接触微生物组研究的同学常会陷入一个矛盾:既想快速上手分析流程,又苦于找不到合适的练习数据。我曾指导过数十位研究生,发现约70%的初学者在数据获取阶段就会遇到…...
51单片机贪吃蛇进阶:如何用矩阵按键实现‘按住加速’和‘双击暂停’?
51单片机贪吃蛇进阶:矩阵按键高级交互设计实战 在嵌入式开发领域,51单片机因其经典架构和丰富的学习资源,始终保持着旺盛的生命力。而贪吃蛇作为嵌入式入门的经典项目,往往成为开发者接触硬件交互的第一个实战案例。本文将聚焦于如…...
灵感画廊实际作品:基于‘纪实瞬间’预设的城市街景写实图像生成
灵感画廊实际作品:基于‘纪实瞬间’预设的城市街景写实图像生成 “见微知著,凝光成影。将梦境的碎片,凝结为永恒的视觉诗篇。” 今天,我们不谈复杂的参数,也不讲枯燥的部署。我想带你走进一个特别的创作空间——灵感画…...
Pixel Aurora Engine效果对比:传统像素绘制 vs Pixel Aurora AI生成效率
Pixel Aurora Engine效果对比:传统像素绘制 vs Pixel Aurora AI生成效率 1. 两种创作方式的本质区别 1.1 传统像素绘制的工作流程 传统像素艺术创作是一个完全手动的过程,艺术家需要: 使用专业绘图软件(如Aseprite或Photoshop…...
Free RTOS:任务状态,任务管理与调度理论
目录 1.任务状态 1.1 FreeRTOS的任务状态: 1.2 阻塞状态(Blocked) 1.3 暂停状态(Suspended) 原型如下: 1.4 就绪状态(Ready) 1.5 完整的状态转换图 1.6 代码 2.任务管理与调度理论 2.1 调度 2.2 FreeRTOS调度 STM32CubeMX FreeRTOS源码 代…...
VibeVoice语音合成系统效果展示:专业配音级语音频谱图分析
VibeVoice语音合成系统效果展示:专业配音级语音频谱图分析 1. 语音合成技术的新突破 你有没有想过,现在的AI语音合成已经能做到多逼真?不再是那种机械的、冰冷的机器人声音,而是真正像专业配音演员录制的高质量语音。VibeVoice语…...
Django UI扩展全攻略:打造炫酷管理界面,【面试】Kafka / RabbitMQ / ActiveMQ。
Django第三方扩展UI详解:打造现代化管理界面和用户界面 核心UI扩展库介绍 Django-admin-interface 提供高度可定制的管理后台界面,支持主题切换、颜色自定义和模块拖拽布局。无需修改Django原生代码即可实现视觉升级,适合快速构建品牌化管理系…...
LFM2.5-1.2B-Thinking-GGUF真实案例分享:边缘终端10秒内完成技术概念解释
LFM2.5-1.2B-Thinking-GGUF真实案例分享:边缘终端10秒内完成技术概念解释 1. 模型简介与核心优势 LFM2.5-1.2B-Thinking-GGUF是Liquid AI推出的轻量级文本生成模型,专为低资源环境优化设计。这个1.2B参数的模型采用GGUF格式,能够在边缘计算…...
