*********************************文章背景********************************
本人大三上时期开始51单片机开发和linux基础命令的学习,大三上学期寒假开始stm32单片机入门,寒假
结束参加 第十二届蓝桥杯大赛 基础较为薄弱,希望大家稳扎稳打大好基础,早点迷途知返。
本章只是当初刚入门时候做的笔记,现在感觉没有用处,准备删除笔记,但是想想当初自己也是刚开始很迷
茫不知道从哪里开始,该怎么去应对这个比赛,就想着发出来让看到的兄弟能稍微有点用处。
内容添加一点点现在的理解,对于这个功能的应该的重视程度,简单的添加一点内容,如果文章有人看的话
再好好整理一下。
利用蓝桥杯官方给的底层代码进行驱动开发,中断服务函数的编写,刚开始的话,就是配置个驱动,会使用就好了
****************************正文开始*****************************
必会:
LED:如果不会的话,兄弟们咱放弃吧,别受这个气哈哈哈哈!!
LCD:在三个write里面加上两句话防止出现led灯混乱亮灭,蓝桥杯的板子上会出现的问题
GPIO:驱动函数: GPIO\IOToggle main.c(配置一个管脚,基础中的基础,文章最后给出配置模式)
KEY:自写(长短按键,时间控制)
易错:1.管脚模式复制GPIO忘记更改模式. 2.编写读函数编写
长按键:
短按键:
USART:(TX RX)(必学,基础)
易错:中断服务函数配置加一句清除函数,标志变量和标志位的使用使用函数的清零和最后使能串口
TX(发送端):驱动配置:USART\Interrupt main.c (GPIO USART)
中断服务函数:USART\Interrupt stm32f10x_it.c
使用函数:HyperTerminal_HwFlowControl main.c
RX(接收端):驱动配置:USART\Interrupt main.c (GPIO USART NVIC)
中断服务函数:USART\Interrupt stm32f10x_it.c
使用函数:HyperTerminal_HwFlowControl main.c
EEPROM:
驱动配置:底层驱动代码给出例程直接使用
使用函数:参考AT24C02编写8write 11read函数
细节:1.i2c_init();不要忘记在主函数里调用
2.(...)
TIM:(定时功能,PWM功能)(引申到中断优先级NVIC)
TIM:定时功能深入学习
PWM:(输出单通道或者双通道的波形)(滤波算法)(必学,基础)
驱动配置:TIM\PWM_Output main.c(不同频率,固定方波)
驱动配置:TIM\TIM9_OCToggle main.c
RTC:
驱动配置:RTC\LSI_Calib main.c (RTC NVIC BPK PWR)
中断服务函数:RTC\Calendar stm32f10x_it.c 151行 前一半
RTC\Calendar main.c 290行 后一半
使用函数:RTC\Calendar main.c 297行
ADC:(测量某个管脚的电压)(必学,基础)
驱动配置:ADC\ADC1_DMA main.c
中断服务函数:在滴答定时器里面加入标志变量
使用函数:自己编写Get_ADC()
PWM捕获:(大概率不会考,但是很有用处,可以学学看)
驱动配置:TIM\InputCapture
BUZZ:(考试几率不大新板上面没有蜂鸣器)
零基础可以参考视频学习:
我当初选的,即使到现在依然不后悔,从学习上来讲确实是大有裨益讲的很基础非常适合初学者。入门之后当然推荐正点原子,其次野火
X宝:(电子设计工坊)基础篇,(大科电子工作室)提高篇
总结资料
历届比赛文档十一当时没找到,第十二届主要考的串口的收发(USART(TX RX)),下面这些其实也足够了
收集的开发过程中比较重要的一些文档
官方文档里面的资料,