关于单片机那些事?
周期
时钟周期:也叫振荡周期,就是单片机外接晶振的倒数,如12Mhz,周期就是1/12us,最小的时间单位。频率越高,速度越快
指令周期:执行一条指令需要的时间,一般由若干个机器周期组成
机器周期:一个指令的基本操作(取指,分析,执指)所需要的时间为机器周期,一般由12个时钟周期组成 机器周期 = 12/晶振频率
总线周期:CPU通过总线对外部进行一次访问需要的时间 一个总线周期一般包含4个时钟周期
主频(时钟频率):1秒钟,时钟周期的个数为主频
关于定时器的使用
1、滴答定时器,用于单一定时
rt_tick_t start;
start = rt_tick_get()if(rt_tick_get() - start < 3*1000)
{}
else
{}
2、使用rt_thread_mdelay(),用于多个定时处理
需要创建一个独立的任务,如果需要重新定时,需要删除改线程
rt_thread_t ruigang_output3_thread = RT_NULL; // 用于保存RUIGANG_OUTPUT3线程的句柄
void RUIGANG_OUTPUT3(void *param)
{while(1){if(!pi_in.pi_close && !pi_in.pi_reset && RUIGANG_Flag){contrl_pin(_24V_CNTL3, PIN_HIGH, PenFaTime5Sec);contrl_pin(_24V_CNTL3, PIN_LOW, PenFaTime3Min); contrl_pin(_24V_CNTL3, PIN_HIGH, PenFaTime3Sec);contrl_pin(_24V_CNTL3, PIN_LOW, PenFaTime5Min);rt_pin_write(_24V_CNTL3, PIN_HIGH);rt_thread_mdelay(PenFaTime5Min*60);}else{continue;}rt_thread_mdelay(10);}
}if (ruigang_output3_thread != RT_NULL){rt_thread_delete(ruigang_output3_thread); // 删除当前线程}ruigang_output3_thread = rt_thread_create("RUIGANG_OUTPUT3",RUIGANG_OUTPUT3,RT_NULL,1024,PRIORITY_OUT3,10);if (ruigang_output3_thread != RT_NULL){rt_thread_startup(ruigang_output3_thread); // 启动新线程}
3、软件定时器 1秒定时器 时间到了 会自用调用 回调函数
用于单一定时
#include <rtthread.h>// 定时器的回调函数
static void timer_callback(void* parameter)
{rt_kprintf("Timer tick\n");
}int main(void)
{// 定义定时器句柄rt_timer_t timer;// 创建软件定时器timer = rt_timer_create("mytimer", // 定时器名称timer_callback, // 定时器到期时调用的回调函数RT_NULL, // 传给回调函数的参数rt_tick_from_millisecond(1000), // 定时周期,单位为tick。这里使用1秒作为周期。RT_TIMER_FLAG_PERIODIC | RT_TIMER_FLAG_SOFT_TIMER); // 定时器标志:周期性和软件定时器// 判断定时器是否创建成功if (timer != RT_NULL){// 启动定时器rt_timer_start(timer);}return 0;
}
相关文章:
关于单片机那些事?
周期 时钟周期:也叫振荡周期,就是单片机外接晶振的倒数,如12Mhz,周期就是1/12us,最小的时间单位。频率越高,速度越快 指令周期:执行一条指令需要的时间,一般由若干个机器周期组成 …...
第5章 传输层
王道学习 考纲内容 (一)传输层提供的服务 传输层的功能:传输层寻址与端口;无连接服务和面向连接服务 (二)UDP UDP数据报;UDP检验 (三)TCP …...
典型传感器简介及驱动安装
双目视觉传感器 Indemind 传感器简介 INDEMIND M1 是专为开发者提供的一款硬件,采用“双目摄像头IMU”多传感器融合架构与 微秒级时间同步机制,为视觉 SLAM 研究提供精准稳定数据源,以满足 SLAM 研究、导航及 避障开发、视觉动作捕捉开发、…...
linux和Win——显卡驱动、Anaconda及pytorch安装(无需单独安装cuda、cudnn)
今天给新电脑的双系统(windows11和ubuntu22.04)安装了深度学习环境,在此记录一下。 一、Linux系统 (一)安装显卡驱动 (1)在安装Nvidia显卡驱动前,一定要点一下下面的“软件更新器…...
机器学习之多模态学习FLAVA(Foundational Language and Vision Alignment)
FLAVA(Foundational Language and Vision Alignment)是Meta AI提出的一种多模态学习模型,旨在处理自然语言和视觉任务。FLAVA通过联合学习文本和图像的特征表示,实现了在多模态任务上的优异性能。 FLAVA的基本概念 多模态学习: 多模态学习涉及同时处理多种类型的数据,例…...
Maven高级-证书校验
文章目录 SSL忽略配置IDEA里配置SSL忽略补充场景 SSL忽略配置 mvn -X clean install -Dmaven.resolver.transportwagon -Dmaven.wagon.http.ssl.insecuretrue -Dmaven.wagon.http.ssl.allowalltrue -Dmaven.wagon.http.ssl.ignore.validity.datestrueIDEA里配置SSL忽略 两个地…...
flutter是app跨平台最优解吗?
哈喽,我是老刘 最近在知乎上看到这样一个问题 我们先来解释一下问题中碰到的几个现象的可能原因,然后聊聊跨平台的最优解问题 问题解释 1、跟手、丝滑问题 这个问题其实很多人是有误解的,觉得原生的就丝滑跟手 其实不是这样的 我在做Flut…...
算法 Hw9
Hw 9 1 Scheduling with profits and deadlines12345 2 Parallel machine1234 1 Scheduling with profits and deadlines 1 决策问题表述: 给定一个利润值 P P P,是否存在一个任务调度方案使得完成所有任务的总利润至少为 P P P 2 在 NP 类中&…...
前端JS必用工具【js-tool-big-box】学习,字符串字母大小写转换的方法使用
这一小节,我们说一下 js-tool-big-box 工具库中,字符串字母大小写转换的使用。请注意:不是说单纯的把字符串转为大写,或者小写。关注 js-tool-big-box 的小伙伴可能知道,我们并没有把一些特别基础的,JS原生…...
Zookeeper:分布式系统中的协调者
Zookeeper:分布式系统中的协调者 前言:引言Zookeeper是什么? 基本概念Zookeeper 数据模型Znode 类型会话Watcher 应用场景分布式锁配置维护组服务名字服务 典型应用场景数据发布/订阅负载均衡命名服务分布式协调/通知集群管理Master选举 工作…...
如何使用代理IP进行数据抓取,PHP爬虫抓取京东商品数据
使用代理IP进行数据抓取通常是为了绕过IP封锁、提高抓取效率或保护你的真实IP地址。在PHP中,你可以使用cURL库来发送HTTP请求,并通过设置cURL选项来使用代理IP。 以下是一个基本的步骤说明,展示如何使用PHP和cURL库结合代理IP来抓取京东商品…...
一口气安装【Python】教程
浏览器搜索python,或者直接跳转网址。 https://www.python.orghttps://www.python.org/ 找到想下载的版本 根据自己电脑下载相应的版本 自定义安装 下一步 修改路径,然后点击安装 等待一会,喝个饮料 点击关闭 安装成功 安装结束...
华为HCIP Datacom H12-821 卷13
1.多选题 以下关于二层漫游和三层漫游的描述,以下说法正确的是? A、如果 STA 漫游时前后关联的 VLAN ID 相同则一定属于二层漫游 B、二层漫游是指客户端在同一子网内漫游 C、三层漫游是指客户端在不同子网间漫游 D、三层漫游前后 STA 关联的 AP 服务集上的 VL AN 必须相…...
基于SSM的酒店客房管理系统
基于SSM的酒店客房管理系统 ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅获取项目下载方式🍅 链接点击直达:下载…...
【数据结构与算法】最短路径,Floyd算法,Dijkstra算法 详解
Floyd算法 for (int k 0; k < n; k) {for (int i 0; i < n; i) {for (int j 0; j < n; j) {if (d[i][k] ! INF && d[k][j] ! INF) {d[i][j] min(d[i][j], d[i][k] d[k][j]);}}} }Dijkstra算法(基于最小堆) void dijkstra(int st…...
PHP中如何进行网络爬虫和数据抓取?
随着互联网时代的到来,网络数据的爬取与抓取已成为许多人的日常工作。在支持网页开发的程序语言中,php以其可扩展性和易上手的特点,成为了网络爬虫和数据抓取的热门选项。本文将从以下几个方面介绍php中如何进行网络爬虫和数据抓取。 一、HT…...
【Hadoop集群搭建】实验3:JDK安装及配置、Hadoop本地模式部署及测试
1. 安装 SSH 工具 SSH Secure Shell Client 传输软件 FinalShell(推荐使用) 1.1使用SSH工具将JDK安装包上传至虚拟主机hadoop01, hadoop02, hadoop03,sogou500w 数据上传至 hadoop01。 a. 在虚拟主机/usr 目录下创建文件夹 java,JDK 上传至此目录&…...
分布式锁在Spring Boot应用中的优雅实现
在现代微服务架构中,分布式锁是一种常用的技术手段,用于确保在分布式系统中,同一时间只有一个服务实例能够执行某个特定的操作。这对于防止并发问题、保证数据一致性至关重要。在Spring Boot应用中,我们可以通过自定义注解和切面的…...
常用框架-Spring Boot
常用框架-Spring Boot 1、Spring Boot是什么?2、为什么要使用Spring Boot?3、Spring Boot的核心注解是哪个?它主要由哪几个注解组成的?4、有哪些运行Spring Boot的方式?5、如何理解 Spring Boot 中的Starters?6、有哪些常见的Starters?7、如何在Spring Boot启动的时候运…...
AttributeError: module ‘cv2‘ has no attribute ‘face‘
Traceback (most recent call last): File "D:\AI_37\pythonProject7\day23\课堂代码\day23\07-人脸识别.py", line 4, in <module> recognizer cv2.face.LBPHFaceRecognizer_create() ^^^^^^^^ AttributeError: module cv2 has no at…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
谷歌浏览器插件
项目中有时候会用到插件 sync-cookie-extension1.0.0:开发环境同步测试 cookie 至 localhost,便于本地请求服务携带 cookie 参考地址:https://juejin.cn/post/7139354571712757767 里面有源码下载下来,加在到扩展即可使用FeHelp…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
IoT/HCIP实验-3/LiteOS操作系统内核实验(任务、内存、信号量、CMSIS..)
文章目录 概述HelloWorld 工程C/C配置编译器主配置Makefile脚本烧录器主配置运行结果程序调用栈 任务管理实验实验结果osal 系统适配层osal_task_create 其他实验实验源码内存管理实验互斥锁实验信号量实验 CMISIS接口实验还是得JlINKCMSIS 简介LiteOS->CMSIS任务间消息交互…...
dify打造数据可视化图表
一、概述 在日常工作和学习中,我们经常需要和数据打交道。无论是分析报告、项目展示,还是简单的数据洞察,一个清晰直观的图表,往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server,由蚂蚁集团 AntV 团队…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
【7色560页】职场可视化逻辑图高级数据分析PPT模版
7种色调职场工作汇报PPT,橙蓝、黑红、红蓝、蓝橙灰、浅蓝、浅绿、深蓝七种色调模版 【7色560页】职场可视化逻辑图高级数据分析PPT模版:职场可视化逻辑图分析PPT模版https://pan.quark.cn/s/78aeabbd92d1...
Yolov8 目标检测蒸馏学习记录
yolov8系列模型蒸馏基本流程,代码下载:这里本人提交了一个demo:djdll/Yolov8_Distillation: Yolov8轻量化_蒸馏代码实现 在轻量化模型设计中,**知识蒸馏(Knowledge Distillation)**被广泛应用,作为提升模型…...
