最近学习基于STM32F107的RT-Thread系统,之前写过一些简单的STM32F103程序,用的是官方例程修改的,但是烧写在STM32F107中会出现问题。后来查找问题所在处,原来是启动文件没有设置对。
- startup_stm32f10x_ld_vl.s: for STM32 Low density Value line devices
- startup_stm32f10x_ld.s: for STM32 Low density devices
- startup_stm32f10x_md_vl.s: for STM32 Medium density Value line devices
- startup_stm32f10x_md.s: for STM32 Medium density devices
- startup_stm32f10x_hd.s: for STM32 High density devices
- startup_stm32f10x_xl.s: for STM32 XL density devices
- startup_stm32f10x_cl.s: for STM32 Connectivity line devices
cl:互联型,stm32f105/107系列
vl:超值型,stm32f100系列
xl:超高密度,stm32f101/103系列
ld:低密度,FLASH小于64K
md:中等密度,FLASH=64 or 128
hd:高密度,FLASH大于128
关键字:STM32F103 STM32F107 启动文件
引用地址:
STM32F103、STM32F107启动文件
推荐阅读最新更新时间:2024-03-16 15:15
STM32F103ZET6 — USART
串口通信介绍 UART串口通信,使用三线即可进行最基本的数据收发传送: 在数据线上的 Timing 遵循标准的串口通信协议,由起始位,数据,校验位,停止位组成,数据传输 LSB - MSB: 板载 USART 资源介绍 当然,由于电平不一样,使用 RS232 标准进行串口数据传送,需要增加 MAX3232 进行电平转换,再接PC: 单板上的 T1IN 和 R1OUT 接到了 STM32 芯片的 USART1 的 TXD/RXD 管脚,故单板上使用了 USART1 来作为 RS232 和 PC 机进行数据传送: USART 初始化配置 既然确定了使用了芯片上的 USART1,要正确使用该功能,需要进行如下配置:
[单片机]
STM32f103之外部中断
一、背景 有个需求,IO口检测上升沿,然后做相应的动作。在此记录STM32F103的外部中断结构及配置方法, 以备下次快速上手使用。 有许多不太明白,又是老司机(:-D)帮忙,真的是站在别人的肩膀上会让你看的更远,走的更快, 感谢老司机。 二、正文 STM32f103有68个可屏蔽中断。(但是,真正能用的其实远没有这么多,原因下面会详述。) 有16个可编程的优先等级,优先等级的概念可详见我的另外一篇博客《STM32 之 NVIC(中断向量、 优先级)简述》,链接: http://www.cnblogs.com/ChYQ/p/5859974.html ,接着看中断向量表, 如下图:
[单片机]
DDS技术在高频石英晶体测试系统中的应用
0 引言 石英晶体谐振器(以下简称石英晶体)广泛用作时间频率基准和为时序逻辑电路提供同步脉冲。石英晶体的测试方法主要有阻抗计法、π网络最大传输法、π网络零相位法,其中π网络零相位法是国际电工委员会(IEC)推荐的标准方法。π网络零相位法石英晶体测试设备在发达国家已广泛使用。典型仪器是美国S&A公司生产的250B零相位测试系统,其测试频率范围为0.5~200 MHz,串联谐振频率测试精度±2 ppm。阻抗计型石英晶体测试设备在中国仍然占主导地位。阻抗计型石英晶体测试设备具有制造成本较低,操作简单的特点。但其串联谐振频率测量范围较小,测量精度较低。因此,研制宽范围、高精度的石英晶体频率测试系统,具有服务生产的实际意义。 π网络零相位法
[单片机]
【stm32f103】stm32 外部中断(寄存器版)
中断分类 STM32的EXTI控制器支持19 个外部中断/ 事件请求。每个中断设有状态位,每个中断/ 事件都有独立的触发和屏蔽设置。 STM32的19个外部中断对应着19路中断线,分别是EXTI_Line0-EXTI_Line18: 线0~15:对应外部 IO口的输入中断。 线16:连接到 PVD 输出。 线17:连接到 RTC 闹钟事件。 线18:连接到 USB 唤醒事件。 触发方式:STM32 的外部中断是通过边沿来触发的,不支持电平触发。 外部中断分组:STM32 的每一个GP
[单片机]
基于正点原子STM32F103ZET6的ESP8266应用
前言 本次测试所使用的是正点原子的ATK-ESP8266 WIFI模块。直接使用官方提供的固件使用AT指令来配置模块并使用。 模块默认为AT指令状态,模拟波特率为115200(8bit数据位,1bit停止位)。 硬件连接 使用USB转TTL方式(电脑需要安装CH340驱动)连接ESP8266,接线图如下: Wifi模块ESP8266简介 ESP8266 是串口型WIFI,速度比较低,不能用来传输图像或者视频这些大容量的数据,主要应用于数据量传输比较少的场合,比如温湿度信息,一些传感器的开关量等。 ESP8266与单片机串口连接。一方面单片机可以通过串口发送AT命令给ESP8266,ESP8266会返回给单片机一个返
[单片机]
关于STM32f103 SPI时钟速度的问题
STM32f103 中APB1的最高频率是36MHz,APB2的最高频率是72MHz,而PCLK1和PCLK2一般也默认配置为其最高工作频率36M和72M。如下图(STM32F10xx_参考手册(第7版) 第46页)时钟树所示: SPI1时钟由APB2时钟分频而来,可以选择2、4、8、16、32、64、128、256这几个分频系数。而手册规定STM32的SPI时钟最快是18MHz。对于STM32F103的SPI1接口时钟,由72M的PCLK2分频得到,所以分配系数大于等于4(72M/4 = 18M)。对于STM32F103的SPI2/SPI3接口时钟,由36M的PCLK1分频得到,所以分配系数大于等于2(36M/2 = 18M
[单片机]
IAP在stm32f103c8t6上的实现
手上的单片机是STM32F103C8T6,ROM容量是64KB,起始地址为 0x0800 0000;RAM容量是16KB,起始地址为0x0200 0000。开发环境是Keil5,用到的工具还有串口助手。我将待下载的程序生成为bin文件,再通过串口助手发送给单片机接收。 在设计IAP程序时,要考虑ROM和RAM的大小。一方面,APP程序下载到单片机时是存放在ROM中的,如果你想下载多个APP程序,肯定需要ROM大些;另一方面,在串口接收数据时,APP代码首先存在一个数组变量中,这需要占用很大的RAM。我的APP程序是一个简单的灯闪烁程序,仅为验证IAP可行。 首先要完成bin文件的生成: 第一步:
[单片机]
基于STM32F103RET6的编译码系统
引言 由于曼彻斯特(MancheSTer)编码具有传输时无直流分量,时钟提取方便等特点,被广泛地应用于以太网、车辆总线、工业总线中。现在工程上常用的曼彻斯特编译码芯片为HD-6408和HD-6409,但是这种芯片有一些不足。首先,该芯片在传输速率和每帧数据中的有效位数等方面都做了严格的限制。其次,使用该芯片需要增加额外的硬件电路,提高了系统成本。使用FPGA做曼彻斯特编译码成本高,而且开发周期长。本文提出了一种基于STM32F103RET6的编译码系统方案,利用了STM32F103RET6强大的定时器功能,采用灵活的编译码方式,传输速率和数据帧格式都可以根据需要完全自行定义。STM32F103RET6自带DMA的功能使得数据编码不
[单片机]