自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 问答 (1)
  • 收藏
  • 关注

原创 Ubuntu编译Opencv3.2.0的cmake命令以及问题合集

下载,然后移动到报错文件夹即可,一般是opencv3.2.0/ippic/downloads/linux-xxx这个文件夹。2、“fatal error: stdlib.h:No such file or directory”就加上。1、“CMake Error: CUDA_nppi_LIBRARY (ADVANCED)”报错就加上。cuda9不再支持2.0架构——Kmiracler的CSDN博客。3、ippicv_linux_20151201.tgz下载失败。将这个cv2.cpp中730行。

2024-02-27 23:07:09 529

原创 通过CAN从0驱动GM6020电机

对于第一次利用CAN启动电机的心得

2022-09-05 11:39:16 6922 8

原创 STM32F4-CAN通讯

CAN是Controller Area Network 的缩写(以下称为CAN),是ISO国际标准化的串行通信协议。CAN协议经过ISO标准化后有两个标准:ISO11898标准和ISO11519-2标准。其中ISO11898是针对通信速率为125Kbps~1Mbps的高速通信标准,而ISO11519-2是针对通信速率为125Kbps以下的低速通信标准。

2022-09-03 22:19:26 3399 4

原创 STM32-Flash读写原理及相关配置

有关Flash的读写应用及个一些人理解

2022-08-27 17:17:54 4299

原创 STM32F4-DMA及相关配置

参考资料:1、正点原子探索者STM32f407-《STM32f407开发指南-版本》-第28章DMA实验;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第9章-DMA控制器。

2022-08-26 18:25:30 4570

原创 如何查看外部接入晶振频率是多少,以及TIMx(或者其他)是挂载在APB1还是APB2上?

也可以找其他挂载的东西,比如CAN、USART之流。此些定义在stm32f4xx_rcc.h中,可由。比如TIM1就挂载在APB2上的。

2022-08-20 12:34:24 2097

原创 STM32-定时器输入捕获实验

参考资料:1、正点原子探索者STM32f407-《STM32f407开发指南-库函数版本》-第15章-输入捕获实验;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第15章-通用定时器。

2022-08-16 19:14:16 2136 1

原创 STM32-PWM输出-库函数版本

参考资料:1、正点原子探索者STM32f407开发板-《STM32f407开发指南-库函数版本》-第14章;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第15.4章-TIM2到TIM5寄存器。目录PWM工作原理设置输出电平占空比的原理PWM工作过程 1、CNT和CCR1比较,比较结果有“>”或者“≤”两种;2、将结果送给TIMx_CCR1的OC1M位决定,结果有有效电平或者无效电平两种,就是那个oc1ref;3、将结果送给TIMx_CCR1的CC1P位决定,CC1P位分别决定有效

2022-08-13 19:50:08 2331 1

原创 STM32-WWDG窗口看门狗-库函数版本

参考资料:1、正点原子探索者STM32f407开发板-《STM32f407开发指南-库函数版本》-第12章;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第19章。之所以称为窗口就是因为其喂狗时间是一个有内(窗口),你可以通过设定相关寄存器,设定其上限时间(下限固定)。喂狗的时间不能过早也不能过晚。而独立看门狗限制喂狗时间在0-x内,x由相关寄存器决定。喂狗的时间只是不能过晚。如图,这个窗口的上限就是W,下限就是0x3F,只有在计数器计到这些数之间才能喂狗🐕。.........

2022-08-12 18:36:31 533 1

原创 STM32-IWDG独立看门狗-库函数版本

参考资料:1、正点原子探索者STM32f407开发板-《STM32f407开发指南-库函数版本》-第11章;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第18章。看门狗:用于监测单片机程序运行状态的模块或者芯片。解决问题:在启动正常运行的时候,系统不能复位。在程序异常执行时候,系统复位,。独立看门狗(IWDG)由专用的低速时钟(LSI)驱动,即使主时钟发生故障它仍有效。独立看门狗适合应用于需要看门狗作为一个在主程序之外、能够完全独立工。...

2022-08-12 17:12:52 499

原创 Error: Flash Download failed - “Cortex-M4“-STM32F4

选择Erase Full Chip,再点击Add,添加这几个文件,确定,然后。网上教程千篇一律,都对我这个没啥用,摸索半天才搞好。可以的话下次选择Erase Sectors就行了。选择Flash Download。到主界面LOAD文件试一下。......

2022-08-11 01:10:57 1694 1

原创 STM32-串口常用寄存器和库函数及配置串口步骤

代码】STM32-串口常用寄存器和库函数及配置串口步骤。

2022-08-10 14:20:46 4814

原创 STM32F407-浅~~析UART异步通信&USART_Init函数入口参数

首先看看 异步通信需要定义的参数: 再看看 此串口运行框图:下面虚线方框的USART_BRR寄存器是设置USARTDIV分频系数的,可以看到fPCLKx(x=1,2)时钟先经过 /USARTDIV,再经过/(8x(2-OVER8)),由于OVER8一般设置为0,所以就是/8x2,即为16分频,最终发送器时钟和接收器时钟的频率(即为波特率)由下表计算: 再比如:如果波特率是96000,那么USARTDIV=54.6875,那么得到:DIV_Fraction=16*0.6875=11(正好是11)=0x0B;D

2022-08-09 16:54:32 1378

原创 STM32-中断优先级管理NVIC

参考资料:1、正点原子探索者STM32f407开发板-《STM32f407开发指南-库函数版本》-4.5小节;2、STM32F4xx 官方参考资料《STM32F4xx中文参考手册》-第十章。

2022-08-08 19:21:02 873

原创 装Ubuntu与Windows双系统简要笔记

刚点开机键就狂按f2,进入bios,左下角的boot device直接可以启动调整顺序。只需要把U盘调整第一位,打开,安装就可以了。其中前两个就是Ubuntu,第一个进入,第二个设置,第三个就是进入Windows,第四个就是进入BIOS。4、根据评论区说的“\home”区有点小,所以我把“\home”区由本来的分配50G改成了分配70G;3、注意主分区和逻辑分区,只有“/”和“/boot”区是主分区,其他都是逻辑分区;首先要下载Ubuntu18.04版本,这里使用的是。.........

2022-08-08 09:25:25 422

原创 STM32F4-正点原子探索者-SYSTEM文件夹下的delay.c文件内延时函数详解

可以看到只有三个函数,delay_init(u8 SYSCLK)是SysTick定时器初始化的函数,delay_ms(u16 nms)是计毫秒的,delay_us(u32 nus)是计微秒的。在调用相关的函数之前,一定要先初始化!关于fac_ms和fac_us,在文件一开始有这样的定义(一开始是0,后来根据实际情况改变):这两个全局变量的作用会在第二节讲到。此处将把关于UCOS相关代码忽略,后面学习:这里出现了SysTick_CLKSourceConfig(SysTick_CLKSo

2022-08-05 21:19:28 8135

原创 STM32-库函数-SetSysClock(void)函数解析-正点原子探索者

-----------------------------------------------华-丽-分-割-线------------------------------------------------SetSysClock(void)函数就是对这几个时钟进行初始化,并且设置SYSCLK(系统时钟)看图可知,有五个时钟源,分别为LSE、LSI、HSE、HSI、PLLCLLK。时钟结构STM32F4xx中文参考手册.pdf-6.2时钟。设置过程的代码有一定重复度,清楚一个模板应该就🆗。......

2022-07-29 10:46:25 1962

原创 在Keil 5上配置ST-Link下载器的方法 Windows 10

在一切的开始,让我们先把STLink下载器插在电脑上,并且确保下载器连接到开发板上,而且开发板需要是电源开启的状态,然后...有些人说win10可以直接自动装上驱动,然而我的并没有。但是别急,还有一部没完成,否则有可能会出现“ERRORcannotloadflashdevicedescription”的错误,所以点击“FlashDownload”如果发现程序写入错误,可以尝试全片擦除“EraseFullChip”,意思是开发板你妈全部残码都给去掉,重新写入,就是有点慢~............

2022-07-19 22:26:45 4296 2

原创 关于if(x)和while(x)的解释

if(x)就等价于if(x!=0)则执行语句,否则会跳出语句:int x = 0,a;if(x)a=7;else a=9;此时输出a,a=9。if(!x)相反,等价于if(x==0)则执行语句,否则会跳出语句:int x1=1,x2=1,a;if(!x1)a=5;else if(x2)a=7;else a=9;此时输出a,a=7。...

2022-05-08 12:52:31 3994

原创 scanf函数在混合接受数据(%d和%c相连接)时候的方式

如下代码,怎样输入才是正确的?#include<stdio.h>void main(){ int a,b; char c,d; scanf("%d%c%d%c",&a,&c,&b,&d); printf("%d-%d-%c-%c",a,b,c,d);}假设希望a、b、c、d分别是10、20、A、B:输入“10A20B”,输出“10-20-A-B”;输入“10A 20B”,输出“10-20-A-B”;输入“10A 20B”,输出仍然是“10

2022-05-08 12:33:59 4846

原创 C语言中switch的嵌套

C语言中switch中嵌套switch要注意在嵌套的switch后面加break,否则会导致顺位,这个问题本质就是break没加导致的233见代码:#include<stdio.h>void main(){ int a=1, b=0; switch(a){ case 1: switch(b){ case 0:printf("0");break; case 1:printf("1");break; } case 2:printf("2");bre

2022-05-08 11:55:00 6496 2

空空如也

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

TA关注的人

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