(10)Proteus 8.9上的STM32仿真系列(HAL)---freertos

2023-11-28 02:30

本文主要是介绍(10)Proteus 8.9上的STM32仿真系列(HAL)---freertos,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

实验设计:通过cubemxide生成freertos工程,然后创建一个 pc13 led灯间隔200ms闪烁的任务。非常遗憾的是proteus8.9仿真失败,实物上没有问题,但还是把流程过一遍。
一、原理图
实物是淘宝上stm32f103 c8t6的核心板,proteus上没有这个芯片,这里图上大概表示一下,用的是核心板自带的pc13引脚的led灯。
在这里插入图片描述
二、cubemxide配置
1.RCC如之前工程一样配置
在这里插入图片描述
在这里插入图片描述2、配置SYS
timebase Source不要使用systick,自己选择一个定时器,我这里选择的是TIM2
在这里插入图片描述3.GPIO将PC13配置为GPIO_output,如图所示。
在这里插入图片描述4.在middleware中开启freertos,选择CMSIS_V1,选择V2应该也可以。然后打开Tasks and Queues界面。
在这里插入图片描述5.在Tasks and Queues界面点击add按键,然后如下图创建任务myTask02。有一个默认任务,我们只需再建一个。参数配置基本都是默认的。
在这里插入图片描述6.选择文件夹,然后点击generate code
7.打开main.c,寻找函数void StartTask02(void const * argument),将其for循环内容更换为如下代码。

	  HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_SET);osDelay(200);HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,GPIO_PIN_RESET);osDelay(200);

在这里插入图片描述8.设置输出hex文件,然后build all。将生成的hex文件烧录进板子。
请添加图片描述

**专栏总结:**经过10章学习,基本过了一遍stm32基本功能,freertos也是比较复杂的,但通过cubemxide,可以直接使用。freertos/ucos想要具体学习,推荐野火官网的教程,写的非常详细,多达千页的pdf,不是几章博客可以讲明白的。但是简单应用逛逛csdn足矣,毕竟stm官方帮我们省去了移植步骤。

**对新手的建议:**基础问题看csdn,进阶把st官网Description of STM32F1 HAL and low-layer drivers.pdf
仔细过一遍,这是hal库api文档。再进阶就是freertos、ucos了,把正点原子或者野火的教程过一遍。

**就业:**学到上述水平找工作只能找到大概5k左右的工作(工作内容可能是接线工+调试板子,还不会让你那么快写程序),不要看网络平台上工资高,绝大部分面试就会发现工资虚标或者要求很高。想要月薪过万,要会画板子、熟悉模电、会linux和arm平台和大概两三年项目经验。这每一个都是大坑,对编程和数学要求比较高。如果你是学生的话,趁早在学校把上述内容学了,毕业可以找还可以的工作。我是毕业捡起来的,实在没有精力去补这么多坑,2020年疫情解封去广东找工作,工资稍微高一点的要求就不止单片机了,挣扎半年后还是回了湖北。目前准备脱坑了,单片机这方面以后也只会作为爱好,准备去搞设备维修plc之类的工作,感觉偶尔有体力劳动的工作会让人更精神。

如果我的教程有帮到你的话,看到这里点个赞吧!祝大家前程似锦!

完结

这篇关于(10)Proteus 8.9上的STM32仿真系列(HAL)---freertos的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/428904

相关文章

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

科研绘图系列:R语言扩展物种堆积图(Extended Stacked Barplot)

介绍 R语言的扩展物种堆积图是一种数据可视化工具,它不仅展示了物种的堆积结果,还整合了不同样本分组之间的差异性分析结果。这种图形表示方法能够直观地比较不同物种在各个分组中的显著性差异,为研究者提供了一种有效的数据解读方式。 加载R包 knitr::opts_chunk$set(warning = F, message = F)library(tidyverse)library(phyl

【生成模型系列(初级)】嵌入(Embedding)方程——自然语言处理的数学灵魂【通俗理解】

【通俗理解】嵌入(Embedding)方程——自然语言处理的数学灵魂 关键词提炼 #嵌入方程 #自然语言处理 #词向量 #机器学习 #神经网络 #向量空间模型 #Siri #Google翻译 #AlexNet 第一节:嵌入方程的类比与核心概念【尽可能通俗】 嵌入方程可以被看作是自然语言处理中的“翻译机”,它将文本中的单词或短语转换成计算机能够理解的数学形式,即向量。 正如翻译机将一种语言

基于UE5和ROS2的激光雷达+深度RGBD相机小车的仿真指南(五):Blender锥桶建模

前言 本系列教程旨在使用UE5配置一个具备激光雷达+深度摄像机的仿真小车,并使用通过跨平台的方式进行ROS2和UE5仿真的通讯,达到小车自主导航的目的。本教程默认有ROS2导航及其gazebo仿真相关方面基础,Nav2相关的学习教程可以参考本人的其他博客Nav2代价地图实现和原理–Nav2源码解读之CostMap2D(上)-CSDN博客往期教程: 第一期:基于UE5和ROS2的激光雷达+深度RG

【STM32】SPI通信-软件与硬件读写SPI

SPI通信-软件与硬件读写SPI 软件SPI一、SPI通信协议1、SPI通信2、硬件电路3、移位示意图4、SPI时序基本单元(1)开始通信和结束通信(2)模式0---用的最多(3)模式1(4)模式2(5)模式3 5、SPI时序(1)写使能(2)指定地址写(3)指定地址读 二、W25Q64模块介绍1、W25Q64简介2、硬件电路3、W25Q64框图4、Flash操作注意事项软件SPI读写W2

flume系列之:查看flume系统日志、查看统计flume日志类型、查看flume日志

遍历指定目录下多个文件查找指定内容 服务器系统日志会记录flume相关日志 cat /var/log/messages |grep -i oom 查找系统日志中关于flume的指定日志 import osdef search_string_in_files(directory, search_string):count = 0

STM32(十一):ADC数模转换器实验

AD单通道: 1.RCC开启GPIO和ADC时钟。配置ADCCLK分频器。 2.配置GPIO,把GPIO配置成模拟输入的模式。 3.配置多路开关,把左面通道接入到右面规则组列表里。 4.配置ADC转换器, 包括AD转换器和AD数据寄存器。单次转换,连续转换;扫描、非扫描;有几个通道,触发源是什么,数据对齐是左对齐还是右对齐。 5.ADC_CMD 开启ADC。 void RCC_AD

STM32内部闪存FLASH(内部ROM)、IAP

1 FLASH简介  1 利用程序存储器的剩余空间来保存掉电不丢失的用户数据 2 通过在程序中编程(IAP)实现程序的自我更新 (OTA) 3在线编程(ICP把整个程序都更新掉) 1 系统的Bootloader写死了,只能用串口下载到指定的位置,启动方式也不方便需要配置BOOT引脚触发启动  4 IAP(自己写的Bootloader,实现程序升级) 1 比如蓝牙转串口,

GPT系列之:GPT-1,GPT-2,GPT-3详细解读

一、GPT1 论文:Improving Language Understanding by Generative Pre-Training 链接:https://cdn.openai.com/research-covers/languageunsupervised/language_understanding_paper.pdf 启发点:生成loss和微调loss同时作用,让下游任务来适应预训

FreeRTOS-基本介绍和移植STM32

FreeRTOS-基本介绍和STM32移植 一、裸机开发和操作系统开发介绍二、任务调度和任务状态介绍2.1 任务调度2.1.1 抢占式调度2.1.2 时间片调度 2.2 任务状态 三、FreeRTOS源码和移植STM323.1 FreeRTOS源码3.2 FreeRTOS移植STM323.2.1 代码移植3.2.2 时钟中断配置 一、裸机开发和操作系统开发介绍 裸机:前后台系