
MCU
文章平均质量分 72
介绍MCU的用法
Chenxr32
博学而约取,厚积而薄发
展开
-
测量RT-Thread线程调度的时间的方法
在实时操作系统中,线程调度花费的时间是一个值得关注的影响系统实时性的因素,尤其是在系统需要处理紧急的任务时,线程调度的时间更是不能忽略。本文给出了一种在GD32单片机上测量RT-Thread系统线程调度时间的方法。原创 2021-08-15 01:28:48 · 1872 阅读 · 0 评论 -
GD32F103配置SPI+DMA收发数据
本文介绍如何配置GD32F103系列的SPI和DMA,并贴出相关代码。原创 2021-08-19 23:54:47 · 11215 阅读 · 13 评论 -
STM32F4单定时器独立输出四路PWM脉冲
本文以STM32F405单片机为例,介绍如何用一个定时器的四个通道独立地输出四路PWM脉冲。主要使用定时器输出比较的翻转功能和捕获比较中断。原创 2021-04-05 23:37:57 · 10514 阅读 · 2 评论 -
STM32上μC/Shell移植与应用
本着“停课不停学”的原则,在家也不能闲着,最近在进一步探索μC/OS时发现了μC/Shell,果断决定尝试一下。Silicon Labs收购Micrium后,将其产品开源了,GitHub上可以下载代码。https://github.com/SiliconLabs下面先介绍μC/Shell的文件结构,再介绍移植方法和实际应用。μC/Shell文件结构\Cfg\Template\she...原创 2020-03-22 15:43:42 · 2581 阅读 · 1 评论 -
STM32单片机ADC规则组多通道转换-DMA模式
模数转换器(Analog To Digital Converter)简称ADC(也可以写成A/D),是指将连续变化的模拟信号转换为离散的数字信号的器件。 直接存储器存取技术(Direct Memory Access)简称DMA。DMA用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。无须CPU干预,数据可以通过DMA快速地移动,这就节省CPU的资源可以做...原创 2018-11-11 16:49:33 · 8145 阅读 · 0 评论 -
Cortex-M3寄存器组、汇编语言与C语言的接口介绍
学uCOS的任务切换时涉及到汇编代码。为了能理解汇编代码,我在网上了解了Cortex-M3寄存器组、C与汇编的接口的知识,在这里分享给大家。先来介绍Cortex-M3寄存器组:Cortex-M3拥有16个通用寄存器R0-R15。R0-R12都是32位通用寄存器,用于数据操作。R13是堆栈指针。在CM3处理器内核中共有两个堆栈指针,于是也就支持两个堆栈。当引用R13(SP)时,你...原创 2020-02-02 17:43:55 · 1458 阅读 · 1 评论 -
单片机串口数据处理(1)——串口中断发送数据
实时性在嵌入式开发中的非常重要,优化MCU串口传输处理方式可以提高嵌入式系统的实时性。在互联网上学习并亲自实验(基于STM32单片机)后,我将分两次介绍优化MCU串口收发数据的方法,参考资料将在第二篇博客中列出。第一次先介绍串口发送数据的优化。发送方式一:方式一采用“死等”的方式发送数据,即在while循环中等待字发送完成标志位置位。void usartsend(void){ ...原创 2019-02-13 12:27:49 · 11252 阅读 · 0 评论 -
单片机串口数据处理(2)——uCOSIII+循环队列接收数据
上一篇文章介绍了串口发送数据的优化方法,使用中断的方式发送数据可以提高系统实时性。这次介绍串口接收数据的方法。新的数据接收方法结合了uCOS-III和循环队列,有较好的实时性。同时,使用STM32的总线空闲中断判断数据包接收完毕,使用状态机检查数据包正误。配置USART时要使能总线空闲中断,当MCU检测到串口总线上有一个字节的时间没有接收数据时便触发中断。在中断处理函数中必须软件清除中断标志位...原创 2019-02-15 14:44:03 · 6282 阅读 · 1 评论 -
STM32F4单片机ADC采样及ARM-DSP库的FFT
模拟信号经过ADC采样后变成数字信号,数字信号可以进行FFT运算,在频域中更容易分析信号的特征。本文将介绍如何用STM32F4的进行ADC采样,并利用ARMDSP库里的FFT算法对ADC采样值进行快速傅里叶变换。原创 2019-07-29 12:31:00 · 12720 阅读 · 21 评论