cmsis全称Cortex Microcontroller Software Interface Standard,就是Cortex微处理器软件接口标准

stm32每组gpio有7组端口,分别是2个32位配置寄存器,2个32位数据寄存器,1个32位置位/复位寄存器,1个16个复位寄存器,1个32位锁存寄存器

GPIO,general-purpose I/O 通用型输入输出

AFIO,Alternate function I/O 复用输入输出

BSRR:Bit Set/Reset Register 置位/复位寄存器

BRR:Bit Reset Register  复位寄存器

APB:        外围总线                Advanced Peripheral(外围的) Bus
HSE Osc:                        High Speed External Oscillator(振荡器)
AHB:        高级高性能总线                Advanced High performance Bus
PLL:        锁相环                        Phase Locked Loop
FWLib:        固件库                        Firmware Library
TVS:        瞬态电压抑制器                Transient Voltage Suppressor
CMRR:        共模抑制比                     Common Mode Rejection Ratio
CRL          配置寄存器低位                         configuration register  low     
CRH         配置寄存器高位                       configuration register  high
IDR            输入端口寄存器                    Input data register
ODR:        输出端口寄存器                Output data register
NVIC:        嵌套向量中断控制器        Nested Vectored Interrupt Controller (NVIC)
TDI:        传输驱动程序接口        Transport Driver(驱动) Interface(接口)
ROM:                                Read Only Memory
RAM:                                Random Access Memory
MCU:        微控制单元                Microcontroller Unit
IEEE:电气和电子工程师协会        Institute of Electrical and Electronics Engineers
ADC:模数变换器                        Analog-to-Digital Converter
SPI:串行外设接口                Serial Peripheral Interface
PWM:脉冲宽度调制                 Pulse Width Modulation 
USART:通用同步异步收发机        Universal Synchronous Asynchronous Receiver Transmitter
IRQ:中断请求                        Interrupt Request

FIQ:快速中断请求             Fast Interrupt Request
RTC:实时时钟                        Real-Time Clock
DMA :直接存储器访问                Direct Memory Access
SDIO:安全数字输入输出卡        Secure Digital Input and Output Card 
TXD:发送数据                        Transmit(tx) Data
RXD:接收数据                        Receive(rx) Data

stm32是基于ARM内核的cortex-m系列,cortex内核分为A(面向尖端的基于虚拟内存的操作系统,例如安卓)、R(针对实时系统)、M(微处理器系列)系列

datasheet规格书

要使用MDK5(就是keil5),要知道keil包括core和pack才能使用,新版MDK5中没有自带各种设备的pack,需要自己下载,建议到keil官网手动下载,用MDK5中自带的下载容易出错,下载方法:登陆keil官网,www.keil.com,搜索pack,找到MDK5 Software Packs,在下面找到自己要的设备下载pack,安装时是不可更改的固定的目录,stm32系列的是在keil根目录的\ARM\PACK\keil中,ps:DFP (Device Family Pack) .

要使用stm32的库函数就要有st的官方lib,st官网的下载方法:登陆st官网www.st.com ,搜索lib,找到 STM32 Standard Peripheral Libraries,选择后下载.

要开始使用所需要的驱动分别是,ch340驱动(串口驱动,有的是pl2303的芯片),(jlink驱动),MDK相应的pack,st官方的库,

keil中jlink调试有的时候会出现error flash download failed cortex m3类似这类的flash错误,原因基本是在option中Utilities的setting中的programming algorithm设置不对,如果在add中没有适合自己芯片的选项,说明device设置不对,重新改下device,在回来改这个就好了

stm32命名规则:

startup文件夹中含义:

cl:互联型产品,stm32f105/107 系列
vl:超值型产品,stm32f100 系列
xl:超高密度(容量512k)产品,stm32f101/103 系列
ld:低密度产品,FLASH 小于 64K
md:中等密度产品,FLASH=64 or 128
hd:高密度产品,FLASH 大于等于256k

在flymcu设置都正确,下载时说芯片相应超时的时候,试试将串口号修改为1

端口上面标FT表示可以耐5v电压

下载st芯片的相关资料,可以进www.st.com官网,搜索该型号,下拉即可下载各种资料

stm32常识的更多相关文章

  1. stm32的FSMC

    之前用的stm32f103rbt6,它是100引脚以内的,不带FSMC.驱动液晶屏或者SRAM要自己写时序方面的程序,比较麻烦.后来换成stm32f103zet6,带有FSMC.不过在学习FSMC的时 ...

  2. ucos实时操作系统学习笔记——操作系统在STM32的移植

    使用ucos实时操作系统是在上学的时候,导师科研项目中.那时候就是网上找到操作系统移植教程以及应用教程依葫芦画瓢,功能实现也就罢了,没有很深入的去研究过这个东西.后来工作了,闲来无聊就研究了一下这个只 ...

  3. [转] STM32各种时钟的区别

    [原创]:http://m.oschina.net/blog/129357 我在原创的基础又从另一位博主处引用了一些内容. 时钟系统是处理器的核心,所以在学习STM32所有外设之前,认真学习时钟系统是 ...

  4. [转载]:STM32为什么必须先配置时钟再配置GPIO

    转载来源 :http://blog.csdn.net/fushiqianxun/article/details/7926442 [原创]:我来添两句,就是很多同学(包括我)之前搞低端单片机,到了stm ...

  5. STM32 NVIC配置详解

    例程:  /* Configure one bit for preemption priority */  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1) ...

  6. 读《乔布斯的NeXT和苹果之间,隔了这两个创业常识》

    原文链接:http://wwww.huxiu.com/article/114950/1.html 前言: 当今硅谷风头最劲的风险投资家马克·安德森曾说,硅谷每年大约诞生15-20家真正值得投资的公司. ...

  7. MDK st-link下载STM32程序出现Internal command error和Error:Flash download failed. Target DLL

    MDK st-link下载STM32程序出现Internal command error和Error:Flash download failed. Target DLL   是因为目标板的芯片处于休眠 ...

  8. MDK5 STM32编译问题汇总

    MDK5 STM32编译问题汇总 WIN8.KEIL-MDK-5 编译时,出现弹窗"The ARM C/C++ Compiler 已停止工作",关闭弹窗后,编译输出的窗口中出现如下 ...

  9. STM32学习及应用笔记一:SysTick定时器学习及应用

    这几年一直使用STM32的MCU,对ARM内核的SysTick计时器也经常使用,但几乎没有仔细了解过.最近正好要在移植一个新的操作系统时接触到了这块,据比较深入的了解了一下. 1.SysTick究竟是 ...

随机推荐

  1. 10.17JS日记

    1.变量提升 变量提升是浏览器的一个功能,在运行js代码之前,浏览器会给js一个全局作用域,叫window, window分为两个模块,一个叫做内存模块,一个叫做运行模块,内存模块找到当前作用域下的 ...

  2. 9.17-9.19h5日记

    9.17 ❤关于position(absolute.relative) position:relative: top:100px: right:200px: 如果relative设置值,则是根据它原来 ...

  3. Executors提供的四种线程池

    Java 5+中的Executor接口定义一个执行线程的工具.它的子类型即线程池接口是ExecutorService.要配置一个线程池是比较复杂的,尤其是对于线程池的原理不是很清楚的情况下,因此在工具 ...

  4. DataStructure.BloomFilter

    Bloom Filters Ref[1] 1. 简介 Bloom filter(布隆过滤器:有更好的或正确的翻译,告诉我) 是一个数据结构,该数据结构快速并且内存高效,它可以告诉你某个元素是否在集合中 ...

  5. BZOJ1059或洛谷1129 [ZJOI2007]矩阵游戏

    BZOJ原题链接 洛谷原题链接 通过手算几组例子后,很容易发现,同一列的\(1\)永远在这一列,且这些\(1\)有且仅有一个能产生贡献,行同理. 所以我们可以只考虑交换列,使得每一行都能匹配一个\(1 ...

  6. 详解php多人开发环境原理

    作为一名php开发人员,有时候一个项目或一个功能我们不能独自完成,就像当一个仓库开发人员大于1,20人的时候,每个人可能开发不同的模块和功能,用代码版本控制工具比如 git 开不同的分支,流程大概是先 ...

  7. Windows 修改的hosts记录没有效果

    windows修改的hosts记录没有效果,新添加的也没有效果. 检查DNS设置相关的均正常, <Dns client为此计算机解析和缓冲域名系统 (DNS) 名称.> 为此计算机注册并更 ...

  8. [ES]elasticsearch章2 ES查询过程解析

    es服务端是准确知道每个document分布在哪个shard上: search一个比较复杂的执行模式,因为我们不知道那些document会被匹配到,任何一个shard上都有可能,所以一个search请 ...

  9. 新手必看,史上最全的iOS开发教程集锦,没有之一!

    最近大火的iPhone XS Max和iPhone XS,不知道有没有同学已经下手了呢?一万三的价位确实让很多人望而却步啊.据说为了赢得中国的用户,专门出了双卡双待的,可想而知中国市场这块“肥肉”人人 ...

  10. mapreduce的输入格式 --- InputFormat

    InputFormat 接口决定了mapreduce如何切分输入文件. InputFormat 由getspilit和createRecordReader组成,getspilit主要是标记分片的初始位 ...