单片机——STM32库开发

来源:互联网 发布:火狐浏览器mac版 编辑:程序博客网 时间:2024/06/06 19:39

1.STM32库开发是什么?

ST公司推出的基于Cortex-M3内核的MCU(微控制器,也就是通常所说的单片机)倡导使用固件库开发,仅通过调用库里面的API(应用程序接口)就可以迅速搭建一个程序,写出各种用户需要的应用。库开发方式自顶向下,可以避免对底层寄存器的繁琐操作,能大大降低学习门槛和开发周期

2.推荐书目和软件开发环境

书目推荐《STM32库开发实战指南》,软件开发环境推荐Keil MDK4.21, 在学习的过程中,将书中的原理分析和代码讲解掌握之后,别忘了在开发平台上进行实战运用,体验高效的库开发方法~

3.知识结构

3.1 STM32的GPIO书中的流水灯例程和按键实验控制LED灯,由GPIO外设来实现I/O引脚的高低来实现。控制GPIO端口,在API中查阅控制相关寄存器的库函数。对于GPIO的功能强大,GPIO的所有引脚都可以用作外部中断源的输入,不同的引脚还有相应的复用功能、重映射功能,以满足应用需求。通过按键工程分析GPIO的模式配置,4种输入4种输出。3.2 STM32的中断和异常EXTI(外部中断),由GPIO检测输入脉冲,引起中断事件打断代码执行流程,进入到中断服务函数中处理,处理完成后再返回到中断之前的代码中执行。为了对于中断的管理,中断向量表和NVIC中断控制器来实现,中断执行的操作由用户完成。值得注意这里配置GPIO功能时要开启AFIO端口复用功能。3.3 异步串口通信USART串口通信实现了在程序运行过程中,中间变量或者其他程序状态信息的获取。了解异步串口通讯协议来设置参数,串口外设的工作过程:波特率控制、收发控制和数据存储转移。将串口获得的信息打印出来显示在计算机上,需要将printf()函数重定向进行输出。3.5 DMA功能DMA来完成数据存储达到减轻CPU工作量,之间包含中断控制、串口通信等运用3.6 STM32的ADC实验关注ADC的技术指标和电压值的计算3.7 STM32定时器通用定时器的工作分析,PWM输出过程的分析、占空比的配置。3.8 I2C接口I2C协议的基础上了解其物理层、协议层的原理。

4.学习心得
从微控制器的系统结构:CPU(内核)、外设、内存(SRAM)、总线等结构开始理解,在掌握上边内容的时候,注意有意识的建立一个整体的结构,真正体会STM32固件库的实现原理。
地址映射,时钟系统,固件库对寄存器的封装
通过学习,了解外设对应的寄存器、初始化结构体、数据的输入与输出、外设工作状态有关的状态位标志位、外设函数调用操作完成后标志位的清除。因此,所有驱动程序实际上都是向各种结构体成员写入适当的控制参数,填充结构体,驱动开发就基本完成了。
把握整体架构和实现原理,这也是技术人员学习过程中的重要方面。

0 0
原创粉丝点击