自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 STM32问题记录

目录外部晶振起振失败导致串口波特率异常外部晶振起振失败导致串口波特率异常型号:stm32f407在开发过程中,原理样机由于布线、调理电路等设计问题,会出现外部晶振起振失败的情况。在stm32中,当外部晶振起振失败,将会启动内部高速晶振,并保持默认的时钟配置。以hal库为例,具体代码在函数HAL_RCC_ClockConfig()中实现:1、首先配置内部晶振,默认的分频系数(HSI 的信号直接提供给SYSCLK,均16分频):即系统时钟16M,外设时钟1M2、开始初始化开发者真正的配置,这个配置已

2021-09-03 11:01:07 1300

原创 i.MX6ULL学习笔记--字符设备驱动程序

i.MX6ULL学习笔记--字符设备驱动程序简介驱动的配置过程附录数据结构简介字符设备的驱动程序适合于大多数的简单硬件设备,比较容易上手。驱动的配置过程附录数据结构//与驱动模块相对应的文件操作接口struct file_operations { struct module *owner; loff_t (*llseek) (struct file *, loff_t, int); ssize_t (*read) (struct file *, char __user *, size_t

2021-08-29 21:23:18 265

原创 基于STM32使用嵌套结构体摸索内存对齐

导读一、结构体的声明以及初始化二、联合体以及嵌套结构体的用法位段小端模式三、数据跨地址内存导致的内存对齐现象一、结构体的声明以及初始化联合体实际上来说是特殊数据结构的一类,通过关键词struct来定义。定义结构体有几种方法:struct FUNC1//仅声明一个模板{ char* name; uint32_t height; uint32_t length;};第一种方法,将会定义一个名称为struct FUNC1的结构体模板,它里面包含了一个指向字符的指针,两个整形的变量。模板

2021-08-23 11:37:29 1073

原创 i.MX6ULL学习笔记--驱动函数初始化

2021-07-14 20:49:28 271

原创 i.MX6ULL学习笔记 --通过系统提供的设备文件控制LED

导读简介shell环境中直接控制LEDC代码实现控制LED简介通过学习,可以了解到控制硬件需要先在底层完成驱动文件的编写,在驱动文件完成后会在应用层提供一个控制接口,这里对使用应用层接口控制LED的经过进行记录,权当笔记。shell环境中直接控制LED在shell环境中,可以输入指令cd /sys/class/leds,到控制LED的路径下,输入指令ls -al,可以看到控制红、绿以及蓝灯的文件。这几个文件均为链接文件,进入其中一个文件cd blue,可以看到一个名为"brigtness"的文件

2021-03-18 21:27:53 251

原创 算法:C语言实现 课后作业实现

导读第一章第二章第三章例题3.2-3.5第一章NANO第二章NANO第三章第三章是数据结构的基础,主要介绍常见数据类型:整型、浮点型、字符型、结构体、数组、链表和串等。例题3.2-3.5测试系统中随机数产生器,针对r=10,100和1000,N=103,104,105和106。利用rand()产生0—r-1的随机数,并计算样本的平均值和标准方差。3.3输出整型,3.4改变r,3.5将随机数改为随机位。#include<stdlib.h>#include"stdio.h"#i

2021-02-09 12:21:40 393

原创 FreeRTOS学习笔记——列表

导读一、列表二、代码详解一、列表在FreeRTOS中提到的列表,从数据结构上看,更加类似于环形链表(List),从功能上更加接近栈,FreeRTOS借助这样的结构来构建系统任务间调度的体系。他将数据结构中的链表具体化为优先级,而优先级中包含了所有处于该优先级的任务。这样的操作可以看作在预编译时申请了一个拥有一定长度的数组,数组的成员类型是控制块类型(TCB_t),它包含了一个任务所有的信息。FreeRTOS之所以使用链表而不是数组结构,是因为数组和链表存在的某些差别,数组本质上是一段顺序排列的内存,而

2021-02-07 10:51:58 176

原创 i.MX6ULL学习笔记 --在Ubuntu环境下安装minicom

导读一、为什么安装minicom二、安装过程一、为什么安装minicom在学习i.MX6ULL的过程中,需要将开发板通过CH340连接到PC段,在野火的教学视频中使用的是MobaXterm(Windows),但我的电脑使用的是双系统,为了不安装虚拟机,决定使用minicom代替Mobaterm。二、安装过程在ubuntu下打开终端,输入指令apt -get install minicom -y然后输入 minicom -s 出现如下文字 +-----[configuration

2021-01-24 22:39:44 142

原创 FreeRTOS学习笔记--临界段代码处关闭中断

FreeRTOS学习笔记--临界段代码处关闭中断一、临界段代码二、Cortex-M4中断管理三、中断屏蔽实验四、结语一、临界段代码大家在学习FreeRTOS时对临界段代码都不陌生,引用野火实战指南的一句话:“临界段代码是指不能被中断的代码”。实际上,不只在进行全局操作的代码需要对中断进行管控,在某些严格时序上也需要对中断进行管控。例如A任务需要利用IIC、SPI、并口等协议进行数据交互时,往往一个中断的到来就会使得时序紊乱,而导致通信失败。所以我们在执行这类代码时,需要将不必要的中断进行屏蔽,这就涉及到

2021-01-20 22:58:57 1231

原创 STM32入门之点亮LED灯

导语: stm32系列的芯片比起入门级的AT89C51、STC系列芯片,有更强大的性能以及资源。但在编程上也有着或大或小的改变,使得初学者总会面临一些麻烦,下面我来总结下自己初学时的经验。首先在keil软件的初始化上,我们需要选择自己对应的型号。接下来就是对工程的属性设置,基础的设置网上有很多视频,不知道的童鞋可以去搜索野火的视频,非常的全面。但是在这里我要提醒下,在对工程的属性设置时记...

2020-04-10 15:06:12 1769 1

原创 数据结构杂记(C语言)

绪论由于学习的需要,我也开始了数据结构的自学。首先从简单的线性表开始,接下来我会更新我遇到的问题以及解决的方法!线性表:2018.12.16

2018-12-17 01:01:30 121

原创 基于STC15W4K48S4芯片的温度检测控制系统(支持手机蓝牙和串口屏的异步串口通信)

目标功能实现温度的实时检测,并通过两个异步串口将数据发送至串口屏HMI和与蓝牙模块相连接的手机上。支持手机APP和串口屏进行实时的相关数据更改。单片机根据数据要求,当实时温度不在合理范围时,做出应激反应(表现在IO口的高低电平上)。成品硬件成品 软件界面所需材料硬件STC15W4K48S4芯片 一块HMI串口屏 一块HC-05 蓝牙模块 一份散件若干软件K...

2018-10-21 13:47:52 3550 4

空空如也

空空如也

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

TA关注的人

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