自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 资源 (4)
  • 收藏
  • 关注

原创 FreeRTOS源码解析——列表

本文主要描述freertos中链表的实现方式。源码请参考list.c/list.h。

2023-11-20 17:13:01 209

原创 IAR CortexM3&M4 启动文件MSP获取分析

从M3权威指南中关于复位序列的描述可以得知,复位后硬件自动将0x0000_0000处的值传给MSP,将0x0000_0004传给PC。PC会将数据视作地址,从给定的地址取值令开始执行。我们知道传入PC的地址是复位中断处理函数的地址。后面就是一系统初始化,直到main运行。但不是很了解MSP如何获取了正确的栈地址。例如如下的启动文件,可以看到向量表中首地址定义的是 DCD sfe[CSTACK].我们根据理论,这个的值必然就是栈底地址。接下来,我们分析如何实现该值的获取。

2023-08-29 11:22:16 435

原创 NXP KW45低功耗的实现

NXP 低功耗实现

2022-09-19 16:55:45 1973

原创 浅析NXP_SDK_API中回调函数调用过程——基于KW45 Flexcan模块

浅析回调函数的调用流程

2022-06-29 15:51:39 1030

原创 CANoe12Deom安装包

资料分享

2022-06-07 10:01:13 1853 1

原创 cuda kernel printf不打印的原因:编译为x86导致

1,GPU算力适配问题*在按照的cuda SDK中C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.5\0_Simple\simplePrintf默认在该路径下的解决方案,可以打印出本机GPU的算力信息所以我自己工程里配置为612 示例代码首先这个代码肯定可以运行。所以如果你运行不出来,不是代码问题。是配置问题。#include "stdio.h"#include "cuda_runtime.h"__global__ void

2022-05-18 16:39:50 2413 1

原创 《操作系统真象还原》第九章 多线程调度

1,前言上一节我们分析了线程是如何被调用执行的。本节将分析多个线程调度的实现方式。在分析之前,我们可以根据已有的知识去宏观的理解可能用的知识点。1,既然要实现多线程调度,肯定要对多线程管理。这里便涉及到了队列,分别是就绪队列和全部线程队列2,线程调度应该是由时钟中断驱动的,总结:完整的调度过程需要三部分的配合1,时钟中断处理函数2,调度器schedule3,任务切换函数switch_to2,重点流程分析1,时钟中断部分/* 时钟的中断处理函数 */static void intr_ti

2022-04-29 17:53:31 1481 2

原创 《操作系统真象还原》第九章 在内核空间实现线程

1,前言开始之前我想说明一下,这系列的文章有什么意义?读书本就是一个输入到理解,再输出的过程。我不是简单的罗列书中的知识。写书的人为了兼顾跟多的读者,书中的铺垫信息过多。对我复习其实是干扰。我需要的是核心知识点的学习理解。所以这一系列。我只记录核心的重难点知识。简单概念只列关键词。废话太多了,本章的难点应该是在线程的实现上。略过前的概念,直接到代码实现部分。2,简单的PCB及线程栈的实现1,数据结构enum task_status;线程状态struct intr_stack;中断栈struct

2022-04-29 17:36:57 1314

原创 《操作系统真象还原》第八章 位图的数据结构与操作

1,概念介绍用途就是为了管理内存页,一比特对应一页,即bit对应4KB。因为管理内存的位图本身也需要空间。所以我们要尽量压缩管理代价。一个简单的运算:1K的位图可以管理多大的内存空间呢?1Kb x 8bit x 4KB = 32Mb。所以1k的位图可以管理32M的内存空间。2,数据结构struct bitmap { uint32_t btmp_bytes_len;//所占用的空间长度,单位:字节 uint8_t* bits;};3,操作及实现思路void bitmap_init

2022-04-29 17:28:08 737

原创 《操作系统真象还原》第五章 用虚拟地址访问页表

操作系统之二级页表_是啊新啊的博客-CSDN博客之前的文章里总结起来就是CPU通过页部件的“三步曲”完成虚拟地址到物理地址的转换关系。即从CPU的视角是: 第一步:取虚拟地址的高10位,得到页表首地址;第二步:取虚拟地址的中10位,得到物理页地址;第三步:将虚拟地址中的低12位与物理页地址合并,即为最终的物理内存地址。我们正是利用这种“呆板”机制实现虚拟地址访问页表。即,每一个虚拟地址的转换必须经过这三步。 比如如何实现利用虚拟地址访问...

2022-03-27 20:41:08 4583

原创 《操作系统真象还原》第八章内存管理 优化makefile和分页机制再理解

1,Makefile的优化 书里面对C文件到O文件的编译处理的不是很好,每次新增文件都需要自己手动加入。主要涉及到一些字符处理函数: 1,patsubst$(patsubst <pattern>,<replacement>,<text>)功能:查找<text>中的单词(单词以“空格”、“Tab”或“回车”“换行”分隔)是否符合模式<pat...

2022-03-13 22:18:33 460

原创 《操作系统真象还原》第五章 二级页表原理

输入:32位虚拟地址 0x01234567输出:32位的实际物理地址二级页表地址拆分规则:高10位为页目录(二级)索引,中间10位为(一级)页表索引。最后低12位为物理页(实际物理地址)内偏移量。举例说明:输入虚拟地址 0x01234567 对其拆分二进制,我们知道十六进制到二进制是1对4位的关系,即0x0 =0000 ,0x1=0001 ,0x2=0010 ,所以拆分得到 0000 0001 0010 0011 0100 0101 0110 0111这样分别得到页目录(二级页表)...

2022-03-03 11:29:54 3558 2

原创 EC20相关数据及应用手册分享 百度网盘自取

链接:https://pan.baidu.com/s/1RES6gNfs08M5GyNpQ2mg0Q提取码:70rz复制这段内容后打开百度网盘手机App,操作更方便哦

2020-10-14 12:31:26 1247 1

原创 STM32 EC20 OTA 程序设计 Bin文件错误与改进

STM32 OTA 程序设计 V0.1流程图Flash 区域划分视图BOOT起始地址 0x0800 0000 50kAPP 1区地址 0x0800 c800 100kAPP 2区地址 0x0802 5800 100kBoot参数区地址 0x0803 e800 1kBootLoader区代码设计程序空间大小为20k,地址分配为0x0800 0000到0x0800 5000.主要实现功能1,读写flash2,实现程序跳转,重定义中断向量表3,标记A,B代码区域,根据标志位确

2020-07-06 15:15:19 1910 7

原创 STM32 串口空闲中断+DMA读EC200中bin文件 提前断包问题分析与解决

前言最近(2020年6月20日)正在开发基于STM32的OTA升级功能。前段时间完成了EC200通过FTP成功取到了bin文件,按照计划下一步是从EC200中取出文件到STM32的flash中,但是在read过程中出现了问题问题参考EC200 FILE应用文档指导。关于AT+QFREAD=1,10的回复报文CONNECT 空格 100D 0A【文件数据】0...

2020-06-20 22:33:24 1492 2

原创 STM32 OTA程序设计 之 4G模块EC20 FTP服务器获取升级文件 远程升级

测试4G模块使用FTP命令及反馈信息分析[10:51:05.364] AT[10:51:05.364] OK[10:51:05.364] AT+QFLDS=?[10:53:01.120] OK[10:53:01.120] AT+QFLDS=“UFS”[10:53:24.871] +QFLDS: 499712,917503[10:53:24.871][10:53:24.871] OK[10:53:24.871] AT+QFLDS[10:55:13.237] +QFLDS: 0,0[10:

2020-06-14 10:24:10 7594 6

原创 STM32cubeIDE配置定时器和可变频率的PWM总结记录

2020-06-02 23:44:44 3215

原创 使用正点原子资料点亮野火linux开发板LED

@TOC

2020-05-21 21:28:14 2758 3

ftp ota.zip

使用W5500 通过以太网接口接受升级文件数据,实现OTA过程,使用W5500 通过以太网接口接受升级文件数据,实现OTA过程,

2020-07-18

SSU_bootload.zip

该工程项目是基于STM32F103RCT6,与我写的文章 《STM32 4G版 OTA 程序设计 Bin文件错误与改进》中的流程图所说的功能一致,就是一个跳转而已,没什么技术含量,已经会了就不要下载看了!!!!

2020-07-06

Quectel_EC20_R2.0_FTP_AT_Commands_Manual_V1.0.pdf

移远EC20系列FTP功能参考文档,根据该文档实现智能终端设备通过4G模块访问FTP服务器,获取升文件,并下载到4G模块flash中。

2020-06-12

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除