STM32编程
文章平均质量分 51
OnlyFamiU
这个作者很懒,什么都没留下…
展开
-
C语言中volatile关键字的作用
C语言中volatile关键字的作用一.背景编译器优化介绍: 由于内存访问速度远不及CPU处理速度,为提高机器整体性能,会进行两种优化。 在硬件级优化: 引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。 软件级优化: 一种是在编写代码时由程序员优化,另一种是由编译器进行优化。 编译器优化常用的方法有:将内存变量缓存到寄存器;调整指令顺序充分利用CPU指令流水线,常见原创 2021-05-25 10:09:59 · 1450 阅读 · 0 评论 -
STM32程序中一段程序的执行时间和参数加减一次的运行时间
STM32程序中一段程序的执行时间和参数加减一次的运行时间当想要知道一段程序的执行时间时,可以利用KEIL的debug工具。例:现在想知道程序中一个变量加减一次需要执行多长时间。如想知道,第43行的程序运行时间。第 1 步:先进入debug。第 2 步:在第43行和44行加入断点。第 3 步:点击立即执行程序到第一个断点处(43行),并查看运行到此处的时间。从图中可知程序从开始运行到第43行,需要 0.06315370 s第 4 步:再次点击立即执行程序到第二个断点处(44行),并查看运原创 2021-06-07 13:35:09 · 3651 阅读 · 1 评论 -
STM32中断与事件的区别
STM32中断与事件的区别 EXTI_InitStruct.EXTI_Line=EXTI_Line0; EXTI_InitStruct.EXTI_LineCmd=ENABLE; EXTI_InitStruct.EXTI_Mode=EXTI_Mode_Interrupt;//事件控制器模式为中断 EXTI_InitStruct.EXTI_Trigger=EXTI_Trigger_Rising;//触发方式为上升沿触发 EXTI_Init(&EXTI_InitStruct);上面代码是为了原创 2021-05-28 00:30:27 · 1346 阅读 · 0 评论 -
怎样将STM32F4的外接晶振从8MHz改为25MHz而不改变系统时钟
怎样修改和计算STM32F4的系统时钟原创 2021-04-04 00:17:21 · 3041 阅读 · 0 评论 -
STM32利用FATFS文件系统给SD卡读写数据
利用FATFS文件系统如何给SD卡写入数据1. 操作步骤第一步:给SD卡注册工作区FATFS fs; //SD 卡逻辑驱动器的工作区f_mount(&fs,“0:”,1); //为SD卡逻辑驱动器注册工作区第二步:创建文件夹f_mkdir(“0:\shiyan”);//创建 (shiyan) 文件夹第三步:创建文件FIL File;f_open(&File, “0:\Shiyan\tianqi.dat”, FA_OPEN_ALWAYS | FA_WRITE);//在原创 2021-03-27 14:57:09 · 12386 阅读 · 0 评论 -
TIM_GetCounter(TIMx)与TIM_GetCapture2(TIMx)的比较与TIM_GetCapture2(TIMx)对标志位TIM_IT_CCx的影响
TIM_GetCounter(TIMx)与TIM_GetCapture2(TIMx)的比较与TIM_GetCapture2(TIMx)对标志位TIM_IT_CCx的影响1.TIM_GetCounter(TIMx) 读取TIMx寄存器CNT中的计数值/** * @brief Gets the TIMx Counter value. * @param TIMx: where x can be 1 to 17 to select the TIM peripheral. * @retval C原创 2021-03-16 11:17:02 · 12543 阅读 · 0 评论 -
KEIL仿真波形时,不实时显示波形
KEIL仿真波形时,不实时显示波形用KEIL仿真,引脚输出波形时,不能实时显示波形解决办法。仿真波形时,进行如下操作:第一步:点击View第二步:点击Periodic Window Update (下图中红色区域)原创 2021-01-10 09:21:03 · 1729 阅读 · 1 评论