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;
	}	 
}

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


下载源代码





版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

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

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

STM32F103mini教程学习总结与心得(五)---->通用定时器

一.通用定时器的基本原理 1.三种STM32定时器区别 2.通用定时器功能特点描述

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...

STM32F103mini教程学习总结与心得(四)---->看门狗

一.独立看门狗概述 1.看门狗的作用        在由单片机构成的微型计算机系统中,由于单片机的工作常常会受到来自外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,由单片机控制的...

学习心得之ARM (STM32F207)

上一篇专门有提到MSC51的汇编,有MSC51的就应该有对应其它平台的汇编,现在详解ARM下的。 首先讲下两者的区别: 1.C51所用的指令集应用于所有X86架构的系统,被称为CISC(复杂指令集...

stm32学习心得

  • 2014-04-17 22:28
  • 232KB
  • 下载

stm32_usb_hid_学习心得

  • 2012-12-17 19:06
  • 71KB
  • 下载

基于stm32f103zet6的FAT16文件系统学习1(初识FAT16)

有了之前读写block的基础之后,准备弄个文件系统,之前没有接触过这东西,所以有很多都晕晕的,但是看到fat的源代码之后还是挺有信心的,因为之前一直过uboot,所以这个文件当然是小巫见大巫了。首先来...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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