(stm32简介)

123 阅读3分钟

课前

微控制单元(Microcontroller Unit;MCU) ,又称单片微型计算机(Single Chip Microcomputer )或者单片机,是把中央处理器(Central Process Unit;CPU)的频率与规格做适当缩减,并将内存(memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同组合控制。诸如手机、PC外围、遥控器,至汽车电子、工业上的步进马达、机器手臂的控制等,都可见到MCU的身影。

嵌哥:单片机-数据结构-实时操作系统 操作系统的定义是介于应用层和目标硬件之间提供中间层软件的一种软件;它提供出应用层和目标硬件之间的一个抽象层;职责在于去管理分配 CPU 的资源,包括 CPU 、内存和外设等。 操作系统是管理计算机硬件与软件资源的系统软件程序。管理与配置内存,决定优先次序等。

1.STM32F103c8t6

image.png

工程架构

stm32f10x_conf.h是用来配置头文件的包含关系的,conf文件include了所有的库函数头文件,只需要包含这一个头文件,就相当于包含了所有的库函数头文件。就可以任意调用库函数。 主动执行部分:startup_xx.s文件为启动文件,定义了中断向量表,中断服务函数等,中断服务函数中有复位中断,是整个程序的入口。复位中断函数主要第一个是调用SystemInit函数(定义在system_xx.c,设置微控制器的启动,初始化嵌入式闪存接口,锁相环,更新系统内核的时钟变量。),第二个是调用main函数。启动文件里还定义了stm32所有的其它中断,达到触发条件后会自动执行。中断的定义是在stm32f10x_it.c里面的。 另外,stm32f10x.h是外设寄存器描述,core_cm3.c是内核寄存器描述。里面是寄存器和寄存器每一位的名字还有地址信息等。不过直接操作寄存器很麻烦,所以提供了库函数文件,misc.c及stm32f10x_adc.c等,这些函数封装了寄存器的操作,提供了人性化的函数调用方式。

stm32f103c8t6,48个引脚,通过程序配置外设,完成想要的功能。

1、rcc时钟系统 2、定时器 3、外部中断 4、I2C 5、UART串口 6、SPI 7、ADC 8、基于定时器的PWM
高低电平 通信协议时序图 基本原理图 信号怎么走

文件最后一行必须是空行,否则会报错。 c语言不支持写二进制数,只能写十六进制数。 进制是一种计数的方式,常用的有二进制、八进制、十进制、十六进制。任何数据在计算机内存中都是以二进制的形式存放的。

32单片机供电电压一般为3.3V。

C语言允许用户使用 typedef 关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称、数组类型名称、指针类型名称与用户自定义的结构型名称、共用型名称、枚举型名称等。一旦用户在程序中定义了自己的数据类型名称,就可以在该程序中用自己的数据类型名称来定义变量的类型、数组的类型、指针变量的类型与函数的类型等。(给数据类型起新名字)

电流:由高到低

A15、B3、B4、别用,是调试端口。

对GPIO库函数、中断部分库函数、复位和时钟设置的库函数要比较熟悉,因为平时经常会用到。

不显示提示代码时按ctrl+alt+空格。

2.片上外设(peripheral)

image.png

3.stm32引脚定义

image.png

image.png