
STM32
文章平均质量分 70
暮尘依旧
时间以沉默的残酷吞噬一切伟大,所以我们只能缩在最小的角落体验人生
展开
-
C语言关于指针的一些笔记
目录写在前面int (*initFunction)(void);typedef int (*initFunction)(void);(void*)0写在前面之前在学校里面学了许多关于C语言的基础知识,也参加了一些机器人的比赛,但是直到今天看了一些嵌入式系统的写的代码之后,才发现自己之前学到的东西太基础了。自己并没有把指针这一块玩转,所以重新学习指针这一块,写下笔记参考void (* init)(void);是什么? 函数指针介绍int (*initFunction)(void);声明函数指针的原创 2022-04-02 17:20:57 · 1191 阅读 · 0 评论 -
关于pyserial无法与STM32进行串口通信
这是一篇bug记录博客,目前没有找到能解决的方法最近用python进行深度学习和图像处理,然后发包控制底层STM32单片机进行控制,但是今天在使用普中科技的STM32F1的开发板的时候,始终无法进行通信,在用pyserial打开端口之后,单片机就卡死无法跑程序。硬件环境利用普中的USART1和上位机笔记本进行通信现象尝试了网上几乎能找到的所有pyserial发包的代码和底层单片机USART底层接收配置,但是都没有用。只要上位机pyserial打开串口,单片机代码就不动了,并且因为打开了串口,我还原创 2021-11-06 11:33:33 · 1619 阅读 · 13 评论 -
深刻理解GPIO(上拉输入、下拉输入、模拟输入、浮空输入,开漏输出,推挽输出的区别,以STM32为例)
GPIO的八大模式原创 2021-09-16 15:40:26 · 124201 阅读 · 40 评论 -
keil中引用.h文件需要注意的事项
1.需要把自己文件中的变量全局声明就需要在头文件中extern,在其他文件中include头文件即可2.需要在其他文件中引用其他文件中的变量,只需要在.c文件中extern一下即可一定要记住,keil里面不要循环嵌套,不然会出现明明定义了变量,却找不到定义的情况。...原创 2021-07-26 04:15:28 · 2563 阅读 · 0 评论 -
PID算法理解和代码以及PID调参
PID算法理解以及调参写在前面正文1.PID算法的基本公式2.理解PID算法公式3.对P、I、D三个参数的理解4.调参方法5.参考代码写在前面在一年前自己学习了一下PID算法,但是对具体的过程,计算式子,并没有做到很好的理解,于是自己总结并再次学习了一遍,以此记录,希望能和大家一起讨论...原创 2021-06-06 13:50:18 · 34142 阅读 · 1 评论 -
STM32 keil5 报错:flash download failed-cortex M3解决方法
起因因为之前自己使用的STM32都是使用的F4,自己打了一块STM32F1C8T6板子,焊好之后,打开以前正点原子的例程的时候,出现无法烧录的情况,总是报这样的错误,确认不是线的问题之后,开始找别的方法。本人采用的是Jlink烧录自己学了半年的单片机,其实感觉自己还是一个小白,所以自己的第一反应是我自己焊的最小系统是不是出问题了,然后询问学长说,不一定,然后自己网上查阅资料发现:keil5下面的信息提示是检测到了芯片的,于是继续找别的方法,发现通过以下方法可以正确烧录。解决方法首先:Devic原创 2020-10-22 16:25:47 · 51368 阅读 · 22 评论 -
STM32学习之利用一个板子进行CAN通信并进行回环模式(一个板子的自收自发并用串口显示)
目录概述具体原理优先级的判断关于ID号以及掩码模式波特率实战例子概述CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统 被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很 多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信”的需 要,1986 年德原创 2020-07-28 10:05:39 · 5421 阅读 · 3 评论 -
STM32学习之串口采用DMA收发数据:需要利用状态机加DMA加串口
写在前面在学习这一节知识点的时候,真的是感觉太抽象了,没有一个合适的视频讲的我有那种豁然开朗的感觉,直到我看到了这篇文章,大家可以去看看,里面的描述特别形象。链接:https://blog.youkuaiyun.com/gdjason/article/details/51019219是什么DMA —- Directional Memory Access,直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。原创 2020-07-27 21:12:23 · 1780 阅读 · 1 评论 -
STM32学习之舵机总结
舵机总结写在前面其实从51开始,这个舵机就有点让我头晕,在学习了STM32之后,想来一次彻底总结一下舵机。资料学习参考:舵机原理简述舵机原理控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。个人认为,我们需要知道的是舵机的以下几点原创 2020-07-20 11:21:59 · 3269 阅读 · 0 评论 -
STM32单片机 sg90大致模拟时钟时分秒指针(RTC模块和舵机)
第一周学习任务(其二)实现思路和方法2.利用舵机模拟时钟指针。用舵机模拟时钟的时分秒,设置一个按键让舵机模拟的指针可以在时分秒之间切换,时间设定可在代码内来修改。注:舵机的限位作为时钟的0点(12点),由于舵机只能转180度,所以可以用1度来代表时钟上的2度,当时针指到12或分针秒针指到60时(舵机180度)需要转回0度,秒针要能体现出转动实现思路个人认为实现的方法是比较方便的,因为STM32F10x系列的芯片上面是带有RTC模块的,RTC模块在以后我也要自己再总结一遍,其实就是一个类似于DS130原创 2020-07-18 15:33:39 · 1634 阅读 · 0 评论 -
STM32单片机按键改变频率呼吸灯(用到自带PWM输出和自己写一个PWM输出)
写在前面好久没写博客了,在经过一个学期的51单片机的学习,最终经过考核,终于进入了学校的基地,看到基地里面的机器人,那个兴奋啊。还记得当天8个小时的密闭环境的编程,没有胃口吃饭,没有心思吃饭,一直想着怎么完成题目,考完之后心里更忐忑,担心无法被录取,在收到面试消息之后,这个晚上,我应该一辈子都不会忘记,睡不着觉,失眠到1点半,早上5点半就醒了,当自己最终收到被录取的信息的时候,忐忑的心终于放下了。在进入基地之后开始学习STM32F1,继续写博客,记录下自己新的起点,新的路程。望自己也能在总结自己中提升,原创 2020-07-18 14:30:44 · 10082 阅读 · 18 评论