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笔记四的更多相关文章

  1. C#可扩展编程之MEF学习笔记(四):见证奇迹的时刻

    前面三篇讲了MEF的基础和基本到导入导出方法,下面就是见证MEF真正魅力所在的时刻.如果没有看过前面的文章,请到我的博客首页查看. 前面我们都是在一个项目中写了一个类来测试的,但实际开发中,我们往往要 ...

  2. 《MFC游戏开发》笔记四 键盘响应和鼠标响应:让人物动起来

    本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9327377 作者:七十一雾央 新浪微博:http:// ...

  3. IOS学习笔记(四)之UITextField和UITextView控件学习

    IOS学习笔记(四)之UITextField和UITextView控件学习(博客地址:http://blog.csdn.net/developer_jiangqq) Author:hmjiangqq ...

  4. java之jvm学习笔记四(安全管理器)

    java之jvm学习笔记四(安全管理器) 前面已经简述了java的安全模型的两个组成部分(类装载器,class文件校验器),接下来学习的是java安全模型的另外一个重要组成部分安全管理器. 安全管理器 ...

  5. Java学习笔记四---打包成双击可运行的jar文件

    写笔记四前的脑回路是这样的: 前面的学习笔记二,提到3个环境变量,其中java_home好理解,就是jdk安装路径:classpath指向类文件的搜索路径:path指向可执行程序的搜索路径.这里的类文 ...

  6. Java加密与解密笔记(四) 高级应用

    术语列表: CA:证书颁发认证机构(Certificate Authority) PEM:隐私增强邮件(Privacy Enhanced Mail),是OpenSSL使用的一种密钥文件. PKI:公钥 ...

  7. Learning ROS for Robotics Programming Second Edition学习笔记(四) indigo devices

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

  8. Typescript 学习笔记四:回忆ES5 中的类

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

  9. Django开发笔记四

    Django开发笔记一 Django开发笔记二 Django开发笔记三 Django开发笔记四 Django开发笔记五 Django开发笔记六 1.邮箱激活 users app下,models.py: ...

随机推荐

  1. 企业实施CRM系统后的积极作用

    公司在发展过程中,可能会遇到各种各样的问题,尤其是来自客户的问题,是最令广大企业头痛的.这并不是一个单方面的问题,不仅涉及到员工也涉及到企业.因此,许多企业使用CRM客户管理系统来管理客户,并通过它来 ...

  2. .Net Core自实现CLR异步编程模式(Asynchronous programming patterns)

    最近在看一个线程框架,对.Net的异步编程模型很感兴趣,所以在这里实现CLR定义的异步编程模型,在CLR里有三种异步模式如下,如果不了解的可以详细看MSDN 文档Asynchronous progra ...

  3. MyBatis-框架使用和分析

      一.基础知识 MyBatis 是一款优秀的持久层框架,它支持自定义 SQL.存储过程以及高级映射.MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作.MyBatis 可 ...

  4. [leetcode] 36. 有效的数独(Java)

    没啥好说的,直接上就行 36. 有效的数独 class Solution { public boolean isValidSudoku(char[][] board) { Map<Charact ...

  5. Go语言协程并发---select多路复用应用

    package main import ( "fmt" "time" ) /* ·循环从一写两读三条管道中随机选择一条能走的路 ·等所有路都走不通了就退出循环 ...

  6. ARM NEON指令集优化理论与实践

    ARM NEON指令集优化理论与实践 一.简介 NEON就是一种基于SIMD思想的ARM技术,相比于ARMv6或之前的架构,NEON结合了64-bit和128-bit的SIMD指令集,提供128-bi ...

  7. 旷视MegEngine数据加载与处理

    旷视MegEngine数据加载与处理 在网络训练与测试中,数据的加载和预处理往往会耗费大量的精力. MegEngine 提供了一系列接口来规范化这些处理工作. 利用 Dataset 封装一个数据集 数 ...

  8. PyTorch 数据并行处理

    PyTorch 数据并行处理 可选择:数据并行处理(文末有完整代码下载) 本文将学习如何用 DataParallel 来使用多 GPU. 通过 PyTorch 使用多个 GPU 非常简单.可以将模型放 ...

  9. 【NX二次开发】 获取体的面 UF_MODL_ask_body_faces

    获取体的面 1 extern DllExport void ufsta(char *param, int *returnCode, int rlen) 2 { 3 UF_initialize(); 4 ...

  10. HR面试:过五关斩六将后,小心阴沟翻船!(史上最全、避坑宝典)

    文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...