【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构(二)

简介: 【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构

【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构(一)https://developer.aliyun.com/article/1472621


创建工程

配置高速时钟和低速时钟为外部晶振提供

配置调试模式为sw调试模式

配置时钟频率

配置led,这里我的板子是这三个io接入的是led

配置一个10ms的定时器(1000000hz / 1000ms == 1ms = 1khz 就得到10ms需要计数10000重载)记得打开中断

配置工程并生成,工程名设置,单独生成.c.h文件拷贝库文件

下面开始代码的移植工作;

移植代码

首先我们需要将该开源项目的代码添加到工程中

在定时器中断服务函数中添加timeslice轮询函数

void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{
  if(htim->Instance == TIM3)
  {
    timeslice_tick();
  }
}

然后我们需要在main函数中启动定时器并在while1中调用exec函数调度时间片

HAL_TIM_Base_Start_IT(&htim3);
  /* USER CODE END 2 */
  /* Infinite loop */
  /* USER CODE BEGIN WHILE */
  while (1)
  {
    /* USER CODE END WHILE */
    /* USER CODE BEGIN 3 */
    
    timeslice_exec();
  }

到这里我们的移植工作就做完了,该项目的解耦效果真的非常好,移植相当简单,然后我们创建几个任务实验一下效果;


【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构(三)https://developer.aliyun.com/article/1472623

相关文章
|
13天前
|
存储 Java 容器
Web后端开发中对三层架构解耦之控制反转与依赖注入
Web后端开发中对三层架构解耦之控制反转与依赖注入
12 0
|
13天前
|
XML 前端开发 JavaScript
后端请求响应和分层解耦web开发的三层架构
后端请求响应和分层解耦web开发的三层架构
17 0
|
2月前
|
关系型数据库 分布式数据库 数据库
【PolarDB开源】PolarDB与微服务架构的融合:灵活扩展与高效管理
【5月更文挑战第23天】阿里云PolarDB是适用于微服务的高性能分布式数据库,提供数据分片、水平扩展及高可用性解决方案。通过SQL或API实现弹性扩展,内置故障转移保障服务连续性,且兼容MySQL协议,易于集成微服务生态。通过Spring Boot示例展示了PolarDB的配置与集成过程,强调其在现代云原生应用中的重要角色。
75 1
|
2月前
|
存储 关系型数据库 分布式数据库
【PolarDB开源】PolarDB高可用架构解析:确保业务连续性的关键设计
【5月更文挑战第22天】阿里云PolarDB是一款高可用、高性能的云原生数据库,采用分布式共享存储架构实现计算与存储分离。通过主从复制保证数据实时同步,当主节点故障时,从节点能快速接管。此外,PolarDB提供自动故障转移和数据备份恢复功能,确保业务连续性和数据安全性。一个简单的Python SDK使用示例展示了查询数据的过程。总之,PolarDB通过多种机制保障了企业在异常情况下的服务稳定和数据完整性。
224 5
|
2月前
|
架构师 数据挖掘 Python
最全pandas库(Python),2024年最新阿里云架构师面试
最全pandas库(Python),2024年最新阿里云架构师面试
最全pandas库(Python),2024年最新阿里云架构师面试
|
2月前
|
存储 关系型数据库 分布式数据库
【PolarDB开源】深入PolarDB内核:探究存储计算分离架构的设计哲学
【5月更文挑战第20天】PolarDB是阿里巴巴的云原生分布式数据库,以其存储计算分离架构为核心,解决了传统数据库的扩展性和资源灵活性问题。该架构将数据存储和计算处理分开,实现高性能(通过RDMA加速数据传输)、高可用性(多副本冗余保证数据可靠性)和灵活扩展(计算资源独立扩展)。通过动态添加计算节点以应对业务流量变化,PolarDB展示了其在云时代应对复杂业务场景的能力。随着开源项目的进展,PolarDB将持续推动数据库技术发展。
91 6
|
2月前
|
人工智能 自然语言处理 开发者
首个基于SSM-Transformer混合架构,开源商业大模型Jamba
【4月更文挑战第13天】AI模型部署与优化迎来新解决方案,ai21labs推出的SSM-Transformer混合架构大模型Jamba结合英伟达NVIDIA NIM服务。Jamba模型在自然语言处理上表现出色,开源特性促进AI技术普及,而NIM提供跨平台、高性能的部署支持。不过,技术门槛、资源需求及优化挑战仍需考虑。
62 6
首个基于SSM-Transformer混合架构,开源商业大模型Jamba
|
2月前
|
Cloud Native 安全 微服务
云原生开源沙龙北京站火热报名中丨微服务安全零信任架构
云原生开源沙龙北京站火热报名中丨微服务安全零信任架构。
|
2月前
|
程序员 Linux
【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构(三)
【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构
|
2月前
|
Linux
【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构(一)
【嵌入式开源库】timeslice的使用,完全解耦的时间片轮询框架构