自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mplayer: /lib/libc.so.6: version `GLIBC_2.27‘ not found (required by mplayer)

开发环境:Ubuntu18.04开发板:IMX6ULL。

2024-05-22 01:57:45 247

原创 SPI通信协议

本文重点介绍的是SPI通信协议,内容是来自野火视频教程,本人只是做一些简单的记录和总结。SPI是一种高速全双工的通信总线。它被广泛地使用在ADC、LCD等设备与MCU间,要求通讯速率较高的场合。作用:片选信号线低电平:代表主机选中了从机拉高电平:代表主机结束通信。

2023-05-26 23:28:33 872

原创 Linux-常用软件源

由于linux的默认软件源下载软件的速度是非常慢的,比如我下一个gcc编译器,速度才几十b/s,这对我们常人来说,是难以接受的。所以,我们要更新linux的软件源,更换成阿里的、163的、清华的,等等。

2023-02-08 09:45:47 1899 1

转载 32位和64位系统中各个变量类型占的字节数

原文:https://blog.csdn.net/ykun089/article/details/107484042所以:在32位系统和64位系统下只有指针类型和长整型字节数有所差别,其余全部相同32位 指针 :4个字节 long :4个字节64位 指针 :8个字节 long : 8个字节。

2022-12-31 13:24:18 3006

原创 检测到 #include 错误。请更新 includePath。已为此翻译单元(E:\abc.ino)禁用波形曲线。C/C++(1696) 无法打开 源 文件

使用VS code的时候,使用windows子系统linux,遇到了头文件包含了以后,报错的情况。本文记录如何解决此问题。

2022-11-30 19:23:50 1526

原创 GPIO单总线通信协议

本文记录的是两个MCU通过各自的一个IO口实现单总线通信,半双工的方式。

2022-11-23 14:43:58 1234

原创 51单片机定时器中断

本文记录的是51单片机的定时器中断。

2022-11-13 23:41:54 1300

原创 51单片机IO口介绍

本文介绍51单片的管脚。

2022-11-13 23:19:29 2700

原创 数码管显示

本文记录的是C51单片机的数码管显示。

2022-11-13 23:10:08 146

原创 触摸屏状态机

开发板野火指南者CPU型号触摸屏型号XPT2046本文记录的是用XPT2046这个触摸屏实现检测短按、长按状态机算法。

2022-07-30 19:17:42 302

原创 I2C通信——时序图

本文用逻辑分析仪抓取主机I2C通信的时序图,抓取的过程是读某个寄存器的值。

2022-07-21 21:15:12 4673

原创 C语言之goto

本文记录的是C语言中的goto知识。

2022-07-16 15:57:20 2278

原创 51单片机之LED灯

本文记录的是51单片机点亮LED灯,程序是LED流水灯。有两个方法供大家参考。开发板:郭天祥51单片机由原理图可以知道,74HC573是锁存器,OE是低电平有效,只要LED_LE置1,LED灯的亮灭就由IO口的高低电平控制。锁存器的真值表方法1方法2...

2022-07-12 23:39:08 585 1

原创 stm32f103电源管理

开发板:野火指南者STM32F103VET6实验平台:KEIL5 SDK内容:电源管理(睡眠模式、停止模式、待机模式)信息来源:野火资料这三种低功耗模式层层递进,运行的时钟或芯片功能越来越少,因而功耗越来越低。概念:在睡眠模式中,仅关闭了内核时钟,内核停止运行,但其片上外设,CM3核心的外设全都还照常运行。进入睡眠方式:有两种方式进入睡眠模式,它的进入方式决定了从睡眠唤醒的方式,分别是WFI(wait for interrupt)和WFE(wait for event),即由等待“中断”唤醒和由“

2022-06-13 22:41:54 1484

原创 独立看门狗(IWDG)

文章目录前言一、独立看门狗是什么?二、独立看门狗内部组成介绍1.功能框图2.独立看门狗时钟3.计数器时钟和计数器4.重装载寄存器5.键寄存器5.状态寄存器三、实验1.实验目标2.程序代码前言目标:了解独立看门狗和使用独立看门狗实验平台:KEIL5实验开发板:野火指南者STM32F103VET6一、独立看门狗是什么?独立看门狗用通俗一点的话来解释就是一个 12 位的递减计数器,当计数器的值从某个值一直减到 0 的时候,系统就会产生一个复位信号,即 IWDG_RESET。如果在计数没减到 0

2022-05-28 19:03:02 174

原创 ESP8266模块网络调试过程

文章目录前言一、前期工作二、AT指令测试1.AT2.AT+RST3.AT+CWMODE=?4.AT+CWJAP="SSID的信号名","密码"5.AT+CIFSR6.AT+CIPSTART7.AT+CIPSEND=?前言目标:测试ESP8266网络通信过程硬件:野火指南者stm32f103vet6工具:串口调试助手、网络调试助手开发软件:KEIL5一、前期工作串口配置ESP8266:我的ESP8266是板载WIFI,需要通过软件编程串口配置,实现串口AT指令发送。代码:本文用的是野火指

2022-05-26 15:36:25 862

原创 ONENET与MQTT(1)

文章目录前言一、ONENET的MQTT服务器地址二、MQTT的14个报文1.报文1——CONNECT测试2.CONNACK——确认连接请求3.报文14——DISCONNECT断开连接4.报文12——PING5.报文13——PINGRSP6.报文8——SUBSCRIBE 订阅请求7.报文9——SUBACK订阅确认8.报文10——UNSUBSCRIBE取消订阅9.报文11——UNSUBSCRIBE取消订阅确认:前言本文记录的是如何用MQTT协议连接物联网平台ONENETMQTT手册:https://mc

2022-05-24 17:53:25 830

原创 主函数尽量避免死等的延时函数

文章目录前言一、实时性的重要性二、避免使用延时函数三、推荐做法1.main.c2.中断服务函数文件it.c前言我们编写单片机的程序的时候,大家最容易忽略的是它的实时性,所以导致会出现明明程序没有写错,但却出现bug,这是为什么呢? 是因为单片机的程序是裸机,没有带操作系统。很多时候会被刚入门的单片机爱好者忽略掉实时性,导致会丢失事件。一、实时性的重要性我们先来谈谈为什么单片机有时候会丢失事件。首先,我们知道单片机程序是轮询模式,是一个语句执行完以后,再执行下一条语句,整个主函数就是一个进程,进

2022-04-19 15:40:27 1252

原创 C语言中typedef void(*F)(类型)解读

文章目录一、typedef void(*T)(void *)1. void(*T)()2. void(*T)(void *)3. typedef void(*T)(void *)二、typedef void(*T)(非void *指针)1.void(*task_func)()2. void(*task_func)(uint8_t tb_flag, uint8_t *const power_mode)3. typedef void(*task_func)(uint8_t tb_flag, uint8_t

2022-04-12 09:55:49 6247 2

原创 NTC——热敏电阻

文章目录前言一、NTC简介1.NTC特性2.NTC常见电路图3.NTC的电压算法二、NTC的AD值表1.NTC温度表二、编程1.思路2.关键代码总结前言本文记录的是有NTC热敏电阻,总结下NTC热敏电阻温度值的采集方法软件实验平台:keil5硬件:ARM M0一、NTC简介1.NTC特性ntc是一个热敏电阻,温度越高,阻值越小。采集到电压也是越小(串联分压)2.NTC常见电路图 图一10K电阻和NTC热敏电阻调换顺序,会改变ADC采集的电压,

2022-04-07 16:33:05 9732

原创 stm32呼吸灯

文章目录前言一、前期准备二、硬件原理图三、代码1.main.c2.bsp_breathing.h3.bsp_breathing.c4.中断服务函数5.python脚本四、时间计算前言本文记录的是单色呼吸灯教程开发板:野火指南者stm32f103vet6目的:实现单色呼吸灯1S渐亮,5S常亮,1S渐灭。原理:利用PWM输出,改变占空比,也就改变了平均电压。形成一个“呼吸”的效果。一、前期准备PWM原理:TTL电平中,高电平为5V,低电平为0V,但是我们想要输出不同的模拟电压,比如输出3.7

2022-03-28 00:51:03 9072 2

原创 基本定时器

文章目录前言一、基本定时器简介二、功能框图1.时钟源2.控制器3.时基(定时器的心脏)三、预分频器四、计数器、自动重装载寄存器五、影子寄存器六、定时时间的计算前言开发板:野火指南者stm32f103vet6本文的内容是基于野火指南者这个板子所记录的一些关于基本定时器的知识。以下内容完全来自野火家的教程。一、基本定时器简介1-计数器16bit,只能向上计数,只有TIM6和TIM72-没有外部的GPIO,是内部资源,只能用来定时3-时钟来自PCLK1,为72M,可实现1~65536分频二、

2022-03-22 23:14:16 1164

原创 软件模拟I2C(万能模板)

文章目录前言代码1.bsp_i2c.h2.bsp_i2c.c3.main.c结果前言本文介绍的是cortex系列的开发板使用I2C通信的时候,可以套用的软件模拟I2C万能模板。本人写的这份代码已经在野火指南者(stm32f103vet6)测试过可用。只需要修改一下宏定义的引脚和时钟线就可以使用。就算你的开发板的SCL和SDA线没有接上拉电阻,依然可以用。这里就不再介绍I2C的通信过程了,如果有同学还不清楚I2C通信协议的话,请查看本博客的通信协议专栏里有关I2C的文章。创作不易,希望大家

2022-03-20 10:59:58 7095

原创 STM32硬件I2C

文章目录前言一、原理图二、编程1.写入数据2.接收数据总结前言本文记录的是硬件I2C通信过程开发板:野火指南者STM32F103VET6I2C设备:EEPROM(AT24C02) 2048个字节大小,只能存256个8位数。开发软件:KEIL5一、原理图PB6是时钟线SCLPB7是数据线SDA二、编程1.写入数据代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as plt

2022-03-16 16:29:24 4151

原创 stm32之I2C编程前期准备

文章目录前言一、STM32实现I2C通信两种方式二、STM32的I2C架构三、时钟控制逻辑四、计算时钟频率五、数据控制逻辑六、整体控制逻辑七、STM32的I2C通讯过程1.主发送器通讯过程2.主接收器前言声明:文章内容介绍来自野火家的教程。本文章主要是围绕stm32这个MCU跟大家分享一下记录我们用MCU与i2c设备通信的时候,编程前,我们需要掌握哪些信息。若想知道如何写代码,那就看本博客另外一篇文章。软件模拟i2c:https://blog.csdn.net/weixin_43772611/

2022-03-14 21:26:57 4717

原创 I2C通信协议

文章目录前言一、I2C协议是什么?二、I2C物理层特点三、I2C协议层1.写方向2.读方向3.起始信号和停止信号4.数据有效性5.地址及数据方向6.应答信号和非应答信号前言本文记录的是I2C通信协议一、I2C协议是什么?I2C 通讯协议(Inter-Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。二、I2C物理层特点它是一个支

2022-03-14 19:53:17 556

原创 stm32查看系统时钟配置

文章目录前言一、固件库已有定义好的时钟结构体二、查看步骤1.定义时钟结构体变量2.调用函数致谢前言开发板:野火指南者stm32f103vet6开发工具:keil5目的:通过keil的仿真,查看系统时钟配置一、固件库已有定义好的时钟结构体二、查看步骤1.定义时钟结构体变量2.调用函数通过调用这个函数就可以轻松达到查看系统时钟的目的设置断点,把ClockInfo添加到窗口1查看变量的值致谢借鉴:https://blog.csdn.net/u014124220/article

2022-03-14 17:02:37 6955

原创 stm32串口通信

文章目录前言一、硬件原理图二、USART框图三、代码1.非中断的自发自收2.中断的自发自收3.重定向c库函数printf到串口串口的接收中断不需要清除标志位发现芯片手册有bug前言开发板:野火指南者STM32F103VET6开发工具:KEIL5、串口调试助手目的:用两种方式实现串口通信(非中断和中断)有关串口通信的知识点,请查看本博客的通信协议专栏的《串口通信协议》地址:https://blog.csdn.net/weixin_43772611/article/details/123451

2022-03-13 17:51:15 1318

原创 配置GPIO的模式

文章目录前言一、输出模式1.通用推挽输出(GPIO_Mode_Out_PP)2.开漏输出(GPIO_Mode_Out_OD)3.复用推挽输出(GPIO_Mode_AF_PP)4.复用开漏输出(GPIO_Mode_AF_OD)二、输入模式1.浮空输入模式(GPIO_Mode_IN_FLOATING)2.模拟输入模式(GPIO_Mode_AIN)3.带上拉输入模式(GPIO_Mode_IPU)4.带下拉输入模式(GPIO_Mode_IPD)前言这篇文章是记录stm32固件库开发的时候,配置GPIO的的8种

2022-03-13 16:25:49 4649 1

原创 串口通信协议

文章目录前言一、串口通信结构图二、电平三、串口通信协议前言本文记录的是平时常用的串口通信有关知识点提示:以下是本篇文章正文内容,下面案例可供参考一、串口通信结构图1、RS232标准串口通讯结构图2、USB转串口通讯结构图3、原生的串口到串口二、电平串口通信的时候,有三种电平:TTL电平、RS232电平、USB电平TTL电平是从MCU直接出来的电平RS323是一种通讯标准,因为高电平+15V低电平–15V电位差30V容错空间大,抗干扰能力强,一般用于工业设备直接通信电平转换芯

2022-03-12 23:12:15 6239

原创 中断与异常

文章目录前言一、中断是什么二、中断类型三、中断优先级四、使能中断五、中断应用(外部中断EXTI)0.EXTI简介1.中断框图2.原理图3.代码4.实验现象前言本文介绍中断的内容是基于STM32F103,一般来说,中断就是异常,异常就是中断。但实际上本人在学习S3C2440的时候,我记得异常是包括中断。一、中断是什么我用通俗的话来解释一下中断的流程吧:1、当你正在打代码的时候(程序正在执行),2、母亲大人突然喊你下楼吃饭(喊你——是中断事件发生标志),3、你不得不停止工作(进入中断),4

2022-03-12 17:46:19 170

原创 SysTick系统定时器

文章目录前言一、功能框图二、寄存器三、定时时间计算四、系统定时器在固件库的位置五、代码1.bsp_systick.h2.bsp_systick.c3.main.c总结前言本文记录的是stm32f103vet6系统定时器,它是存在cortex内核里面的一个定时器,嵌套在NVIC中。一、功能框图counter在时钟的驱动下,从reload初值开始往下递减计数到0,产生中断和置位COUNTFLAG标志。然后又从reload值开始重新递减计数,如此循环。二、寄存器查看cortex内核手册,关于

2022-03-11 00:21:53 1425

原创 力扣每日一题34——在排序数组中查找元素的第一个和最后一个位置

文章目录前言一、示例二、思路和代码1.思路2.代码前言`题目:给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。一、示例二、思路和代码1.思路①当数组没有与target相同的元素,则返回[-1, -1]②当数组与target有一个相同的元素,则返回相同的元素的位置i。[i, i]③当数组与target有两个相同的元素,则返回第一个相同的元素的位置i。[i,

2022-03-07 23:29:43 201

原创 基于STM32分析内存分布图

文章目录前言一、总体介绍二、RAM、ROM、FLASH三、Keil 的Build Output窗口前言本文参考某位博主的一篇文章,原文链接:https://blog.csdn.net/lin_duo/article/details/103019390`一、总体介绍在一个STM32程序代码中,从内存高地址到内存低地址,依次分布着栈区、堆区、全局区(静态区)、常量去、代码区,其中全局区中高地址分布着.bss段,低地址分布着.data段。总的分布如下图所示下面分别对每一个区做详细的介绍。栈区.

2022-03-07 17:50:33 1199

原创 DHT11温湿度传感器

文章目录前言一、编程前期工作1.原理图引脚2.工作方式3.数据格式4.通信过程和时序二、代码main.cbsp_dht11.cbsp_dht11.h结果总结前言本文记录的温湿度传感器的学习过程。实验平台:野火指南者stm32f103vet6模块:DHT11温湿度传感器一、编程前期工作1.原理图引脚有原理图可以知道DHT11的数据线接在板子的PE6引脚编程的时候,要配置并初始化PE6。2.工作方式DHT11只有一条数据线与MCU连接,是单总线串行通信,系统中的数据交换、控制均..

2022-03-06 23:48:02 2793

原创 力扣每日一题12——整数转罗马数字

文章目录前言一、题目示例二、代码总结前言本文所使用的方法是官方题解,若想知道题解思路,请查看官方题解地址:https://leetcode-cn.com/problems/integer-to-roman/solution/zheng-shu-zhuan-luo-ma-shu-zi-by-leetcod-75rs/一、题目示例题目:示例:二、代码代码如下(示例):const int values[] = {1000, 900, 500, 400, 100, 90, 50, 40..

2022-03-06 13:57:21 157

原创 显示器简介

文章目录前言一、显示器简介二、液晶显示器1.介绍2.原理3.显示器参数总结前言本文记录的学习笔记来自野火提示:以下是本篇文章正文内容,下面案例可供参考一、显示器简介显示器属于计算机的I/O设备,即输入输出设备。它是一种将特定电子信息输出到屏幕上再反射到人眼的显示工具。它是一种将特定电子信息输出到屏幕上再反射到人眼的显示工具。常见的有CRT显示器、液晶显示器、LED点阵显示器及OLED显示器。二、液晶显示器1.介绍液晶显示器,简称LCD(Liquid Crystal Display)..

2022-03-05 22:22:39 647

原创 力扣每日一题520——检测大写字母

文章目录前言一、示例二、思路与代码1.思路2.代码前言题目:我们定义,在以下情况时,单词的大写用法是正确的:全部字母都是大写,比如 “USA” 。单词中所有字母都不是大写,比如 “leetcode” 。如果单词不只含有一个字母,只有首字母大写, 比如 “Google” 。给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false一、示例二、思路与代码1.思路返回true的情况有三种:①全部为大写②全部为小写③只有首字母为大写,其余为小写..

2022-03-05 10:45:22 205

原创 人体红外传感器HC-SR501

本文记录的是如何用stm32使用HC-SR501。实验平台:野火指南者stm32f103vet6。实验现象:一旦有人体经过,LED会亮红色。HC-SR501 传感器工作原理人体都有恒定的体温,一般在 37 度,所以会发出特定波长 10UM 左右的红外线,被动式红外探头就是靠探测人体发射的 10um 左右的红外,进行工作的。人体发射的 10um 左右。

2022-03-04 23:37:20 10706 7

原创 Git_GitHub_远程库

文章目录前言一、前提条件二、github远程库0.远程仓库操作命令1.创建远程库2.给远程库起名3.起别名4.推送本地库到远程库5.远程库内容修改了,更新本地库6.克隆远程库到本地库7.SSH免密登录前言本文记录的是如何使用git操作github远程库。所有的内容的教程都来自B站视频教程https://www.bilibili.com/video/BV1vy4y1s7k6?p=20一、前提条件首先在github注册一个账号,至于如何上github网站,我看B站的评论给出的方法很多,大家去研..

2022-03-04 16:00:15 325

sdk-tool sdk-tool

sdk_tool

2024-05-24

MobaXterm-Installer

MobaXterm_Installer_

2024-05-24

imxull kernel and tool

imxull kernel and tool

2024-05-23

智能家居物联网OneNet

stm32f103系列的芯片通过ESP8266连接ONENT平台,协议是MQTT。里面有详细的教程。小白不懂的,也可以使用。使用场景是,将stm32的所有的传感器的数据上传到ONNET云平台。例如,DHT11传感器数据和MQ-2烟雾传感器数据数据等等。

2022-06-21

Linux函数大全,项目开发时,各种常见的函数,有参数解释。

自己平时积累的函数功能记录,以便以后日常使用。

2022-02-03

基于linux多媒体智能影音系统

1、硬件资源:粤嵌开发板GEC6818 2、实验平台:Ubuntu——Linux 16.04 3、项目名称:多媒体智能影音系统 4、实现功能:①图片动态显示;②音乐多功能播放;③视频多功能播放;④2048小游戏 备注:资源里面已含虚拟的显示器和触摸屏,只需手动安装驱动就可以用了,无需购买硬件,当然,有硬件更好。

2022-01-30

nfs思维导图(手动挂载和网络挂载)

嵌入式、JZ2440

2021-09-26

空空如也

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

TA关注的人

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