-
一、在STM32中,有五个时钟源,为HSI、HSE、LSI、LSE、PLL。
①HSI是高速内部时钟,RC振荡器,频率为8MHz。
②HSE是高速外...
-
在USART的发送端有2个寄存器,一个是程序可以看到的USART_DR寄存器,另一个是程序看不到的移位寄存器,对应USART数据发送有两个标志,一个是TXE=发送数据寄...
-
Keil IDE的编译信息在工程文件夹的xx.map文件中,STM32的RAM分区从0x0200 0000开始,静态区、堆、栈。
所有的全局变量,包括静态变量之类的,全部存储在静...
-
DMA有什么用?
直接存储器存取用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须...
-
STM32的库函数操作给设计开发人员带来了诸多的便利,开发人员不必十分了解STM32的内部寄存器及硬件机制,只要有C语言基础,即可完成单片机的开发,缩短了开发周期,降低了开发难度...
-
本文适合学过LCD显示,但是不是很理解的同学,博主用的是战舰STM32
本篇文章博主将和大家讨论三个主题:FSMC有关配置、一串字符显示原理、汉字显示原理。。下面进入正题&r...
-
一、什么是PendSV
PendSV是可悬起异常,如果我们把它配置最低优先级,那么如果同时有多个异常被触发,它会在其他异常执行完毕后再执行,而且任何异常都可以中断它。更详细的内容...
-
在ucos中调用printf调试浮点数的时候,在内存中表示正确,但是打印数据就都为0.00,其他整形数据表示正常。
定义了一个float类型的变量i,在内存中的数据是这样的,如下...
-
带大家来一起快速的看懂ZigBee的协议栈的运行流程。
1.读任何程序都需要从main函数入手,那我们先来看Zmain.c中的main函数。
问题:...
-
汇总1:STM32的USB例程修改步骤
以下是笔者将ST的Custom_HID例程修改为“自定义USB设备”例程时总结出来的,因为笔者也是刚刚学USB开发...
-
简单地说:想在mdk 中用printf,需要同时重定义fputc函数和避免使用semihosting(半主机模式),
标准库函数的默认输出设备是显示器,要实现在串口或LCD输出,...
-
一、
使用开发板的USART作为UART通信,在前调用BSP_Init()函数初始化开发板,串口上传输的数据出错:'a'变成0xfa或0xfe;
【在这个问题解决之后,回头...
-
栈增长和大端/小端问题是和CPU相关的两个问题.1,首先来看:栈(STACK)的问题.函数的局部变量,都是存放在"栈"里面,栈的英文是:STACK.ST...
-
库函数捕捉程序如下:void main(void){ TIM1_Channel = TIM1_CHANNEL_1
-
首先,此类错误基本是被STM32芯片遇到,并且基本都是使用JLINK仿真器,我们以下的方法不一定可以帮你解决问题,问题真正的原因我们也没有在这个帖子公开、如果需要解决,请联系arm...
-
调了两天UART4,现象是查询方式收发都正常。
但是无法使用中断方式,仿真检查了UART4的寄存器配置完全正常,NVIC寄存器配置也正常。接收数据后NVIC的IAB...
-
在使用STM32的时候,出现以下问题:
PC of target system has unexpected value after erasing chip.(PC=0X010...
-
在使用Jlink开发ARM的东西时,出现了一点小问题:
在进行仿真的时候,弹出如下对话框:
JLink Error: Supply voltage too low...
-
关于堆和栈已经是程序员的一个月经话题,大部分有是基于os层来聊的。
那么,在赤裸裸的单片机下的堆和栈是什么样的分布呢?
以下是网摘:
&nbs...
-
所有的操作基于WIN XP,stm32使用J-Link在SWD模式下。
先前要添加PA15口到程序中,
//////////////////////////////////...