stm32f103学习心得

原创 2013年12月02日 16:44:03

    今年3月份开始接触意法半导体的STM32微控制器,实际操作的是STM32F103VET6,收到过ST免费赠送的STMF407开发板,可惜没有太多时间去研究了。

    STM32系列基于嵌入式应用专门设计的ARM Cortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。F属于中低端的32位ARM微控制器,103属于中等容量增强型;V代表LFBGA 100 10x10x1.7 或 LQFP 100 14x14x1.4 ,是芯片封装技术,表示100引脚数的CPU封装技术,LFBGA是细间距球栅阵列封装,LQFP是薄型QFP指封装本体厚度为1.4mm的QFP,即四方扁平式封装;E代表FLASH Size,为512KB。

    对比STM32F103ZF,Z表示LFBGA 144 10x10x1.7 或 LQFP 144 20x20x1.4,引脚数变为了144个;F表示768KB的FLASH容量。详细的对比在ST官网查知:http://www.st.com/web/en/catalog/mmc/FM141/SC1169/SS1031/LN1565


STM32F103VET6属于STM32F103系列的高容量芯片,QFP100封装,64K片内SRAM,512K片内FLASH,有FSMC接口(并行外设接口),SDIO 4位接口(SD卡的专用接口),接触的显示屏配置为3寸(240x400)TFT显示器,外接电源为5V。
调试下载方式为JTAG,1个电源LED,3个状态LED,1个RS-232,3个按键,3个SPI等。


要了解这块开发板,首先要熟悉硬件配置,然后要学习相关的功能,能实现各个部分的功能操作。

一、环境配置

    开发软件我用的是KEIL MDK,IAR也可以,https://www.keil.com/download/product/,最新版本是MDK-ARM v5,此外还需要J-Link驱动,进行程序的烧录:http://www.segger.com/jlink-software.html?step=1&file=JLink_478j,软件和驱动都装好后就可以测试一下烧录。
    打开keil,点击菜单栏的Project-〉New uVision Project...,保存工程名后选择CPU,找到STMicroelectronics并展开,选择STM32F103VE,点击OK,再点击工具栏的

 
这个图标 Options for Target 'Target 1'在


Output选项卡里勾选Create HEX file,点击“Select Folder for Objects...”,选择产生Obj中间文件的路径,再点击Listing选项卡,点击“Select Folder for Listings...”选择中间文件lst的路径,点击“C/C++”选项卡,找到Include Paths,如果有包含C/C++头文件h,则点击右侧的“...”按钮选择头文件所在路径,同样,如果ASM头文件,则进入“Asm”选项卡进行选择;然后点击“Debug”选项卡,


如果只是模拟调试,则选择“Use Simulator”,如果连上了STM32开发板,要选择右侧的“Use:”,点击下拉框,选择“J-LINK/J-Trace Cortex”,再点击右侧的Settings


 
如果连上了开发板,点击Auto Clk会读取到开发板的信息,然后进入“Flash Download”选项卡,

 
选上“Erase Sectors”,并勾上“Program”、“Verify”、“Reset and Run”,点击“Add”,找到“STM32F10x High-density Flash”,再点击Add。


    设置项到此才完成。可以开始写代码了。
    刚开始可能不会写代码,给出一个简单的led灯例子,打开USER文件夹,打开test.uvproj项目工程,test.c很简单。



#include "sys.h"	
#include "delay.h"	
#include "led.h" 	 
int main(void)
{					 
	Stm32_Clock_Init(9);	//系统时钟设置
	delay_init(72);	   	//延时初始化
	LED_Init();		//初始化与LED连接的硬件接口
 	while(1)
	{
		delay_ms(1000);
		LED0 = !LED0;
	}	 
}

    点击工具栏上的图标就可以将项目编译,编译成功后,再点击图标就可把编译好的程序下载到开发板。


下载源代码





STM32中断优先级--学习心得

刚开始学习STM32单片机时,对中断优先级的规则不是很明白,通过今天的学习,对这方面的内容有了新的了解,记录下来以便日后查看。 首先说一下STM32的中断: STM32有84个中断,包括16个内核...

stm32选型

一、对于STM32型号的区分    STM32系列产品命名规则 示例: 产品系列 STM32 = 基于ARM®的32位微控制器产品类型 F = 通用类型产品子系列 101 = 基本型 ...

如果你还在用STM32F103,那么你OUT了

自从ARM公司2007年首推出Cortex内核,ST凭借基于ARM CORTEX-M3内核的STM32F1,无疑成为了最大的赢家之一。特别是STM32F103系列,更是成为市场上最通用的MCU系列之一...
  • cenzmin
  • cenzmin
  • 2015年09月23日 16:19
  • 3252

总结——stm32之keil开发环境搭建

1.搭建需要的文件 STM32F10x_StdPeriph_Lib_V3.5.0库 KeilMDK5 JLINK驱动 2.搭建步骤 (1)首先建文件夹Project_STM3...

FlyMcu串口ISP下载STM32程序教程

关于使用STM32的ISP串口下载程序方法,有问题可咨询“https://item.taobao.com/item.htm?spm=a1z10.1-c.w4004-12301441149.7.SbTO...
  • shiyu16
  • shiyu16
  • 2015年09月26日 11:20
  • 12824

STM32F103mini教程学习总结与心得(二)---->串口通信

1.miniSTM32板载2个串口: (1)USB串口(CH340:USB转串口芯片):与电脑通信 (2)RS232串口:异步传输标准接口---STM32内带的USB接口 (3)术语区分:1)串口、C...

STM32F103mini教程学习总结与心得(二)---->串口通信

STM32F103mini教程学习总结与心得(二)---->串口通信http://blog.csdn.net/qq_19598969/article/details/75934861 一...

STM32F103mini教程学习总结与心得(三)---->中断

STM32F103mini教程学习总结与心得(三)---->中断http://blog.csdn.net/qq_19598969/article/details/76167436 1. ...

STM32F103mini教程学习总结与心得(三)---->中断

1. NVIC中断优先级分组 (1)CM3内核支持256个中断,其中包含了16个内核中断和240个外部中断,并且具有256级的可编程中断设置。 (2)STM32并没有使用CM3内核的全部东西,而是只用...

STM32F103mini教程学习总结与心得(一)

1.引脚是否兼容5V的判断:引脚表中PF表示5V,原理图中有ADC的引脚为3.3V 2.PT:容忍5V,没有PT标示,就不能 3. 每组IO口含下面7个寄存器。7个寄存器,一共可以控制一组GPIO的1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:stm32f103学习心得
举报原因:
原因补充:

(最多只允许输入30个字)