芯嵌STM32用户使用手册

更新时间:2023-06-11 12:12:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

芯嵌

STM32F103VET6

R○STM32芯嵌

User'sManual

Preliminary

Revision1.2

(2013.07.18)

芯嵌stm32芯嵌STM32开发板

开发指南

Copyright©Limited.Allrightsreserved

版本信息

本手册进行了以下更改。芯嵌STM32用户手册修订记录

日期

2013-3-28

2013-4-16

2013-5-19修订版本1.001.101.20CRID修改章节全部修改描述创建增加PS2鼠标接口增加外扩接口、修

改外观图片

2013-8-171.202.2.12CAN

总线电路增加了CAN引出接口,在开发板上的

硬件位置指示图51smt32作者51smt3251smt3251smt32

版权声明

本手册版权归属(以下简称“51stm32”)所有,并保留一切权力。非经51stm32同意(书面形式),任何单位或个人不得擅自摘录本手册部分或全部,违者我们将追究其法律责任。

敬告:

在售开发板的手册可能将更新,请在网站查看最近更新,并下载最新手册,不再另行通知。

目录

目录............................................................................................................................4写在前面........................................................................................................................5

第一章芯嵌STM32光盘使用说明............................................................................6

第二章芯嵌STM32硬件说明....................................................................................8

2.1芯嵌STM32板载资源说明............................................................................8

2.1.1芯嵌stm32开发板接口定义................................................................8

2.1.2芯嵌stm32开发板硬件资源简介......................................................9

2.1.3对客户反馈的硬件资源说明..............................................................10

2.1.4开发板跳线座说明:..........................................................................11

2.2芯嵌STM32原理图说明..............................................................................11

2.2.1电源电路...............................................................................................11

2.2.2实时时钟(备用电池)电路..............................................................12

2.2.3系统时钟电路......................................................................................12

2.2.4JTAG接口电路.................................................................................13

2.2.5复位电路..............................................................................................13

2.2.6用户LED电路....................................................................................13

2.2.7串口电路..............................................................................................14

2.2.8按键电路..............................................................................................14

2.2.9SD卡接口电路.....................................................................................15

2.2.10USB接口电路....................................................................................15

2.2.11LCDTFT液晶接口电路....................................................................16

2.2.12CAN总线电路...................................................................................16

2.2.13网络接口............................................................................................17

2.2.14音频接口............................................................................................17

第三章芯嵌STM32开发前的准备..........................................................................19

3.1J-Link驱动的安装.........................................................................................19

3.2使用J-Link下载调试...................................................................................22

3.3使用ISP下载调试.........................................................................................29

3.3.1安装Flashloader.................................................................................29

3.3.2使用ISP下载调试..............................................................................32

3.4安装RealViewMDK软件.............................................................................37

3.5使用MDK+J-Link调试...............................................................................41

第四章芯嵌STM32初步开发举例..........................................................................52

4.1下载固件库....................................................................................................52

4.2STM32简单开发............................................................................................53附录:福州芯嵌工作室简介......................................................................................56

写在前面

感谢您选购芯嵌STM32开发板产品!请详细阅读以下文字,以获取对芯嵌STM32开发板的更多信息。

芯嵌STM32开发板是由芯嵌stm32技术()开发的一款极具性价比的入门提高型开发板。它最初只是为了满足一个项目的需求而设计。经芯嵌团队研究决定,并经历2个版本的完善后,我们提取出最小系统、TFT触摸屏、MP3播放、录音、网口、PS2、USB、SD卡口、,另加入电源座、串口、用户LED指示灯等部分,设计出一款适合STM32入门甚至提高的开发板——芯嵌STM32就这样诞生了。

实际上,我们有信心设计这款芯嵌STM32开发板,是由于项目使用的STM32评估板,达到并超过预期的效果。

值得注意的是,我们推出芯嵌STM32开发板,并不只为了利润(不要求回报的公司,第二天就会破产,因为公司需要支出),更希望能将芯嵌stm32开发板作为一个中低端品牌来推广,我们将尽最大努力打造国内性价比最高、配套文档(教程)最全、国内最知名的中低端开发板品牌,使得国内广大嵌入式朋友不会因为“价格”问题“望而却步”;不会因为“无从下手”而“不知所措”。

芯嵌stm32技术团队

2013-06-18

第一章芯嵌STM32光盘使用说明

在您开始使用芯嵌STM32开发板之前,请详细阅读本手册,以便更充分地利用现有资源进行开发与学习。芯嵌STM32开发板所有的资源将全部存放在光盘中,更新部分,将会在公布,可随时免费下载。

下面是芯嵌STM32开发板光盘内容的截图,建议大家查阅光盘时,先阅读每个目录下的readme.txt文件或“必须读我.txt”文件,以获取对本目录的更多

信息。

从上图可以看到,芯嵌STM32光盘除了提供原理图之外,还提供从无操作系统的测试例程代码到UCOS-II的源码。值得注意的是,我们针对芯嵌STM32推出入门系列教程,从安装必需的软件开始到整个UCOS的移植教程,面面俱到,使得您能用最少的时间,学到最多的开发技能。同时,我们也录制了芯嵌stm32开发板配套的视频,也同样基于尽量让初学者少走弯路的理念。

注意:由于光盘内容(包括源码、教程、软件)在不断更新,因此实际销售到您手中的光盘,可能略有不同,请通过网站下载最近更新,不再另行通知。下面从各个目录简单地介绍光盘存放的资源。

“STM32学习资料”——存放了很多参考资料,供您学习时参考。不建议初学者马上查阅该目录中的每一个文档资料。初学者拿到开发板时,最佳的做法是,安装必需的软件,学习最基本的操作下载、调试,以尽快熟悉STM32的

芯嵌stm32开发流程。此部分可参考芯嵌STM32配套教程进行。

“软件工具”——使用芯嵌STM32开发板进行学习与开发时,所需要的软件和工具,例如MDK-KeilforARM、JLINK驱动、ISP官方下载版、USB下载的DfuSe_Demo_V2.2.1、Image2Lcd_32、以及串口中断软件SecureCRT-v5.1.0等软件,均存放在该目录。

“芯嵌STM32出厂HEX文件”——为了方便用户下载,我们事先为您编译好每个例程的HEX文件,如需要,直接下载到板子即可运行。此项看似用处不大,实际上,如果您突然想验证某项功能,而没有现成的HEX文件,则不得不现场编译生成,非常麻烦耗时。

“J-LinkV8资料”——该目录是为选购芯嵌STM32开发板配套的J-Linkv8仿真器专设的一个目录。该目录中存放了J-Link调试的众多经验,约22M左右的文档资料。由于jlink的通用性,如果您购买的也是jlinkv8版本,则也可参考该目录,并不局限与芯嵌开发板。

“芯嵌STM32配套电路图”——该目录存放了芯嵌STM32开发板的真实的原理图,包括主板原理图以及LCD转接板原理图。由于开发板版本可能升级(实际上到目前为止已经经历了2个版本),因此,我们会将最新版本的开发板原理图上传至,供大家参考。

“芯嵌STM32配套教程”——该目录是我们的一个亮点。由于许多初学者拿到开发板之后,不知道自己应该从哪里下手,因此,我们特地编写了此教程,针对初学者从“还未入门”到“基本掌握简单的STM32开发”,进行详细的教程讲解。使得初学者入门更轻松。另外,本教程具有通用性,不管您的开发板是否为芯嵌STM32,均可从中受益,欢迎使用芯嵌STM32入门系列教程!

“芯嵌STM32配套视频”——该目录也是我们的一个亮点。鉴于部分客户对文档教程阅读时,感觉进度太慢,不如视频来得简单快捷。因此,我们特地制作了这个视频教程,同样是针对初学者从“还未入门”到“基本掌握简单的STM32开发”,进行详细的教程讲解。使得初学者入门更轻松。另外,本视频具有通用性,不管您的开发板是否为芯嵌STM32,均可从中受益,欢迎观看学习芯嵌STM32配套视频!

“芯嵌STM32配套例程”——在配套教程中讲解的每个源码,均存放在该目录中。该源码用于初学者参考学习之用。当您调试某个模块的时候出现问题,那么,可以参考配套的例程,或许就可以从中找到您所想要的例程。也可直接前往,参与我们的讨论,一起学习STM32!

“芯嵌STM32配套芯片手册”——该目录存放了芯嵌STM32开发板的所使用的芯片,包括从CPU到外设的所有芯片的datasheet(电容电阻除外)。当今网络确实发达,但是要想上网查找一份满意的datasheet,也是一件烦心事。该目

芯嵌录就是为方便大家查阅而设立。希望芯嵌STM32的光盘不仅能成为您的学习资源,也能成为您开发查阅的工具。

以上即为芯嵌STM32开发板的光盘,我们再次强调,每次更新光盘,必将第一时间上传至,不再另行通知。

第二章芯嵌STM32硬件说明

本章主要讲述芯嵌STM32开发板的板载硬件资源。以便让用户在使用过程中,有一个大概的了解。注意,在购买时,标配是有2.8寸触摸屏的,这里为了更好的说明板载资源,没有插上屏,这样能更清晰地看到板载资源。

2.1芯嵌STM32板载资源说明

芯嵌STM32开发板(不带屏时的照片)外观图如下所示,该开发板具有大部分的通用接口(标号从1到15,对应的硬件资源标注在下页)。

2.1.1芯嵌stm32开发板接口定义

电源插座,采用DC-5.5接口,接触电阻小于0.03欧姆,质量非常好;绿色的RS232串口座,公头,用于串口通信与ISP下载;网络接口(RJ45),HR911105A,自带网络变压器、LED指示灯;音频插座(Phone_jack)接口(入);音频插座(Phone_jack)接口(出),是不是有插上耳机的冲动?2.8寸TFT液晶触摸屏接口,采用标准32pin接口;复位按钮电路;开发板上没用到的IO口资源,在这里扩展,组成双排插针供用户扩展。JTAG接口,用于连接jlink仿真器,下载调试程序;Wakup按钮;

⑾两个通用按钮,连接GPIO口线;

⑿SD卡接口;

⒀USB接口;

⒁PS2接口;

⒂电源自锁开关;

下面是配置2.8

寸液晶触摸屏的外观图:

2.1.2芯嵌stm32开发板硬件资源简介

【硬件资源】

1、开发板PCB尺寸:10×10cm2、USB转电源口供电(USB标准输出500MA,满足开发板的需求)

3、电源开关采用7*7自锁方式,更符合电子产品要求;

4、开发板接入5V电源,其内部根据需要采用3.3V、2.5V双电源供电;

5、板载CPU处理器为STM32F103VET6,配置512K闪存(是VCT6的一倍),64K的RAM,并具有FSMC接口;

6、标准按键复位电路(同样也可上电复位);

7、LED指示灯3个:1个为电源指示灯,2个为LED用户调试指示灯;

8、PS2鼠标/键盘接口,可直接插接PS2标准接口进行试验;

9、USB2.0Slave全速模式接口,可进行USB下载实验,或USB驱动学习,同时可作为供电接口;

10、MicroSD卡插座,可学习SD卡驱动、文件系统等;

11、3个用户按键:2个中断按键(也可他用),1个WAKEUP按键;12、标准20pin的JTAG接口,可用于插接Jlink仿真器进行程序调试;

13、CAN总线接口,位于JTAG接口上方,外扩IO最下面的两个IO口,用于CAN通信学习;

14、将开发板不用的IO口外扩,组成14*2双排排针,方便用户自由发挥,比如可用于无线模块接口;

15、标准16*2双排插针为LCD_TFT液晶接口;

16、板载RTC后备电池座;

17、网络接口(RJ45),HR911105A,自带网络变压器、LED指示灯;18、附带ENC28J60网络通信电路;

19、音频插座(Phone_jack)接口(入);

20、音频插座(Phone_jack)接口(出);

21、语音VS1003MP3音频编解码电路;

22、绿色RS232串口座,用于串口通信及偶尔的ISP下载(多数用jlink);

23、注意,由于本开发板将不用的IO口集中外扩,用户可根据需要自行发挥开发板功能。

2.1.3对客户反馈的硬件资源说明

在芯嵌stm32开发板最初的版本里,配置有红外接收头、蜂鸣器、串行FLASH(SST25VF016B)、485等硬件资源。然而,在与老客户一次聊天中,突然感受

,到客户的真正需要,并不是资源越多越好,而是资源够用,同时价格经济实惠资源够用,同时价格经济实惠,

这才是客户的首选。

非常感谢网名“我家ARM媳妇”网友的建议。比如红外接收头、蜂鸣器,其原理不外乎就是控制IO口而已。由于芯嵌stm32开发板已经有3个IO口按键,2个用户LED灯,对于IO口的学习已经足够,因此不需要再增加板子的成本(实际上是客户成本)。

再比如,串行Flash的学习,使用SPI总线控制,而芯嵌stm32开发板上,

485总线呢?当然,RS232、已经有多处SPI总线的学习。。。。对于通信总线来说,

RS485其实是一类型的(参见协议标准)。因此,芯嵌stm32开发板已经由RS232串口,何必再来一个RS485呢?当然,芯嵌stm32开发板主要面向在校学生学习,因此对中小型企业无法满足每个硬件资源都具备的情况。

2.1.4开发板跳线座说明:

考虑到美观与实用性,芯嵌STM32开发板尽量避免过多的板载跳线。但由于stm32在上电时,需要判断当前BOOT0和BOOT1引脚高低电平,来决定启动方式,芯嵌stm32把BOOT启动跳线选择在JTAG

座附近。如下图所示:当使用jlink仿真调试时,请务必插上短路帽(发货前,已经插上短路帽);当实用ISP下载(串口),请把短路帽拔掉,否则程序启动方式不对,下载不进去。

2.2芯嵌STM32原理图说明

2.2.1电源电路

芯嵌STM32开发板上的电源电路,采用5V电压输入,电源转换芯片采用ASM1117-3.3以及ASM1117-2.5两路输入供电,能保证其稳定输出3.3V、2.5V电压。电路图如下所示:

2.2.2实时时钟(备用电池)电路

STM32系列芯片提供了备用电池供电的功能,在系统断电后,可继续为CPU保持一定时间的电源供应,以保持数据状态(部分数据可存放于备份寄存器中)。电路非常简单,由于STM32提供了专门的引脚VBAT,只要连接该引脚即可。

实际产品电路图上,会加入二极管。

2.2.3系统时钟电路

芯嵌STM32开发板采用两个外部晶振,分别为8MHZ及32.768kHZ的晶振。通过内部PLL电路可以调整系统时钟到最大72MHZ。

系统时钟电路图如下所示:以上时钟电路采用的电容值,均为经验值,可供您项目开发参考。

芯嵌stm322.2.4JTAG接口电路

芯嵌STM32的JTAG,采用通用的20pin接口电路,理由是:配套使用的Jlinkv8原厂的JTAG标准即使用20pin2.54mm间距。如需减少主板的面积,可考虑其他接口(比如有些开发板采用10pin接口),只是Jlink仿真器需要一个转接板。

其原理图如下所示:

注意,经过测试,这里的上拉电阻可以不焊接,Jlink调试仍然非常稳定。

2.2.5复位电路

我们专门为芯嵌STM32开发板设计了复位电路,以提高系统的可操作性。按下按键,一旦电压低于复位电压,系统随即进入复位状态。该复位电路是经典、

也是经验电路,利用电阻和电容的组合来实现复位。电路图如下所示:

2.2.6用户LED电路

为了能更好地发挥演示效果,我们专门设立了2个用户LED指示灯,1个电源指示灯。每个LED外挂1K上拉电阻,电路图如下所示:

2.2.7串口电路

芯嵌STM32开发板使用全新原装(进口)SP3232EEN芯片或者MAX3232,均为进口的串口芯片,希望能带给用户更稳定的环境。本串口电路设计中,带有两个UART

串口座,比普通的开发板使用更具灵活性。

2.2.8按键电路

为了能让广大芯嵌STM32用户体验程序中断或轮询模式的乐趣,我们专门设计了两个按键电路,连接PC0与PC1引脚,每个引脚外加10K的电阻上拉,接至3.3V电压。一旦按下按键,则可使对应的PC0或PC1引脚电平降为低电平。编写程序的时候,只要通过查询对应的电平变化,即可获知对应的引脚状态。

2.2.9SD卡接口电路

STM32也不例外,目前许多CPU都提供了SD模块功能。为了支持SD卡的

读写,我们设计了SD

卡的接口电路,如下所示:

注意,这个SD卡接口,采用的是SD总线模式,因此在编写程序时,需要特别注意,不能使用SPI总线控制。

2.2.10USB接口电路

STM32系列的CPU许多都集成了USBSLAVE的功能模块。我们可以直接外接USB接口即可实现USB从设备的功能。电路图如下所示:

2.2.11LCDTFT液晶接口电路

芯嵌STM32开发板支持FSMC模式下的LCD接口,使用的TFT液晶屏可以是2.4-3.2寸的触摸屏。芯嵌stm32开发板使用的液晶驱动IC为ILI9341或对应的控制IC

2.2.12CAN总线电路

芯嵌stm32开发板扩展了CAN总线接口,可以使用两块芯嵌stm32开发板进行CAN总线通信。对应的原理图如下所示:

注意,CAN引出的两个接口,即JP5的两个IO

口,位置在这里,如下图:

2.2.13网络接口

芯嵌stm32开发板板载了网络接口,使用HR911105A+ENC28J60的模式,

可进行网络服务器的扩展使用。电路图如下所示:

值得一提的是,microchip公司生产的ENC28J60这颗芯片,散热做的不好,导致芯片工作时,会有发热现象(有时会45度偏上)。这里也声明,并非芯片烧掉,而是发热,另外,淘宝上卖的个别的ENC28J60网络模块,虽然工作正常,但发热现象更为严重,已经是烫手了,因为电路图有待改进。关于ENC28J60芯片发热的证据,请直接在百度里搜“ENC28J60散热”,一大堆关于ENC28J60发热的抱怨。

芯嵌stm322.2.14音频接口

考虑到娱乐因素,芯嵌stm32开发板集成了音频编解码芯片VS1003。这颗

芯片功能非常强大,其电路图如下所示:

以上即为芯嵌STM32的电路图原理图,这里强调,该原理图仅供参考,如需用于项目应用,请根据实际情况进行修改,切勿原样抄袭!

第三章芯嵌STM32开发前的准备

本章节主要讲述进行STM32开发前的准备工作。目的是强调STM32学习过程中软件安装和调试的必要性。

3.1J-Link驱动的安装

众所周知,J-Link是ARM的仿真器,可以仿真很多ARM内核的CPU代码。当然,想使用J-Link仿真器,就必须安装其驱动。这里主要讲述J-Link软件驱动的安装,我们直奔主题:打开芯嵌STM32光盘,进入“软件工具”目录,里面有两个压缩文件,解压“Setup_JLinkARM_V408l.zip”后,

得到如下安装文件:双击即开始安装J-Link

驱动。

点击“Yes”,进入下一个界面:

点击“Next”,开始选择安装目录。笔者默认安装在C:\ProgramFiles\SEGGER\

目录下。

您也可以选择其他的安装目录,然后连续点击三次“Next”。注意,当出现下面这个窗口时,请把红色方框里的复选项打勾,否则安装完毕,桌面上没有快捷图标,每次都去“开始”菜单里启动J-Link,非常麻烦。

之后开始安装驱动:

约过30秒钟,安装完成,显示下图:

本文来源:https://www.bwwdw.com/article/rwo1.html

Top