摘要:
1、volatile关键字 volatile int i=10; int j = i; ... int k = i; volatile告诉编译器i变量是随时可能发生变化的,例如IO端口的输入值,所以每次读取i都是从i的地址中读取,而不是,当重读读取i时发现读取变量一样,调用上次的寄存器。 下面是vo 阅读全文
摘要:
任务运行时间API函数的应用 当使用任务运行时间API函数打印任务运行时间等相关信息是,串口打印出现这个问题 网上是这么说的 但是运行每个任务都可以执行进去,循序时间API函数也可以执行进去,就是无法返回结果, 经过调试发现任务执行到此处就执行不下去了,解释说任务不存在或不能退出,后来查询代码发现建 阅读全文
摘要:
shell可以理解为对命令行的一个解释器,命令行输入命令,shell执行,linux系统输出结果 1、 shell脚本格式 开头: #!/bin/bash #!告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序 举例: #!/bin/bash echo "Hello World !" 阅读全文
摘要:
BSW 一、CAN总线-物理层 二、 can总线-数据链路层 AutoSAR通信服务框架图 接口层将上层与下层隔离,方便换芯片不改变上层配置,只改变下层配置(CanIF、LinIF、EthIF等) 三、can总线-网络传输层CanTP 通信业务报文执行流程 诊断报文执行流程 CnaTp主要作用: 1 阅读全文
摘要:
使用PyQT5实现YOLOv8图形化界面 准备工作: 1、首先在YOLOv8环境中安装pyqt5 pip install pyqt5 pip install pyqt5-tools 然后再你的anaconda环境中找到designer.exe文件,双击运行,可以将其发送到桌面快捷方式方便后续使用 下 阅读全文
![YOLOv8-PyQT5可视化界面](https://img2024.cnblogs.com/blog/3436314/202406/3436314-20240607104102489-4741639.png)
摘要:
列表和列表项的简介 列表是 FreeRTOS 中的一个数据结构,概念上和链表有点类似,列表被用来跟踪 FreeRTOS中的任务。 列表项就是存放在列表中的项目 列表相当于链表,列表项相当于节点,FreeRTOS 中的列表是一个双向环形链表 列表的特点:列表项间的地址非连续的,是人为的连接到一起的。列 阅读全文
摘要:
临界段代码保护 什么是临界段:临界段代码也叫做临界区,是指那些必须完整运行,不能被打断的代码段 适用场合如: 问题:什么可以打断当前程序的运行? 1、临界段代码保护函数介绍 FreeRTOS 在进入临界段代码的时候需要关闭中断,当处理完临界段代码以后再打开中断 函数 描述 taskENTER_CRI 阅读全文
摘要:
FreeRTOS学习笔记-中断管理 中断:让CPU打断正常运行的程序,转而去处理紧急的事件(程序) 中断执行机制,可简单概括为三步: 1、中断请求:外设产生中断请求(GPIO外部中断、定时器中断等) 2、响应中断:CPU停止执行当前程序,转而去执行中断处理程序(ISR) 3、退出中断:执行完毕,返回 阅读全文
摘要:
任务的挂起与恢复的API函数介绍 API函数 描述 vTaskSuspend() 挂起任务 vTaskResume() 恢复被挂起的任务 xTaskResumeFromISR() 在中断中恢复被挂起的任务 1、挂起任务类似暂停,可恢复; 删除任务,无法恢复 2、恢复是恢复被挂起任务 3、带FromI 阅读全文
摘要:
1任务控制块:保存任务的一些信息 (STM32的栈是由告高地址向低地址延伸的,由上向下生长) (STM32的堆是由告低地址向高地址延伸的,由下向上生长) 第一步申请内存 如下如所示步骤找到xTaskCreate()函数被定义的位置 因为STM32的栈是向下生长的,所以不执行if内部语句,执行else 阅读全文