stm32f103的运行错误和keil5的一些变动

发布者:csZhou最新更新时间:2018-08-17 来源: eefocus关键字:stm32f103  运行错误  keil5 手机看文章 扫描二维码
随时随地手机看文章

调试STM32F103ZET6过程中,自己写了下Systick滴答配置和中断函数,编译完无错误。迫不及待的将程序下到板子中,运行灯无闪烁。仔细查了下程序,管脚配置、外设时钟开启、中断配置未发现问题。使用开发器仿真后发现,程序停留在如下系统文件,红色位置。

SysTick_Handler PROC
                EXPORT  SysTick_Handler            [WEAK]
                B       .
                ENDP

从网上查了原因,说是有中断未配置或中断配置有误。仔细看了一遍,才发现自己写的函数名如下:


void Systick_Handler(void) ----------和系统文件中定义名不一样,一个大写的T,而我写的是小写的t。


立即改掉,运行灯倒是开始闪,但和预想中的频率差太多,考虑是系统时钟配置和频率选择有问题。仔细看了看,在system_stm32f10x.c文件中有个系统时钟的配置函数

void SystemInit (void),立刻将自己写的替换掉,正常了。先记下来,查查是什么原因。


另外,在KEIL5以上版本中,不需要在Options for Target "xxx"中的C/C++选项卡中,在Define:中再填入STM32F10X_HD,因为KEIL5以上版本会根据你选择的CPU型号自动给你定义好。


关键字:stm32f103  运行错误  keil5 引用地址:stm32f103的运行错误和keil5的一些变动

上一篇:STM32 keil5编译优化
下一篇:stm32f10x在keil环境下的配置

推荐阅读最新更新时间:2024-03-16 16:11

STM32F103标准库开发----CAN总线通信实验----初始化/波特率
一、CAN总线通信初始化配置 1. CAN总线通信初始化配置流程 CAN总线GPIO和时钟配置 CAN总线接收中断优先级配置 CAN总线初始化配置 2. CAN总线GPIO和时钟配置 CAN引脚配置 CAN时钟配置: PA11和PA12引脚,CAN GPIO初始化,具体代码如下: /*CAN GPIO 和时钟配置 */ void CAN_GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; /*GPIOA端口时钟使能*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
[单片机]
<font color='red'>STM32F103</font>标准库开发----CAN总线通信实验----初始化/波特率
矿井掘进面智能通风控制系统设计
  瓦斯是困扰煤矿安全高效生产的主要问题之一,煤矿事故70%以上是由于通风设备故障、通风管理不善造成的。对掘进工作面局部通风机的稳定控制则是解决此问题的关键。   智能控制系统的功能分析      根据实际掘进面巷道工况的需求和《煤矿安全规程》对局扇“三专两闭锁”方式的使用要求 ,并借鉴国内外相关系统的优点,智能通风控制系统应具备以下功能。   (1) 安全排放瓦斯   瓦斯的排放过程中为了不污染瓦斯未积聚区域,瓦斯排放要求在监控瓦斯浓度的条件下缓慢地进行。本智能通风控制系统的首要功能是根据不同的瓦斯浓度分布情况,选择合理的瓦斯排放措施,达到安全有效地排放瓦斯的目标。   (2) 双机准热备控制模式      实现两双两自动,即在
[嵌入式]
STM32F103配置串口(USART)流程
1:设置中断分组 NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); 2:使能用作串口(RX/TX)的时钟 RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA,ENABLE); //串口时钟和GPIO时钟都需要设置 3:GPIO模式设置 GPIO_InitTypeDef GPIO_InitStruct; GPIO_InitStruct.GPIO_Pin = GPIO_Pin_9; //TX GPIO_InitStruct.GPI
[单片机]
STM32F103ZET6 — USART
串口通信介绍 UART串口通信,使用三线即可进行最基本的数据收发传送: 在数据线上的 Timing 遵循标准的串口通信协议,由起始位,数据,校验位,停止位组成,数据传输 LSB - MSB: 板载 USART 资源介绍 当然,由于电平不一样,使用 RS232 标准进行串口数据传送,需要增加 MAX3232 进行电平转换,再接PC: 单板上的 T1IN 和 R1OUT 接到了 STM32 芯片的 USART1 的 TXD/RXD 管脚,故单板上使用了 USART1 来作为 RS232 和 PC 机进行数据传送: USART 初始化配置 既然确定了使用了芯片上的 USART1,要正确使用该功能,需要进行
[单片机]
<font color='red'>STM32F103</font>ZET6 — USART
基于stm32f103zet6之UC/OS_II的学习1(初步移植OS--点灯大法)
代码这里可以下载 http://download.csdn.net/detail/king_bingge/5353528 一、uc/OS的实时性是靠什么实现的? 1、uC/OS的实时性就是靠定时中断来完成。 2、每个时钟节拍到来,就会产生一次定时中断,中断后进行任务调度,运行就绪表中优先级最高的任务(非抢先型内核中断后继续运行被中断任务)。 即过一段时间就检测是否有重要任务需要运行,是的就转而运行更重要的任务,从而确保实时性(裸机程序就无法这样做了)。 当然这里没有把系统调用考虑进去。 二、首先整体把握一下在M3上运行ucosII的架构 这就是整个系统各模块之间的关系,好的接下来就按照手册来分析一下移植的时候需要注意的地
[单片机]
基于<font color='red'>stm32f103</font>zet6之UC/OS_II的学习1(初步移植OS--点灯大法)
No ULINK2/ME Device found stm32f103 程序无法下载
下载程序出现错误 解决方法:https://blog.csdn.net/cgzhello1/article/details/80043082 操作步骤如下: 点击‘魔术棒 ------》utilities----- 选择你下载的方式,我是ST-Link----- settings 进入settings 后,如下图界面 Add----- M29W640FB.Flash----OK 再次下载程序测试, 下载成功!
[单片机]
No ULINK2/ME Device found <font color='red'>stm32f103</font> 程序无法下载
stm32f103 DMA接收定长数据和不定长数据
最近做了DMA接收定长数据和不定长数据的程序,现在来分享一下定长: #include led.h #include delay.h #include key.h #include sys.h #include lcd.h #include usart.h #include dma.h #define USART1_RXBUF_SIZE 200 //发送数据长度,最好等于sizeof(TEXT_TO_SEND)+2的整数倍. u8 u1rxbuf ; //发送数据缓冲区1 u8 u2rxbuf ; //发送数据缓冲区2 u8 witchbuf=0; //标记当前使用的是哪个缓冲区,0,使
[单片机]
STM32F103系列实战之DMA控制器
DMA简介 直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省了CPU的资源来做其他操作。灵活的12路通用DMA(DMA1上有7个通道, DMA2上有5个通道)可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输;还有一个仲裁器来协调各个DMA请求的优先权。2个DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。 每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道;传输的长度、传输的源地址和目标地址都可以通过软件单独设置。DMA可以用于主要的外设: SPI、I2C、 USART,通用
[单片机]
<font color='red'>STM32F103</font>系列实战之DMA控制器
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved