![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32
心广体胖
这个作者很懒,什么都没留下…
展开
-
蓝桥杯嵌入式学习STM32之模拟IIC
开学了…博客更新可能不会很频繁了。而且我的stm32系统学习路程也快接近尾声了,下面就是不断的练习保持手感。今天主要是背代码,模拟IIC必须要脱手而出。STM32F1系列的硬件IIC据说会有bug,所以为了保证比赛不出现为止bug我选择模拟IIC。对了IIC读作I方C,而不是I双C//³õʼ»¯IICvoid IIC_Init(void){ GPIO_In...原创 2020-02-17 14:25:53 · 1200 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之DAC实验
DAC相当于ADC的逆过程,类似于给你一个数值,比如说2000,按照和4096比例换算,再乘以3.3V输出。实现了数字转模拟的功能。系统框图分别接好模拟电源和模拟地。再接好参考电压(3.3V)。然后我们通过往DHR寄存器写入值,系统在收到触发信号以后内部经过转化到DOR寄存器,然后输出。输出引脚要设置成模拟输入。小知识但是输出缓存会导致无法输出0.常用寄存器以DAC1为...原创 2020-02-15 17:46:04 · 892 阅读 · 1 评论 -
蓝桥杯嵌入式学习STM32之ADC模数转换器
模数转换器。举个例子就懂了。模拟量可以无限细分是连续的,处理起来很复杂。我们用数字去近似,变成离散的,比如12位的寄存器,那么就有4096种情况,如果参考电压设置的是3.3v,那么就可以用0-4096之间的某个值来表述电压大小,每一位代表3.3/4096.重要引脚框图讲解...原创 2020-02-14 01:15:19 · 541 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之RTC时钟原理及配置
RTC时钟原理单片机内部有一块断电不丢失的寄存器(由额外电池一般是纽扣电池供电),每隔1s加1,然后记录的是与1970年1月1日0时的秒差。工作原理细解RTC模块的一些配置是被一个叫做后备区域保护着(禁止写),所以设置之前要先取消后备区域写保护。首先RTC CLK有三个来源。最主要的是外部低速晶振。其他两个来源我懒得打了,可以参考时钟讲解。RTC_DIV会随着预装载得值减到0然后产生一...原创 2020-02-11 01:19:27 · 928 阅读 · 0 评论 -
STM32学习之USMART使用
看到没有,我不是标题党,这个蓝桥杯用不了我就没加!!USMART是正点原子推出的一款利用串口通信方便调参的工具。简单来说:一般情况下函数的入口参数调整很麻烦,你需要1.改变参数2.编译3.下载4.观察用了USMART以后,只需要1.串口发送你需要的参数2.观察这样子很方便也很舒服。...原创 2020-02-09 19:09:45 · 2497 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之TFT LCD屏幕(80并口)
不知不觉居然少了一天??!!!啊啊啊我明明是日更博主,怎么漏了一天????(我才不知道呢言归正传,在正点原子的学习进程中这章应该是触摸按键但是我感觉那个好难啊,要检查充放电时间什么的。。。等过几天吧然后后面还有一个OLED屏幕但是我好像没有OLED模块,就算有也肯定没带回来,所以就到了LCD屏幕了,而且蓝桥杯用的也是这个ヾ(≧▽≦*)o1. 驱动原理目前各类液晶显示器用的是in...原创 2020-02-08 00:21:44 · 2401 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之FSMC详解
我刚刚打标题才发现我好像一直打着蓝桥杯的名号写一些和比赛不是很有关的blog。其实我早就感觉到了,我故意的才不是为了骗访问量好了言归正传前排提醒,本BLOG是通过用FSMC控制LCD驱动为例讲解,并不是针对FSMC讲解驱动原理FSMC:灵活的静态储存控制器。以下都是我个人的理解,可能不是很官方准确,但是绝对是人话!!!保证能看懂。FSMC我感觉是意法半导体公司为了方便用户使用一些...原创 2020-02-08 03:46:43 · 1483 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之输入捕获
真的每天都要写博客我已经要吐了我快坚持不下去了啊啊啊啊难受今日知识点区别&按位与&&逻辑与优先级关系!>&&>||工作流程TI1接收到输入信号(此处可以考虑是否要滤除一些短暂的脉冲,毛刺),然后交给边沿监测(你可以设置检验上边沿还是下边沿),然后选择是否要映射(你可以将数据传到IC1,也可以映射到IC2;同理IC...原创 2020-02-06 01:27:47 · 694 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之PWM生成
有个关于预装载ARPE的问题我一直没弄懂。希望未来的的我能搞明白并且回来完善这篇文章。不过我也不是什么都没做,我找了一篇挺棒的博客,虽然看的似懂非懂,但是有点感觉了,不过让我表述出来还是不行的。博客其实内容很简单,控制计数器从0到ARR(预设置的值),再设置一个用来比较的值CCRx,如果比CCRx小就输出低电平,反之高电平。从这个例子很轻松就可以看出ARR控制频率(当然是在相同的时钟条件下...原创 2020-02-05 02:29:23 · 440 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之定时器中断TIM
题外话STM32在进行IO翻转操作的时候可以使用以下方法:以PE.5为例GPIO_WriteBit(GPIOE,GPIO_Pin_5,(BitAction)(1-(GPIO_ReadOutputDataBit(GPIOE,GPIO_Pin_5))));GPIO_WriteBit(GPIOE, GPIO_Pin_5, (BitAction)!GPIO_ReadOutputDataBit(GPI...原创 2020-02-03 22:51:54 · 963 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之通用定时器基础
这一篇只有基本原理讲解,没有代码。定时器定时器顾名思义就计时的好了,本章完结。可恶居然不能大段空白。。。。三种定时器的区别牛逼程度依次递减特点现在看不懂问题也不大上图是解释下图2的流程图一、时钟来源二、操控三、输入通道从输入通道来的数据进行比较啊,输入捕获,然后算上升沿和下降沿之间的时间:占空比啊(算时间)四、输出输出pwm啊设定某一个值,比他大...原创 2020-02-02 23:39:21 · 267 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之窗口看门狗(WWDG)及一直复位的解决办法
我不知道为什么,最近真的学腻了什么东西都学不下去效率好差劲心太浮躁了唉去TMD的单片机靠简单介绍窗口看门狗就是必须在某个限定的时间段喂狗才不复位,喂早了喂晚了都不行。为什么要这样的,就是怕用普通的喂狗,万一bug里自带喂狗就不好了,在一个狭窄的时间段里,这样程序的精确性会大大提高。为啥叫窗口?你听过窗口比较器么,还有滤波器(不过人家叫带通,带阻)自己类比去吧,程序员的脑子...原创 2020-02-02 00:50:28 · 2573 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之独立看门狗
看门狗这个东西我觉得好好玩啊。狗狗帮忙看家护院(监测程序),还要定时投喂。//你要是真信了就太天真了( ̄_, ̄ )其实这只狗一点都不会看家护院,反而还挺会捣乱还特能吃。你,也就是主人每隔一端时间就要给他加饭,不然他吃完了就会给你捣蛋。这样想的话,狗狗不捣蛋说明有人给他加饭,说明你还活着,很正常。万一主人不正常了(你懂的,狗就饿着了,就捣蛋(RESET)了。基本概念:在由单片机构成的...原创 2020-01-31 22:59:44 · 223 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之外部中断EXTI详解
先说点题外话。!是取逻辑反的意思,~是按位取反的意思!0x01=0;~0x01=1111 1110;进入正题基本概念STM32的每个IO都可以作为外部中断输入。STM32的中断控制器支持19个外部中断/事件请求:线0~15:对应外部IO口的输入中断。线16:连接到PVD输出。线17:连接到RTC闹钟事件。线18:连接到USB唤醒事件。每个外部中断线可以独立的配置触发...原创 2020-01-30 22:16:26 · 1464 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之USART串口
终于到了这里串口通信的基本知识我之前FPGA系列有讲解。串口通信知识我好像忽然发现一个让浏览量大增的好办法(禁止套娃这篇主要讲STM32 USART库函数代码怎么写不过在这之前还是要讲一点理论知识。至少要了解一点寄存器的概念。四个重要的寄存器USART_SR状态寄存器USART_DR数据寄存器USART_BRR波特率寄存器USART_CR1控制寄存器,各种使能详见中文手册2...原创 2020-01-29 21:29:11 · 509 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之中断优先级分组NVIC
CM3里面有很多中断,有更高的优先级层数。但是stm32f103被阉割了好多。 CM3内核支持256个中断,其中包含了16个内核中断和240个外部中断,并且具有256级的可编程中断设置。 STM32并没有使用CM3内核的全部东西,而是只用了它的一部分。 STM32有84个中断,包括16个内核中断和68个可屏蔽中断,具有16级可编程的中断优先级。 STM32F103系列上面,又只有6...原创 2020-01-29 01:09:27 · 796 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之端口复用及重映射
复用这个其实很简单。GPIO全称是啥?General-Purpose Input /Output Ports通用输入/输出端口平常就相当于普通兵,你可以根据“战场情况”(甲方需求)让他变成其他兵种比如说PA9 PA10是两个正常的管脚我们可以通过配置让他变成UART1的发送/接收引脚,这样的配置使得有限得I/O口得到丰富的外设功能。配置方法先使能I/O口的时钟。void ...原创 2020-01-28 18:17:29 · 542 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之JTAG调试
这章很简单…JTAG调试占用5个IO口,而SW只要2个,所以建议用SW。那么问题来了,怎么去设置哪个模式呢?答案在于用GPIO库的一个函数。void GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState);第一个参数如下所示:#define GPIO_Remap_SWJ_NoJTRST ((...原创 2020-01-27 23:24:32 · 578 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之SystemInit函数详解及systick定时器
现在是凌晨2:44分我本来12点多就躺在床上准备休息的,结果发现根本睡不着。还不如起来学习…又浪费了一点时间不过这三个小时的时间里去掉看沙雕视频的时间,自己想了一下现在的水平,发现自己好菜啊,根本不敢睡觉。(;´д`)ゞ害在这里可以通过修改宏定义的方式改变系统时钟。注:SystemCoreClock永远是当前的系统时钟,放心用就可。初始化之后可以通过变量SystemCoreClo...原创 2020-01-27 04:03:10 · 772 阅读 · 0 评论 -
蓝桥杯嵌入式学习之STM32时钟详解
今天是大年初一渐渐感觉自己的时间不够用了…我现在好困,但是没办法,必须完成任务指标希望明天能买到口罩…在讲时钟之前先说点简单的东西。第一个 extern的用法:变量只用定义一次,在其他文件里要用的的话得用extern声明一下,声明可以很多次。第二个 MDK寄存器地址映射分析:外设基地址系统会给你一个准确得地址数值,以她为母体得子地址都是在基地址的基础上偏移得到。例如:时...原创 2020-01-25 23:32:32 · 504 阅读 · 0 评论 -
蓝桥杯嵌入式学习STM32之按键——GPIO的输入
今天是除夕夜…不想看春晚,不想看拜年祭,不想学习,但是又不得不学习…唉~好难受只能学习了…孤独…每天都在学AD、学STM32,看新概念模拟电路希望未来能有个好收获把另外今天我才开始去了解武汉的病情,好像还挺严重的,武汉加油!!正题GPIO每次使用前都要进行初始化,前面点灯环节已经介绍过大体流程,这次就简单一点。第一步使能时钟略第二步配置引脚本次实验我采用的是库函数版本。...原创 2020-01-24 21:19:03 · 343 阅读 · 0 评论 -
蓝桥杯嵌入式STM32学习之点亮LED(GPIO的控制)
好久没更新了…距离蓝桥杯比赛还有两个月的时间。目前对STM32的了解度不到1%。寒假必须努力加油,还要学会AD,并且春节结束打出自己第一块板子。还有看完新概念模拟电路…完了,我肯定是疯了努力成为电子设计全栈选手,既会设计电路也会画板子还要能调代码…不过有一说一,目前这些东西只是简单涉及,肯定要了解一下,离真正的精通还远着呢!!!废话不多说。简答说一下我对32的初感受。很复杂,比我...原创 2020-01-22 22:32:59 · 625 阅读 · 0 评论 -
STM32学习日记之新建工程模板
规范的工程模板是以后维护修改的基础。STM32正式开坑啦!!其实我也在想我是不是开了太多的坑(目前有FPGA,STM32,K60,后续还有Linux开发板,蓝桥杯嵌入式的开发板虽然也是STM32…可能还有pynq)啊啊啊啊不管那么多了,学习!CORE, OBJ 以及STM32F10x_FWLib...原创 2019-11-27 21:05:32 · 135 阅读 · 0 评论