ARM系列 STM32F103RCT6 开发

2020-01-13来源: eefocus关键字:ARM系列  STM32F103RCT6  开发

简单介绍STM32F1XX系列可以有RTOS ,实时操作系统,也可以直接当单片机用.

  • 功能有adc,dac,bkp,can,cec,crc,dbgmcu,dma,exti,flash,fsmc,gpio,i2c,iwdg,pwr,rcc,rtc,sdio,spi,tim,usart,wwdg,misc

  • 具体芯片的每个接口是什么功能,不同的板子差别不大,毕竟是要符合芯片规范的。

  • 开发环境基本都是WINDOWS(unix-like gcc) , 开发工具有 MDK-ARM(keil), EWARM(IAR),HiTOP, GCC(RIDE),TrueSTUDIO..

    开发IDE中集成了startup文件,gcc也集成了的启动文件,具体可以在库里面找。
    Release_Notes.html
    ..STM32F10x_StdPeriph_Lib_V3.5.0LibrariesCMSISCM3DeviceSupportSTSTM32F10xstartup

  • 调试jlink 需要特别说明的是,有时候,jlink调试会弹出错误 ,无法download debug ,重启下就可以



1.外设库函数

目录 ..STM32F10x_StdPeriph_Lib_V3.5.0LibrariesSTM32F10x_StdPeriph_Driver
下载方式www.st.com Product->Microcontrollers


 网页中可以看到 一个图,选择你的芯片的型号,比如我的是STM32 F1 ->再选择具体型号, STM32 F103RCT6

 http://www.st.com/web/en/catalog/mmc/SC1169/SS1031/LN1565/PF164486

 东西有很多,搜下firmware library找下就可以了

 更多的要自己发现


 找到了这个

 How to migrate from the STM32F10xxx firmware library V2.0.3 to the STM32F10xxx standard peripheral library V3.0.0 (AN2953)

 http://www.st.com/web/en/catalog/tools/PF257859


 下载http://www.st.com/st-web-ui/static/active/en/st_prod_software_internet/resource/technical/software/firmware/stsw-stm32023.zip

    

 不同的产品,版本也略有差别,上面版本是V3.3


下面简单介绍下V2.0,v3.x 的CAN 函数库的区别

STM32F10x_StdPeriph_Driver Libraries stm32f10x_rcc.h
CAN 在 APB1_peripheral 外设总线上

  • v2.0 只有一个CAN总线(与v3.x的命名不同) 本工程采用V2.0的库,命名采用这个,stm32f10x_can.h形参中没有CAN_TypeDef* CANx
    #define RCC_APB1Periph_CAN ((uint32_t)0x02000000)

  • v3.0只有一个CAN总线 (stm32f10x_can.h形参中带CAN_TypeDef* CANx)
    此版本及以后采用CMSIS标准
    #define RCC_APB1Periph_CAN1 ((uint32_t)0x02000000)

  • v3.3,v3.5有两个CAN总线(stm32f10x_can.h形参中带CAN_TypeDef* CANx)
    #define RCC_APB1Periph_CAN1 ((uint32_t)0x02000000)

#define RCC_APB1Periph_CAN2 ((uint32_t)0x04000000)

  • 另外stm32f10x_can.c 里面的一些实现也是添加删除修改了一些,要自己去慢慢发现(beyondCompare)

关于版本详细的改动在( STM32F10x_StdPeriph_Lib_V3.5.0.zip, stm32f10x_stdperiph_lib_v3.0.0.zip)

..Release_Notes.html
..LibrariesSTM32F10x_StdPeriph_DriverRelease_Notes.html

中会介绍


值得注意的是,新的版本用CMSIS标准了,还有文档管理doxygen,可以通过html文件来查看 API。

http://www.arm.com/zh/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php


关键字:ARM系列  STM32F103RCT6  开发 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic485484.html 本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:arm寄存器解析
下一篇:在ARM Linux 使用 Valgrind

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

ARM NEON 编程系列2 - 基本指令集
前言本系列博文用于介绍ARM CPU下NEON指令优化。博文github地址:github相关代码github地址:githubNEON指令集主流支持目标平台为ARM CPU的编译器基本都支持NEON指令。可以通过在代码中嵌入NEON汇编来使用NEON,但是更加常见的方式是通过类似C函数的NEON Instrinsic来编写NEON代码。就如同NEON hello world一样。NEON Instrinsic是编译器支持的一种buildin类型和函数的集合,基本涵盖NEON的所有指令,通常这些Instrinsic包含在arm_neon.h头文件中。本文以android-ndk-r11c中armv7的arm_neon.h为例,讲解
发表于 2020-01-13
ARM NEON 编程系列1 - 导论
前言本系列博文用于介绍ARM CPU下NEON指令优化。博文github地址:github相关代码github地址:githubNEON历史ARM处理器的历史可以阅读文献[2],本文假设读者已有基本的ARM CPU下编程的经验,本文面向需要了解ARM平台下通过NEON进行算法优化的场景。ARM CPU最开始只有普通的寄存器,可以进行基本数据类型的基本运算。自ARMv5开始引入了VFP(Vector Floating Point)指令,该指令用于向量化加速浮点运算。自ARMv7开始正式引入NEON指令,NEON性能远超VFP,因此VFP指令被废弃。NEON用途类似于Intel CPU下的MMX/SSE/AVX/FMA指令,ARM
发表于 2020-01-13
LPC2000系列ARM芯片的电子琴的设计
1.用LPC2000系列ARM芯片设计电子琴,用proteus软件仿真。2.按下不同的按键,扬声器能够发出不同的音调。3.用PWM控制扬声器可以实现音调的条件。通过编程,利用按键去控制扬声器的发声。通过小组讨论分析,结合设计电路性能指标、器件的性价比,本设计电路选择方案二。硬件设计与介绍嵌入式的定义:从技术的角度定义:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。从系统的角度定义:嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。术语嵌入式反映了这些系统通常是更大系统中的一个完整的部分,称为嵌入的系统。嵌入的系统中可以共存多个
发表于 2019-10-12
LPC2000系列ARM芯片的电子琴的设计
LPC2000系列Proteus仿真+代码 菜鸟的ARM学习笔记
。2. 寄存器R0-R7、R15和CPSR是所有模式共享的。R8-R12出快中断模式有RX-fiq外所有模式共享。R13、R14和SPSR只有用户模式和系统模式共享,其它都有似有SPSR。R15(PC)程序计数器R16(CPSR)程序转台寄存器R13(SP)堆栈指针P14(LR)链接寄存器ARM指令集 汇编程序设计略了,我看了,但是做Proteus仿真实验没用上,两天就忘了。LPC2000我买的3本ARM入门书籍中有两本都是以LPC2000系列为例的,其实从网上可以下载到具体LPC2XXX处理器的datasheet,上面的资料是最权威和详尽的。引脚选择PINSEL0、PINSEL1设置各个引脚的功能。中断中断的寄存器太多了,没记
发表于 2019-10-12
LPC2000系列Proteus仿真+代码 菜鸟的ARM学习笔记
IAR for ARM系列教程(四)_菜单(Ⅱ)
Ⅰ、写在前面在【IAR for ARM系列教程(三)_菜单(Ⅰ)】文章中讲述了前面四个重要菜单File文件、Edit编辑、View视图、Project工程里面的内容。本文讲述后面六个菜单Debug调试、Disassembly反汇编、ST-Link下载调试工具、Tools工具、Window窗口、Help帮助的内容。其中“Debug调试、Disassembly反汇编”两个菜单是在调试模式时才有的。“下载调试工具”是由你工程目标配置所决定的(上面截图是配置ST-Link)。本文内容已经整理成PDF文件,提供给大家下载:http://pan.baidu.com/s/1eSeDSu2作者:strongerHuang版权所有,未经允许,禁止
发表于 2019-09-18
IAR for ARM系列教程(四)_菜单(Ⅱ)
STM32F103RCT6移植到STM32F103C8T6注意事项
1,修改IC为STC32F103C8 2,修改晶振为8.0M  3,修改C/C++宏定义,由STM32F10X_HD,USE_STDPERIPH_DRIVER 改为 STM32F10X_MD,USE_STDPERIPH_DRIVER 4,替换启动文件,由startup_stm32f10x_hd.s修改为startup_stm32f10x_md.s到这里已经没有报错了5,重新分配各模块引脚定义这一步做完以后才发现,程序好像跑的慢了10来倍,群里求助,说是倍频没有设置好,找到一个设置倍频的代码后,发现还是不行.再搜索原子论坛有人同样遇到相同的问题,在某位大神的回复中找到了答案
发表于 2019-06-12
STM32F103RCT6移植到STM32F103C8T6注意事项
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2020 EEWORLD.com.cn, Inc. All rights reserved