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. storage封装

    storage.js /* storage 主要放项目中的storage相关操作:存取等 */ var storage = { /** 对本地数据进行操作的相关方法,如localStorage,ses ...

  2. u-boot之ARM920T的start.S分析

    cpu/arm920t/start.S程序步骤大致有以下几个 1.设置中断向量表 2.设置CPU模式为SVC32 mode并且关闭IRQ与FIQ中断 3.关闭看门狗 4.屏蔽所有中断 5.判断程序是否 ...

  3. Redis进阶实践之二十 Redis的配置文件使用详解

    一.引言 写完上一篇有关redis使用lua脚本的文章,就有意结束Redis这个系列的文章了,当然了,这里的结束只是我这个系列的结束,但是要学的东西还有很多.但是,好多天过去了,总是感觉好像还缺点什么 ...

  4. Vim完全教程

    一.简介 世界上只有三种编辑器,EMACS.VIM和其它.   我们所处的时代是非常幸运的,有越来越多的编辑器,相对于古老的VIM和EMACS,它们被称为现代编辑器.我们来看看这两个古董有多大年纪了: ...

  5. 看懂 Fiddler 的瀑布图

    最近准备给组内的新同学们分享下 Fiddler 这枚神器,可以讲的地方太多,我打算把一节课讲不完的内容写在博客上,大家可以随便看看.今天先介绍下 Fiddler 的瀑布图. 每个网络请求都会经历域名解 ...

  6. unwind

    unwind:可以将一个列表展开为一个行的序列1.列表 unwind[1,2,3]as x return x2.创建唯一列表with[1,2,3,3]as coll unwind coll as x ...

  7. proguard-rules.pro、混淆、导jar包

    前记: 买了一个<精通Android Studio>本来最想看的是关于混淆导jar包的,哪知道没有,有点小失望. 好吧,自己来. 在用Android Studio开发的时候,把minify ...

  8. 模板 Template

    package ${enclosing_package}; import java.io.IOException;import javax.servlet.ServletException;impor ...

  9. pkg_resources.DistributionNotFound: The 'catkin-pkg==0.4.9' distribution was not found

    个人感觉是python2与python3在ros中的差异导致的, 问题一:Traceback (most recent call last):  File "/usr/bin/rosdep& ...

  10. Proxmox Reset Root Password

    http://c-nergy.be/blog/?p=1777 Step 1 – Boot your Proxmox VE machine. In the boot menu screen, you s ...