- 博客(78)
- 问答 (1)
- 收藏
- 关注
原创 STM32定时器
编码器左转,CNT自减,左转产生一个脉冲,CNT的值就减一次,比如编码器再左转产生5个脉冲,那CNT就在原来10的基础上自减5停下来,所以编码器接口模式基本上相当于使用了一个带有方向选择的外部时钟,他同时控制着CNT的计数时钟和计数方向,这样,CNT的值就代表了编码器的位置,如果每隔一段时间取一次CNT的值,再把CNT清零,那每次去取出来的值就表示了编码器的速度,(测频法测量正交脉冲的频率))和外部模块保持默认状态一致,防止默认电平打架,一般来说,默认高电平,这是一个习惯的状态,上拉输入用的比较多)
2023-09-28 11:37:31 187
原创 Makefile常用函数
每一次会返回一个字符串,循环过程中,的所返回的每个字符串会以空格分隔,最后当整个循环结束时,所返回的每个字符串所组成的整个字符串(以空格分隔)将会是 foreach 函数的返回值。所以,最好是一个变量名,可以是一个表达式,而中一般会使用这个参数来依次枚举中的单词。如果的单词个数要比的多,那么,中的多出来的单词将保持原样;(是变量的名字,不应该是引用。
2023-07-24 12:44:39 835
原创 指针的使用
既然是指针,那么就应该是*pf,函数指针指向函数,可以写成*pf(),但是这样pf就会和()先结合,就变成一个函数了,如果希望pf先和*结合的话,就应该括起来,(*pf)(),然后也应该说明指向函数的参数是什么和指向函数的返回类型是什么,所以就可以写成 int(*pf)(in,int)把(*p3)[4]挖出来,int(* )(int, int) 就是一个函数指针类型了,(*p3)[4]是一个数组指针,所以int(*(*p3)[4])(int, int) p3就是一个指向函数指针数组的指针了。
2023-07-12 13:33:28 208
原创 第14届蓝桥杯单片机模拟题第1套(4T)
也是今天才注意到4T上面有三套模拟题,赶紧做了一套,嗯~,逻辑不复杂,提供的代码一个没用到,就是超声波和串口,这个时候就是定时器的分配了。
2023-04-03 19:37:59 880
原创 Keil 5中折叠代码
作为强迫症的人来说,还有代码量有很多的时候,要调用上面写的函数,鼠标滚来滚去,而且我们只需要他的函数名而已,所以把代码折叠就很方便了。
2023-03-28 16:48:46 1296
原创 正则表达式
什么是正则表达式:简单地说,正则表达式就是处理字符串的方法,它以行为单位来进行字符串的处理操作,正则表达式通过一些特殊符号的辅助,可以让用户轻易的完成查找、删除、替换某特定字符串的处理过程。正则表达式的字符串表示方法依照不同的严谨度分为:基础正则表达式、扩展正则表达式。注:正则表达式与通配符是完全不一样的东西,通配符代表的是bash操作接口的一个功能,但正则表达式是一种字符串处理的表示方式。
2023-03-20 16:46:04 1141
原创 Shell 的变量功能
应该很好理解吧,y=ax+b,y就是变量,ax+b就是变量的内容,等号左边是未知数,等号右边是已知数,简单来说,变量是一组文字或符号等,来替换一些设置或一串保留的数据。
2023-03-19 12:29:05 643 1
转载 CMSIS到底是个什么东西
这里不得不说说ARM和STM32、TI这些公司的关系了,ARM 是一个做芯片标准的公司,它负责的是芯片内核的架构设计,而TI、ST这样的公司,他们并不做标准,他们是芯片公司,他们是根据 ARM 公司提供的芯片内核标准设计自己的芯片。STM32的官方库(标准库、HAL库、LL库)就是按照这个标准写的。使用过ARM单片机的朋友肯定听说过CMSIS,可以说CMSIS是开启ARM单片机的金钥匙,是不是想到单片机的启动文件了呢,对的,启动文件只是CMSIS的一部分,你是不是跟我一样对它感到既熟悉又陌生呢?
2023-01-15 16:12:54 6094
原创 VMware Workstation和Oracle VM VirtualBox安装CnetOS 7
VMware Workstation和Oracle VM VirtualBox安装CnetOS 7
2022-12-26 19:31:05 469
原创 WS、WebService、HTTPDNS、RESTful、FTP、邮件
WebSocket、WebService、HTTPDNS、RESTful、FTP、邮件基本概念
2022-08-08 19:15:06 1059
原创 应用层 - 常见协议、域名、DNS、DHCP、HTTP、form提交、正向代理反向代理、CDN
应用层 - 常见协议、域名、DNS、DHCP、HTTP、form提交、正向代理反向代理、CDN,补充:会话跟踪技术。
2022-08-06 19:53:57 584
原创 51单片机实现万年历
对于第一次通过边画图,边敲代码,而且还用11个数码管显示还是有点挑战的。下面是我的代码,还有待优化,毕竟定时器都没用上(实训完就期末还是要留点时间复习的)。main.c sys.conewire.cds1302.csys.honewire.hds1302.h...
2022-06-08 11:30:41 2711 3
原创 基本&高级定时器
stm32g431rb单片机中,共10个定时器2个基本定时器(TIM6和TIM7) 3个通用定时器(TIM2~TIM4):全功能定时器 3个通用定时器(TIM15~TIM17):只有1个或者2个通道 2个高级控制寄存器(TIM1和TIM8)定时器功能比较功能:ADC和DAC开始转换触发 输入捕获:脉冲计数、上升沿或下降沿时间检测、PWM输入检测 输出比较:脉冲输出、电机控制 脉冲宽度调节PWM:电压输出控制、直流减速电机控制、直流无刷电机控制 单脉冲模式输出 编码接..
2022-05-19 10:48:51 1933 1
原创 STM32外部中断
stm32G431总共有111个中断源,所以有时难免有两个或者两个以上的中断一起来临,或者正在处理一个中断服务函数时突然又有一个中断来临,所以微控制器都有一个处理中断的机制。stm32系列芯片用到的机制是:NVIC。NVIC:嵌套向量中断控制器(Nested Vectored Interrupt Controller),STM32的中有一个强大而方便的NVIC,它是属于CM4内核的器件。NVIC 控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。但是各个芯片厂商在设计芯片的时候会对C
2022-04-28 14:32:19 3480
原创 系统滴答定时器
SysTick是一个24位定时器,属于Corte-M4内核中的一个外设,类似NVIC。 一个周期定时器,用于提供时间基准,多为操作系统所使用,常用于对时间要求严格的情况。 SysTick定时器一次最多可以计数2^24(24bit)个时钟脉冲,这个脉冲计数值保存在当前计数值寄存器STK_VAL(Systick current value register)中,只能向下计数,也就是倒计数,每接收到一个时钟脉冲(CPU主频),STK_VAL的值就会向下-1,当减到0时,硬件会自动将重装载寄存器STK_LOA.
2022-04-24 16:59:39 3194
原创 STM32基础知识
首先肯定是要熟悉一下stm32(stm32g431rbt6)板子的布局了其实过一遍就可以大概记住什么东西在哪个位置了。然后就是原理图,熟悉各个引脚的功能上面的DAP Link和 目标MCU也就是板子上的这两个东西,被那个LCD给挡住了再看看芯片的命名规则其实和51或者是15的差不多。15、51都是8位单片机,每个地址都是由8位组成的,地址可以表示为:0x_ _,而32是32位的,地址可以表示为:0x_ _ _ _ _ _ _ _,所以51、15最多可访问255的地址.
2022-04-23 13:25:41 3756
原创 解决No ULINK2/ME Device found问题
昨天安装MDK软件,遇到no st-link detected问题,就很抑郁了,结果解决完这个问题,发现mdk把我的keil5软件给影响了,可能是当时安装没有注意路径的问题,然后就想着把他给卸载了,重新下载一遍,结果又碰到这个No ULINK2/ME Device found问题,太离谱了,又搞了我半天,还去问老师了。。。搞了半天,发现是魔法棒那里没弄好。。把这个勾上对了,如果这里没有这个东西的话,可以点这里添加找到STM32g4 Series中的STM32G4...
2022-04-15 19:47:06 9503
原创 解决no st-link detected问题
最近想学stm32了,今天也刚开始学,那么首先肯定是先安装环境了,结果,直接给我整抑郁了。。下面是我的方法。然后百度了很久,看了好多博客,基本上所有的方法都试过了,结果还是没一点用,有的还说,要不要关机重启一遍,然后也就关机重启了,再试一遍,结果还是一样。然后发现是我一个插件没下,,,ft2232驱动链接:https://pan.baidu.com/s/1_UnegfV22hvfv1tzqcZvXg?pwd=p61t提取码:p61t下载完后打开设备管理器浏览安装的FT..
2022-04-14 21:31:15 6822
空空如也
蓝桥杯单片机如何让共用一个口的数码管流水灯同时工作
2022-01-21
TA创建的收藏夹 TA关注的收藏夹
TA关注的人