STM32笔记四
1.时钟振荡器:产生时钟信号送给单片机内部各电路,并且控制这些电路,使它们有节拍的工作。
2.ROM是一种具有存储功能的电路,断电后信息不回丢失。RAM也是一种存储电路,断电后信息丢失。
3.串行通信口是单片机和外部设备进行串行通信的接口。串行传递数据是一位一位的进行传递,同时传输多位数据的方式成为并行通信。
4.电子电路图:是指按照统一的符号用导线将电源、开关(电键)、用电器、电流表、电压表等连接起来。它是一种反映电子产品和电子设备中各元器件的电气连接情况的图纸。
5.STM32的全部寄存器都可以实现位带操作。可以通过指针的形式访问位带别名区地址来操作位带区。
6.栈是用于局部变量、函数调用、函数形参等的开销,栈的大小不能超过内部SRAM的大小。堆主要用于动态内存的分配。
7.向量表在地址空间中的位置是可以设置的,通过NVIC中的一个重定位寄存器来指出向量表的地址。
8.时钟的一般配置:SYSCLK=PLLCLK(设置PLL倍频,PLL时钟来源为HSE)=HCLK(设置AHB分频因子)=PCLK2(设置APB2分频因子)=72MHz;PCLK1(设置APB1分频因子)=HCLK/2=36MHz。
9.配置中断的时候一般使用ISER(使能中断)、ICER(清除中断)和IP(设置中断优先级)这三个寄存器。
10.RS-232标准主要规定了信号的用途、通信接口以及信号的电平标准。
11.USART是一个串行通信设备,可以进行全双工数据交换。UART在USART的基础上裁剪了同步通信,不需要对外提供时钟输出,平时用的串口基本上都是UART。
12.Cortex-M3的向量中断统一由NVIC管理。EXTI是ST公司在其STM32产品上扩展的外部中断控制,它负责管理映射到GPIO引脚上的外中断和片内几个集成外设的中断以及软件中断,其输出最终被映射到NVIC的相应通道。配置EXTI中断的过程必然包含对NVIC的配置。
13.DMA有DMA1和DMA2两个控制器,DMA1有7个通道,DMA2有2个通道,不同DMA控制器的通道对应不同的外设请求。
14.编写设备驱动的规律:首先确定设备使用的通信协议,然后要了解目标设备的相关指令,最后根据这些指令的格式要求,使用通信协议向设备发送指令,达到控制设备的目标。
15.飞控系统:稳定飞行姿态,控制飞行棋进行自主或半自主飞行的控制系统,是飞行器的大脑。主要由陀螺仪、加速度计、地磁感应器、气压传感器、超声波传感器、光流传感器、GPS模块及控制电路组成。
16.高电平和低电平:在数字逻辑电路中,低电平表示0,高电平表示1。一般规定低电平为0~0.25V,高电平为3.5~5V。
17.CPU分类:CPU分成MCU(微控制器,或者称为单片机)和MPU(微处理器)两类,它们的本质区别在于MMU(内存管理单元),也就是对于虚拟内存空间的支持。树莓派和S3C2440就属于MPU类的,而Arduino和STM32就属于MCU类的。它们在运算能力上有巨大的差距。
18.一个CPU里面有上亿个晶体管组成。CPU工作流程大概分为:取指、解码、执行、写回。
19.锁存器最主要的作用就是缓存。触发器是指在时钟信号触发时才能动作的存储单元电路。
20.寄存器是指能够用来存储一组二进制代码的同步时序逻辑电路。寄存器就是一个存储单元,一般是由触发器构成。整个流程大概是:晶体管->基本门电路->R-S锁存器->D触发器->寄存器。
21.EXTI(外部中断/事件控制器)有两部分功能:一个是产生中断,一个是产生事件。产生中断目的是把输入信号输入到NVIC,进一步运行中断服务函数,实现功能,这样是软件级的;产生事件目的是传输一个脉冲信号给其他外设使用,并且是电路级别的信号传输,属于硬件级的。
22.微控制器适用于那些以极少的元件实现对输入/输出设备进行控制的场合,而微处理器适用于计算机系统中进行信息处理。
23.STM32Cube中生成项目是,应用程序结构分为基本和高级,高级包含了中间件RTOS、文件系统、USB设备等。
24.系统时钟有3个可选来源:直接使用芯片内部8MHz时钟源;外接72MHz的晶振作为时钟源;出于成本和稳定性考虑一般是外接8MHz晶振时钟源,2分频接入到PLL再倍频得到PLLCLK,然后才得到72MHz系统时钟。
STM32笔记四的更多相关文章
- C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻
前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...
- 《MFC游戏开发》笔记四 键盘响应和鼠标响应:让人物动起来
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9327377 作者:七十一雾央 新浪微博:http:// ...
- IOS学习笔记(四)之UITextField和UITextView控件学习
IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...
- java之jvm学习笔记四(安全管理器)
java之jvm学习笔记四(安全管理器) 前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器. 安全管理器 ...
- Java学习笔记四---打包成双击可运行的jar文件
写笔记四前的脑回路是这样的: 前面的学习笔记二,提到3个环境变量,其中java_home好理解,就是jdk安装路径:classpath指向类文件的搜索路径:path指向可执行程序的搜索路径.这里的类文 ...
- Java加密与解密笔记(四) 高级应用
术语列表: CA:证书颁发认证机构(Certificate Authority) PEM:隐私增强邮件(Privacy Enhanced Mail),是OpenSSL使用的一种密钥文件. PKI:公钥 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
- Typescript 学习笔记四:回忆ES5 中的类
中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...
- Django开发笔记四
Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.邮箱激活 users app下,models.py: ...
随机推荐
- 【分布式】-- 基于Nacos、OpenFeign搭建的微服务抽奖系统后台小案例
1.项目介绍 最近入项目之前要求熟悉一下SpringCloud Nacos微服务基于Feign接口调用并整合Swagger2进行接口文档展示给前端,所以自己按照要求来编写并整合了一套基于SpringC ...
- object_pool对象池
object_pool对象池 object_pool是用于类实例(对象)的内存池,它能够在析构时调用所有已经分配的内存块调用析构函数,从而正确释放资源,需要包含以下头文件: #include < ...
- Go语言协程并发---条件变量
package main import ( "fmt" "sync" "time" ) func main() { //要监听的变量 bit ...
- 优雅关闭springboot应用
1.添加钩子函数,钩子函数中指定要调用的方法 @PostConstruct public void run() { this.zkClient.start(this); this.schedulerS ...
- ResNet网络的训练和预测
ResNet网络的训练和预测 简介 Introduction 图像分类与CNN 图像分类 是指将图像信息中所反映的不同特征,把不同类别的目标区分开来的图像处理方法,是计算机视觉中其他任务,比如目标检测 ...
- MindSpore应用目标
MindSpore应用目标 以下将展示MindSpore近一年的高阶计划,会根据用户的反馈诉求,持续调整计划的优先级. 总体而言,会努力在以下几个方面不断改进. 1. 提供更多的预置模型支持. 2. ...
- Minkowski修剪
Minkowski修剪 Minkowski修剪 Class MinkowskiEngine.MinkowskiPruning 从MinkowskiEngine.SparseTensor中删除指定的坐标 ...
- Pipe Utilization管道利用率
Pipe Utilization管道利用率 概述 CUDA设备的每个流式多处理器(SM)都具有许多专门用于执行特定任务的硬件单元.在芯片级,这些单元提供执行管道,翘曲调度程序将指令发送到这些管道.例如 ...
- 解决:ImportError: DLL load failed while importing _sqlite3: 找不到指定的模块。
Django框架学习第一步,创建一个Django工程. 本次采用的是创建虚拟环境来创建Django工程.本地解释器采用anaconda ,内置Python3.8 在pycharm中报错: 内容如下:I ...
- 深入理解Spring事务的那点事
Spring事务的基本原理 Spring事务的本质其实就是数据库对事务的支持,没有数据库的事务支持,spring是无法提供事务功能的.对于纯JDBC操作数据库,想要用到事务,可以按照以下步骤进行: 获 ...