自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 资源 (5)
  • 收藏
  • 关注

原创 笔记—学习【立创】如何使用示波器—捕捉波形

在工程实践中,经常要测量一些不连续的波形。例如,USART、SPI、IIC通讯,只有在通讯时才会产生相应的波形,如果示波器的触发模式没有选择好的话,我们是看不到这个波形的。

2024-03-25 16:57:49 777

原创 我的创作纪念日

我还清楚地记得 2021 年 04 月 06 日那天,我正在准备第十二届蓝桥杯单片机竞赛的省赛,为了能将备赛过程中的学习过程记录下来,我撰写了第 1 篇技术博客:《基于蓝桥杯的单片机模块练习——LED跑马灯》。于是,这看似平凡的一天竟对我今后的学习生活产生了极不平凡的意义。在今后的日子里,我会继续努力学习,我希望,自己无论是在理论方向还是在技术方向,都能有所收获。在现在的日常学习中,我依然坚持更新原创文章,我会把学习技术过程中遇到的问题以及解决办法通过这种形式记录下来,并分享给志同道合的伙伴。

2024-01-26 16:40:20 296

原创 误用STM32串口发送标志位 “USART_FLAG_TXE” & “USART_FLAG_TC”造成的BUG

本来打算发送 0x30 ~ 0x39,却发现少了两个字节,这是因为上面的特殊情况,代码只将数据放到了发送缓冲区,而没有发送出去就掉电或待机了,这个时候其实最后两个字符是没有发送出去的。当然一般情况下这种写法是准确的,特殊情况也很少发生,所以这是可取的。(我不相信那么巧合,正好发送过程中,正好停电)。

2023-12-02 19:31:48 992 2

原创 EndNote X9新版教程【学习笔记】——高效文献调研

高效文献调研

2023-04-04 17:17:00 168 1

原创 EndNote X9新版教程【学习笔记】——高效阅读文献

高效阅读文献

2023-04-04 17:00:05 224

原创 EndNote X9新版教程【学习笔记】——编辑参考文献的方法

自动根据不同期刊的格式要求进行图的排版和命名。1.将要插入的图生成一条记录:2.在word中将光标定位到要插入的地方。

2023-04-04 16:48:16 319

原创 EndNote X9新版教程【学习笔记】

文献管理软件的功能

2023-04-03 11:20:04 75

原创 EndNote X9新版教程【学习笔记】

注意:EndNote 不能直接检索中文文献。

2023-04-02 16:52:53 177

原创 嵌入式经典通信总线协议——RS232和RS485

注意:TTL电平信号通信距离应该<=1.5米。

2023-03-20 20:44:20 280

原创 嵌入式经典通信总线协议——UART

注意:两个机器要共地连接。

2023-03-19 20:16:01 505 1

原创 基于STM32单片机模块练习——ADC功能框图

ADC功能框图ADC简介并不是每种单片机的三个ADC都有16个外部通道。具体参数看单片机选型手册。ADC功能框图电压输入范围要测的外部电压如果超出0~3.3V的电压呢?通过外部电路把输入电压转换到规定范围。输入通道具体型号的单片机要查看通道转换顺序:触发源转换时间ADC——CLK一般由PCLK2(72M)经过6分频(12M)得到。采样率<1M.独立模式指的是,只使用 ADC1或2或3.高16bit是双ADC模式下存储数据的。note:双ADC模

2021-11-05 20:06:12 733

原创 STM32中TIM_ClearFlag和TIM_ClearITPendingBit有什么区别

STM32中TIM_ClearFlag和TIM_ClearITPendingBit有什么区别/** * @brief Clears the TIMx's pending flags. * @param TIMx: where x can be 1 to 17 to select the TIM peripheral. * @param TIM_FLAG: specifies the flag bit to clear. * This parameter can be any co

2021-10-05 15:16:46 5189

原创 [平衡小车]学习记录

[平衡小车]学习记录硬件部分1.电池锂电池参数释义及注意事项2.小车底盘电机详细参数:编码器参数:3.主控板TB6612直流电机驱动特性:♦电源电压:VM = 15 V(最大)♦输出电流:iout = 1.2a(平均值)/3.2a(峰值)♦输出低导通电阻:0.5ω(上限+下限典型值。@ VM ≥ 5 V)♦待机(省电)系统♦正转/反转/短制动/停止功能模式♦内置热关断电路和低压检测电路控制功能真值表:...

2021-08-19 12:22:34 160

原创 基于STM32单片机模块练习——在使用MPU6050时遇到的令人头疼的问题

在使用MPU6050时遇到的令人头疼的问题1.整个程序在一开始运行就卡死在启动文件首先看一下,Target设置选项下的Use MicroLIB选项是不是选上勾了。如果这个设置也解决不了问题,那么你需要检查一下程序里,是否写了printf函数的接口函数。因为MPU6050里面有用到了这个函数,如果你没写这个函数的接口函数,就会导致系统卡死在系统文件里。printf函数的接口函数///重定向c库函数printf到串口,重定向后可使用printf函数int fputc(int ch, FILE *

2021-08-18 17:07:32 5066 4

原创 基于STM32单片机模块练习——EXTI外部中断

基于STM32单片机模块练习——EXTI外部中断EXTI简介EXTI(External interrupt/event controller)—外部中断/事件控制器,管理了控制器的 20个中断/事件线。每个中断/事件线都对应有一个边沿检测器,可以实现输入信号的上升沿检测和下降沿的检测。EXTI 可以实现对每个中断/事件线进行单独配置,可以单独配置为中断或者事件,以及触发事件的属性。EXTI 功能框图EXTI 可分为两大部分功能,一个是产生中断,另一个是产生事件,这两个功能从硬件上就有所不同。首先

2021-08-09 13:08:25 466

原创 基于STM32单片机模块练习——中断总结

1.ARM cortex_m3 内核支持 256 个中断(16 个内核+240 外部)和可编程 256 级中断优先级的设置,与其相关的中断控制和中断优先级控制寄存器(NVIC、SYSTICK 等)也都属于cortex_m3 内核的部分。STM32 采用了 cortex_m3 内核,所以这部分仍旧保留使用,但 STM32并没有使用cortex_m3 内核全部的东西(如内存保护单元 MPU 等,只保留了NVIC、SYSTICK ),因此它的 NVIC 是cortex_m3 内核的 NVIC 的子集。

2021-08-09 11:03:48 514

原创 【STM32中断】了解更深入的东西,或者直接对寄存器操作(新手没必要看)

深入NVIC1. 看看 Cortex-M3 中与 NVIC 相关的寄存器有哪些SysTick Control and Status Register Read/write 0xE000E010 SysTick Reload Value Register Read/write 0xE000E014 SysTick Current Value Register Read/write clear 0xE000E018 SysTick Calibration Value Register Read-onl

2021-08-09 11:02:39 436

原创 【台大郭彦甫】matlab学习笔记——基本操作和矩阵输入

5.不要把变量的名字定义成matlab里的关键字,诸如: eps(极小的数)、Inf(无穷大)、i、 j(虚部)、ans、pi、NaN(不是一个数)之类的,因为他们在matlab中已经有了一定的含义。注意:打字的顺序应按照算式计算的优先级,我们手算时,会先计算括号里的,那我们也先敲括号里的内容,也就是,你平时算数的步骤和你敲代码的步骤其实是一致的。cos本来是计算三角函数的一个函数,但是却把它当成一个变量,被赋值了一个字符串,那么cos(8)就不起计算作用了,而是,找到cos中第八个字符。

2021-08-03 16:29:08 1210 1

原创 基于STM32单片机模块练习——认识固件库

认识固件库固件库应该包含的文件新建一个固件库工程1.新建一个工程的总文件夹例如:2.在它之下新建如下文件夹3.打开keil新建一个工程4.选择CPU型号5.添加组文件夹6.添加文件7.配置魔术棒选项卡(1) Target 中选中微库“ Use MicroLib”,为的是在日后编写串口驱动的时候可以使用printf 函数。(2) 在 Output 选项卡中把输出文件夹定位到我们工程目录下的“output”文件夹,如果想在编译的过程中生成 hex 文件,那么那 Create

2021-08-02 19:37:32 795 5

原创 基于STM32单片机模块练习——认识STM32

基于STM32单片机模块练习——认识STM32QFP封装就是贴片封装具体的引脚描述可以查看芯片数据手册

2021-08-02 16:42:41 212

原创 【硬石科技】电机系列教学(基于STM32)——舵机的控制

舵机本身就是一个闭环的控制系统。可调电阻就充当传感器,反馈舵机的当前位置角度。

2021-08-02 15:37:40 1838 1

原创 【硬石科技】电机系列教学(基于STM32)——PID算法实现闭环控制

闭环控制系统输入量(目标转速)就是我们的目标值,减去检测装置传回来的实际值(编码器测得的转速),就是实际偏差。将偏差输入到控制器(STM32),运算之后控制执行机构(驱动板和电机),输出被控量。...

2021-07-30 14:47:14 7195 3

原创 【硬石科技】电机系列教学(基于STM32)——直流有刷电机和直流减速电机及其驱动电路

直流有刷电机驱动电路可以把控制电机正反转的工作直接交给MCU,而不需要手动地转换接线端子。

2021-07-20 20:47:01 1429 2

原创 【星曈科技】OpenMv笔记——利用OpenMV与STM32进行串口通信

利用OpenMV与STM32进行串口通信OpenMV端的程序# Untitled - By: dell - 周一 7月 19 2021# Blob Detection and uart transportimport sensor, image, time,pybimport ustructfrom pyb import UART#import json# For color tracking to work really well you should ideally be in a v

2021-07-20 11:50:39 40360 105

原创 【星曈科技】OpenMv笔记——利用物体的像素数进行测距

利用物体的像素数进行测距# Untitled - By: dell - 周一 7月 19 2021# Measure the distance## This example shows off how to measure the distance through the size in imgage# This example in particular looks for yellow pingpong ball.import sensor, image, time# For col

2021-07-19 13:59:46 994

原创 【星曈科技】OpenMv笔记——单颜色彩色识别

颜色识别单颜色彩色识别# Single Color RGB565 Blob Tracking Example## This example shows off single color RGB565 tracking using the OpenMV Cam.import sensor, image, time#导入此代码所依赖的模块threshold_index = 1 # 0 for red, 1 for green, 2 for blue# Color Tracking Thres

2021-07-18 20:05:42 918

原创 【野火】电机系列教学(基于STM32)——电机和驱动器简介

电机和驱动器简介一般性区别:有刷电机一般只需两根接线端子就可以驱动,而无刷电机需要三根接线端子进行驱动。

2021-07-16 20:20:10 1405 1

原创 基于STM32单片机模块练习——高级定时器

基于STM32单片机模块练习——高级定时器功能简介两边计数:从0计数到CCR的值,再从CCR的值计数到零。高级定时器GPIO引脚说明高级定时器功能框图1.时钟源1.内部时钟内部时钟 CK_INT 即来自于芯片内部,等于 72M,一般情况下,我们都是使用内部时钟。当从模式控制寄存器 TIMx_SMCR 的 SMS 位等于 000 时,则使用内部时钟。2.外部时钟模式一2.外部时钟模式二3.内部触发输入(了解)2.时基3.输入捕获使用PWM输入捕获,一个输入

2021-07-14 20:17:39 843 3

原创 基于STM32单片机模块练习——基本定时器

基于STM32单片机模块练习——基本定时器功能简介PCLK1的时钟频率为36mhz,但是如果APB1的预分频系数不为1,频率就会X2(72mhz)送给定时器2~7。定时器1和8的时钟来自PCLK2,时钟频率为72mhz。基本定时器的时基内部时钟,经过PSC预分频器后,送给计数器的时钟为:72mhz/(PSC+1),这是系统规定的公式。计数器对此时钟的脉冲进行计数,16bit的计数器最大加到65535,并产生一个中断。我们可以自行配置自动重装寄存器(ARR),定时器只要计数到ARR的值,就

2021-07-14 14:15:16 755 3

原创 【黑马程序员】Python学习笔记(一)编译型语言和解释型语言

【黑马程序员】Python学习笔记(一)编译型语言和解释型语言总结:编译型语言是在执行程序之前,编译器把所有代码给整体编译生成一个可执行文件,用户把这个可执行文件交给操作系统,就可以实现效果,执行速度较快。但是,不同操作系统编译的同一个源代码不能跨平台执行。也就是说,windows系统下编译的可执行文件在Linux系统里不能打开。解释型语言是解释器每次只解释一行代码,然后交给cpu执行一次。直到把全部代码执行完,执行速度较慢。但是,只要是相应操作系统里装有兼容该系统的解释器,那么就可以跨平台地在不

2021-06-14 21:06:21 312 11

原创 基于蓝桥杯的单片机模块练习——独立键盘算法

基于蓝桥杯的单片机模块练习——独立键盘算法C代码#include "key.h"unsigned char keystat[] = {1,1,1,1};unsigned int lkey_count = 0;bit lkey_flag = 0;code unsigned char KeyCodemap[4] = {0x07,0x06,0x05,0x04};void KeyAction(unsigned char KeyCode){ switch(KeyCode) { case 0x0

2021-06-03 17:07:58 164 2

原创 第九届国赛编程时遇到的玄学问题

第九届国赛编程时遇到的玄学问题void Display_HC(){ SegBuffer[0] = 0x89; SegBuffer[1] = SegCode[12]; SegBuffer[2] = 0xff; SegBuffer[3] = 0xff; SegBuffer[4] = SegCode[(WriteBuf[0]*100+WriteBuf[1])/1000]; SegBuffer[5] = SegCode[((WriteBuf[0]*100+WriteBuf[1])/100)%10

2021-06-02 20:02:53 136 1

原创 基于蓝桥杯的单片机模块练习——IIC驱动的注释及修改

基于蓝桥杯的单片机模块练习——IIC驱动的注释及修改iic.c/* 程序说明: IIC总线驱动程序 软件环境: Keil uVision 4.10 硬件环境: CT107单片机综合实训平台 8051,12MHz 日 期: 2011-8-9*/#include "iic.h"//=====================================================//总结:IIC_SendByte(unsigned char byt)函数不要忘记释放SD

2021-05-20 19:23:27 465

原创 基于蓝桥杯的单片机模块练习——第十届决赛串口部分

基于蓝桥杯的单片机模块练习——第十届决赛串口部分unsigned char Uart_Buf[12], Uart_Num = 0;//$20,24.32\r\n因为最多会发送12个字符,结尾还有一个‘\0’void UartInit() //4800bps@12.000MHz{ SCON = 0x50; // 8位数据,可变波特率 AUXR |= 0x01; // 串口1选择定时器2为波特率发生器 AUXR |= 0x04; // 定时器2时钟为Fo

2021-05-19 19:41:38 522 2

原创 STC对单片机相关学科群部分课程改革呼吁

STC对单片机相关学科群部分课程改革呼吁我觉得如果高校真能践行这种改革,培养出的学生会更优秀,我们的大学也不会白上。

2021-05-13 22:01:52 140 1

原创 编程时的基本流程图

2021-05-09 20:54:29 744 1

原创 基于蓝桥杯的单片机模块练习——DS18B20温度传感器各类异常情况总结

基于蓝桥杯的单片机模块练习——DS18B20温度传感器各类异常情况总结开始时显示85原因:因为温度传感器的温度转换需要一定的时间,所以刚一开始温度转换然后紧接着读取温度,再显示出来,他读取的温度便是上一次转换的结果,由于ds18b20初始温度值为85,所以这里的“上一次转换的结果”就是85.解决方法:在程序初始化的部分加上 Read_Temperature();//此时读取的温度值为默认的85 Delay_1ms(750);//等待上一个read函数温度转换完成 Read_Tempe

2021-05-08 22:15:53 5388 2

原创 基于蓝桥杯的单片机模块练习——矩阵键盘算法

基于蓝桥杯的单片机模块练习——矩阵键盘算法功能概述通过矩阵键盘控制8个数码管同时显示一个字符。C代码#include "stc15f2k60s2.h"//行sbit R1 = P3^0;sbit R2 = P3^1;sbit R3 = P3^2;sbit R4 = P3^3;//列sbit C1 = P4^4;sbit C2 = P4^2;sbit C3 = P3^5;sbit C4 = P3^4;unsigned char code SMG_duanma[] = {0xc0

2021-05-04 11:05:14 536

原创 笔记—学习【立创】如何使用示波器—触发电平旋钮

触发电平旋钮作用通过调节触发电平,使一个不断跳动的波型稳定显示。使用调节触发电平旋钮,会在屏幕上显示出一条橘黄色的线,如图:左下角提示当前触发电平:3.98V由于我们的波型最大为3V,达不到当前的触发电平,造成波形的不断跳动。所以我们只需要旋动旋钮把触发电平调低就可以正常显示。当你观察一个波型没有正常显示的时候,最好首先检查一下当前的触发电平是否在一个适合的位值。...

2021-05-03 12:36:11 2152

原创 基于蓝桥杯的单片机模块练习——超声波测距

基于蓝桥杯的单片机模块练习——超声波测距功能概述利用超声波模块测量距离并显示在数码管的后三位,单位是cm。如果距离超出量程,就在第一位显示‘F’#include "stc15f2k60s2.h"/*Debug 总结:*/sbit TX = P1^0; // 发射引脚sbit RX = P1^1; // 接收引脚unsigned char code SMG_duanma[] = {0xc0,0xf9,0xa4,0xb0,

2021-05-03 12:23:31 828

搭建Linux个人服务器学习记录

记录了如何将一台老旧电脑重装Ubuntu系统,并且将它和windows电脑连接到同一局域网,通过windows远程访问Ubuntu。

2024-06-27

增量式PID电机调速(速度环)(L298N驱动).zip

适宜人群:大学生

2021-08-03

位置式PID电机调速(位置环)(L298N驱动).zip

适宜人群:大学生

2021-08-03

位置式PID电机调速(速度环)(L298N驱动).zip

适宜人群:大学生

2021-08-03

(有刷)25GA370电机编码器测速(L298N驱动).zip

适合人群:大学生

2021-08-03

51 Project(very important).zip

这是我备战蓝桥杯以来写过的所有代码,里面有各个常用模块的例程,分别对应我的蓝桥杯专栏里的文章。此外,还有我自己写的几届省赛真题的代码,供需要的人参考。

2021-05-04

空空如也

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

TA关注的人

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