首页 > 其他分享 >使用STM32的usb虚拟串口CDC_Transmit_FS打印freertos的任务列表vTaskList

使用STM32的usb虚拟串口CDC_Transmit_FS打印freertos的任务列表vTaskList

时间:2023-07-07 22:33:09浏览次数:39  
标签:taskList vTaskList showSysInfo CDC osDelay FS 串口 Transmit

创建一个任务,打印信息后,把自己删除

/* USER CODE END Header_func_showSysInfo */
void func_showSysInfo(void const *argument) {
    /* USER CODE BEGIN func_showSysInfo */
    /* Infinite loop */
    for (;;) {
        osDelay(1000);
        char taskList[200];
        memset(taskList, 0, 200);
        vTaskList(taskList);
        char sysInfo[] = { '\r', '\n', '\r', '\n', '-', '-', '-', '-', '-', '-',
                '-', '-', '-', '-', '-', '-', '-', '-', 'F', 'r', 'e', 'e', 'R',
                'T', 'O', 'S', ' ', 'V', '1', '0', '.', '0', '.', '1', '-', '-',
                '-', '-', '-', '-', '-', '-', '-', '-', '-', '-', '-', '-', '-',
                '\r', '\n' };
        CDC_Transmit_FS(sysInfo, sizeof(sysInfo));
        osDelay(10);//等待发送完成,不然无法发送下一条
        CDC_Transmit_FS("任务名      任务状态  优先级  剩余栈  任务号\r\n", 46);
        osDelay(10);//等待发送完成,不然无法发送下一条    
        CDC_Transmit_FS(taskList, strlen(taskList));
        osDelay(10);//等待发送完成,不然无法发送下一条
        CDC_Transmit_FS("B:阻塞   R:就绪   D:删除   S:暂停   X:运行\r\n", 42);
        osDelay(1);
        vTaskDelete(NULL);//删除自己
    }
    /* USER CODE END func_showSysInfo */
}

  效果

具体实现

1

2

 

 3

 

 4

 

 5

 

标签:taskList,vTaskList,showSysInfo,CDC,osDelay,FS,串口,Transmit
From: https://www.cnblogs.com/jnhs/p/17536226.html

相关文章

  • Buildroot创建ramdisk、ext4、ubifs镜像,以及mkfs.ext4/mkfs.ubifs/cpio的使用
    通过mkfs.ext4和mkfs.ubifs可以生成ext4和ubi格式的文件系统文件。Buildroot中创建文件系统文件即借助这两个命令。1.mkfs.ext4mkfs.ext4以及mkfs.ext2/mkfs.ext3都指向mke2fs,用于创建ext4格式的文件系统。Usage:mkfs.ext4[-c|-lfilename][-bblock-size][-Ccluster-si......
  • Vue3主要的响应类方法(ref、reactive、toRef、toRefs)
    1.Vue.ref()1.1.可以为单个属性添加响应式状态。1.2.可以为对象添加响应式状态,当给对象的某个属性单独ref后,改变后的属性值不会同时改变原始值。1.3.访问数据值,需要添加.value。1.4.原始数据的拷贝。(原始数据不被改变)2.Vue.reactive()2.1.给对象添加响应式状态2.2.访问数据值......
  • NTFS权限
    一、NTFS权限概述1、通过设置NTFS权限,实现不同的用户访问不同的权限2、分配了正确的访问权限后,用户才能访问其资源3、设置权限防止资源被篡改、删除 二、文件系统概述文件系统即在外部存储设备上组织文件的方法常用的文件系统:FATwindowsNTFSwindowsEX......
  • ctfshow刷题(Java反序列化)
    CTFshowJava反序列化web846urldns链importjava.io.ByteArrayOutputStream;importjava.io.IOException;importjava.io.ObjectOutput;importjava.io.ObjectOutputStream;importjava.lang.reflect.Field;importjava.net.URL;importjava.util.Base64;i......
  • NFS 服务器安装
    1#!/bin/bash23#################################################################################################################4####5......
  • RV1126调试-修改默认调试串口
    背景RK系列的SDK给的默认的调试串口都是uart2/1500000波特率,本次调试设备已经把console调试口改为了uart0,所以需要修改下uboot和内核,然后把波特率设为常用的115200。注:本次调试的SDK版本为原厂的V2.2版本1.uboot修改1)修改rv1126-evb.dts和rv1126-u-boot.dtsi把uart2改成uart......
  • HDFS集群搭建:完全分布式
    主要区别一就是各个角色在哪儿启动,完全分布式也就是各个角色分布在不通的节点上1、基础环境:部署配置NN:core-site.xmlDN:workers:node01SNN:hdfs-site.xmldfs.namenode.secondary.http.addressnode01:500902、角色启动时细节配置:dfs.namenode.name.dirdfs.datanode.data.......
  • QT 记串口的用法
    QSerialPort用法一、在.pro文件添加serialportQT+=coreguiserialport二、头文件#include<QSerialPort>#include<QSerialPortInfo>三、开启串口1voidWidget::on_pushButton_clicked()//自己写的按钮为例2{3QSerialPortInfoinfo;4QLis......
  • cfssl 自签证书
    cfssl1**.1准备cfssl证书生成工具**cfssl是一个开源的证书管理工具,使用json文件生成证书,相比openssl更方便使用。找任意一台服务器操作,这里用Master节点。wgethttps://pkg.cfssl.org/R1.2/cfssl_linux-amd64wgethttps://pkg.cfssl.org/R1.2/cfssljson_linux-amd64wgetht......
  • HDFS集群搭建:伪分布式
    HDFS集群搭建:伪分布式参考网址:hadoop官网前期准备:JAVA环境+SSH,hadoop用java开发,java移动性好,C++移植性好。问题:ssh远程登录有个弊端:通过SSH远程登录启动其JVM进程,由于SSH远程执行的时候是不会加载profile文件里面的环境变量的实操论证:在node1的profile中创建一个环境变量BI......