
单片机专栏
文章平均质量分 64
包含STM32 MSP430等
klaus_x
待更新,请耐心等待,不会很久,还在上班,哈哈哈哈哈,谢谢!
展开
-
STM32F4开发板----外部中断(003)
外部中断1 初始化参数/** * @brief EXTI Init Structure definition */typedef struct{ uint32_t EXTI_Line; /*!< Specifies the EXTI lines to be enabled or disabled. ...原创 2018-07-12 18:27:19 · 755 阅读 · 0 评论 -
STM32 中断向量表
STM32 F4系列中断向量表External InterruptsDCD WWDG_IRQHandler ; Window WatchDog DCD PVD_IRQHandler ; PVD through EXTI ...原创 2018-07-24 01:59:25 · 5797 阅读 · 1 评论 -
STM32 关于ADC采交直流问题探讨(一)
前沿关于STM32采样问题,相信很多人曾遇到过这样的问题,无论是关于ADC底层相关的配置还是ADC采样方案的抉择,或者是ADC软硬件滤波算法,这里博主就自己曾做过的训练题为引申,探讨ADC采样过程中的问题。1.ADC的认识1.1 ADC初始化参数/* Exported types --------------------------------------------------...原创 2018-07-13 15:04:02 · 4770 阅读 · 1 评论 -
关于直流稳压稳流软件的实现
关于直流稳压稳流软件的实现在电力电子中,主要的核心知识点就是稳压稳流和稳功率,就像实验室中的稳压直流电源一样,你设定输出多少伏,比如25v,直流稳压电源就是25v,无论你接什么负载,都是25v,也不可能说是24.9v或者25.1v,要体现在一个稳定上面。实验室的直流稳压电源大概基本组成电路就是一个整流模块和一个SG3525同采样电路实现的硬件闭环电路组成,不过要做到高精度也并非易事,这里博...原创 2018-09-12 20:54:43 · 1911 阅读 · 2 评论 -
LCD浮点数显示函数的探讨
单片机开放附赠的学习资料里面很少见到显示浮点数的函数,显示浮点数的操作也相当烦坠!一般转换显示法拿STM32单片机资源,我们选取ADC采样部分函数来看显示过程 adcx=Get_Adc_Average(ADC_Channel_5,20); LCD_ShowxNum(134,130,adcx,4,16,0); temp=(float)adcx*(3.原创 2017-12-19 16:54:00 · 8126 阅读 · 4 评论 -
STM32F4开发板----GPIO(001)
STM32F4开发板快速入门—-GPIO篇 GPIO 设置输入/出总共8种模式* 输入浮空,输入上拉,输入下拉,模拟输入。* 开漏输出,推挽输出,推挽复用共功能,开漏复用功能模式选择的话,一般得看具体电路了,具体看输入的信号,比如接低电平信号,上拉成高电平,接高电平信号下拉成低电平。初始化参数/** * @brief GPIO Init structure...原创 2018-05-02 20:06:10 · 485 阅读 · 0 评论 -
有效值、真有效值、全有效值,采样准确性问题
ADC采样 真有效值计算问题1.有效值、真有效值、全有效值有效值主要用于衡量交流电压、交流电流的幅值大小,出发点是热效应与直流电相同。1.1 电流电压有效值电压/电流有效值: 在相同的电阻两端分别施加直流电压和交流电压/电流,经过一个交流电压周期的时间,如果它们在电阻上所消耗的电能相等,则把该直流电压的幅值作为交流电压/电流的有效值。 正弦电压、电流有效值等于其...原创 2018-08-10 12:20:42 · 27236 阅读 · 6 评论 -
STM32f407系统定时器时钟配置、计算
1. 外部晶振的选择确定自己单片机的外部晶振系统默认配置为25M,即打开官方库文件参数HSE Frequency(Hz) 一般为25000000 HSE Frequency(Hz) | 25000000---------- #if !defined (HSE_VALUE) #define HSE_VALUE ((uint32...原创 2017-10-08 15:44:53 · 14045 阅读 · 4 评论 -
spwm单项并网的实现
并网问题,最近老师布置了一道并网的问题,博主之前也有尝试过,不过之前做的不深。 至于这一个问题,解释起来比较麻烦,相信做过或者了解过的人应该知道,简单来说,就是一个同步。我们知道,220v 50hz的电网波动其实还是有的,一般认为波动在49.5~50.5Hz左右变换,我们用变压器变压过来,通过一个比较器等可以整形成一个脉冲波,我们测脉冲波的频率就可以知道此时电网的频率。提前说明...原创 2018-04-28 00:51:13 · 1245 阅读 · 0 评论 -
STM32F4开发板----串口(002)
串口1 相关串口库函数/* Exported macro ------------------------------------------------------------*//* Exported functions --------------------------------------------------------*/ /* Function used ...原创 2018-07-12 18:16:01 · 559 阅读 · 0 评论 -
STM32F4开发板----定时器(004)
定时器定时器功能:测量输入信号的脉冲长度(输入捕获)或者产生输出波形(输出比较和pwm)1.通用定时器1.1 初始化基本定时参数/** * @brief TIM Time Base Init structure definition * @note This structure is used with all TIMx except for TIM6 and...原创 2018-07-12 18:31:40 · 1347 阅读 · 0 评论 -
STM32 关于定时器相关问题的探讨(一)
STM32F4 PWM模块探讨1.STM32定时器认识1.1 基本定时器基本定时器 TIM6 和 TIM7 包含一个 16 位自动重载计数器,该计数器由可编程预分频器驱动。此类定时器不仅可用作通用定时器以生成时基, 还可以专门用于驱动数模转换器 。(DAC)。 通用定时器特性16 位自动重载递增计数器 16 位可编程预分频器,用于对计数器时钟频率进行分频(即运行时修改),...原创 2018-07-14 13:40:15 · 3705 阅读 · 0 评论 -
STM32F4四路ADC采样问题探讨
1.ADC配置**####1.1模式确定1.1.1 主从模式,选择主ADC1模式带动从ADC2模式** 1.1.2 对应代码段: /* Enable DMA request after last transfer (Multi-ADC mode) */ ADC_MultiModeDMARequestAfterLastTransferCmd(ENABLE);####1.2 时钟初原创 2017-12-19 16:36:17 · 6532 阅读 · 4 评论 -
STM32 关于ADC采交直流问题探讨(二)
5. 硬件电路设计5.1 电压比较器电路电压比较器的功能是对两个输入电压的大小进行比较,并根据比较结果输出高低电平。 &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;通常用阈值电压和传输特性来描述比较器的工作特性。 阈值电压(又称门槛电平)是使比较器输出电 压发生跳变时的输入电压值,简称为阈值,用符号UTH表示。估算阈值主要应抓住输入信号使输出电压发生原创 2018-07-13 15:25:04 · 10760 阅读 · 9 评论 -
关于STM32精准采频率的实现
博主这次做训练题遇到了采频率的问题,做单项并网问题,需要实时了解频率的相关信息。 尝试直接用他们提供的输入捕获,发现并不是很好用,琢磨了半天,实现了自己的部分采用。 这里就不一步一步的分析了,估计看的情况也比较少。 直接上手,不过,博主是从正点原子那里直接得到的库里面查找的信息。 一般定时器的配置pwm_in_mode.h文件这里介绍了两个配置函数#ifndef __T...原创 2018-04-22 23:09:53 · 17013 阅读 · 12 评论 -
STM32高级定时器死区时间的配置及计算
互补输出和死区插入死区概念高级控制定时器(TIM1 和 TIM8)可以输出两路互补信号,并管理输出的关断与接通瞬间。这段时间通常称为死区,用户必须根据与输出相连接的器件及其特性(电平转换器的固有延迟、开关器件产生的延迟…)来调整死区时间 每路输出可以独立选择输出极性(主输出 OCx 或互补输出 OCxN)。可通过对 TIMx_CCER寄存器中的 CCxP 和 CCxNP 位执行写操作来完成极性选择原创 2017-10-21 03:14:08 · 16352 阅读 · 3 评论 -
关于直流稳流稳功率的几点说明
前篇文章中,博主已经比较详细的介绍了稳压软件过程的实现,如果部分地方不太懂,也只有可能是有关stm32单片机的部分配置的实现和硬件交代不明确的地方,如果有关配置不太懂的话,可以到我之前的博客翻阅,相信都是有的,再其次就是硬件问题,这个不难,花些功夫自然就能弄明白。稳流源的制作 相信直流稳压电源的相关配...原创 2018-09-19 16:14:39 · 705 阅读 · 0 评论 -
STM32 关于定时器相关问题的探讨(二)
4.硬件设计4.1LED驱动电路利用单片机产生得PWM驱动电路直接驱动LED电路来验证,当输出PWM宽度变化时可以看到此时LED亮度变化,此时只需要将LED上拉就可以实现验证。当输入为低电平时,LED灯发光 4.2 SPWM滤波方案利用高级定时器,我们能产生一系列PWM脉宽随时间变化的PWM波形,通过简单的RC滤波就可以将SPWM滤波成正弦波5.软件设计过程...原创 2018-07-14 14:57:25 · 1009 阅读 · 1 评论 -
STM32F4开发板----ADC(005)
ADC的认识1 ADC初始化参数/* Exported types ------------------------------------------------------------*//** * @brief ADC Init structure definition */typedef struct{ uint32_t ADC_Resoluti...原创 2018-07-12 18:33:27 · 1004 阅读 · 0 评论 -
MSP430中断参数
MSP430中断参数1.中断向量入口参数typedef enum{ VECTOR_RTC =41u, /* RTC */ VECTOR_PORT2 , /* Port 2 */ VECTOR_TIMER2_A1 , /* Timer0_A5 CC1-4, TA */ VECTOR_TIMER2_A0 , /* Timer...原创 2018-07-24 01:33:13 · 1671 阅读 · 0 评论 -
MSP430时钟定性分析
MSP430时钟定性分析1.时钟参数1.1 宏定义时钟注释//宏定义外接时钟,设置时钟很重要#define EXTAL_IN_XT1_HZ ( 32768)#define EXTAL_IN_XT2_HZ (4000000)//宏定义内部REFO,VLO时钟频率#define VLOCLK_FREQUENCY ( 10000)#define REFOC...原创 2018-07-14 00:55:45 · 1199 阅读 · 1 评论 -
IAR新建工程 一个带自己库的工程
IAR新建工程 一个带自己库的工程上次博主给大家演示了一个比较简易的工程文件,这一次博主用IAR新建一个能自己加库的工程项目1.新建文件这里博主自己建了下面的文件夹 这里的setting是新建工作区生成的HARDWEAR存放各种模块,比如OLED,KEY,LED等等用来存放自己写的库System存放一些系统文件,包括启动文件之类的User文件存放主函数,用户自定义文件,...原创 2018-07-10 20:23:19 · 3733 阅读 · 4 评论 -
MSP430定时器介绍
MSP430定时器笔记1.定时器参数1.1 基本定时器typedef enum{ TIMER_A0 , TIMER_A1 , TIMER_A2 , TIMER_B0 , TIMER_NUM ,}TIMERn; ...原创 2018-07-21 18:09:32 · 4716 阅读 · 0 评论 -
MSP430F5529 ADC参考
MSP430F5529 ADC参考笔记1.ADC12_A初始化参数typedef struct ADC_MemMap{ union { uint16_t CTL0; struct { uint16_t SC :1; /* ADC12 Start Conversion */ uint16_t ENC ...原创 2018-07-24 01:44:38 · 13519 阅读 · 9 评论 -
IAR for MSP430的安装
IAR for MSP430的安装1.IAR的下载1.1部分亮点IAR是一款比较良心的编程软件,博主我一直写的是MATLAB和KEIL,初次接触IAR就发现了这款软件的某些吸引人的地方。对于长期从事编程的同学来说,配色方案绝对是重中之重,IAR的配色方案一开始就吸引了我。 IAR另外一个特别吸引我的地方就是分频,对于屏幕的要求,当然是越多越好,IAR像MATLAB一样提供了分...原创 2020-03-28 14:37:32 · 41033 阅读 · 163 评论 -
IAR for 430 如何建一个简易工程
IAR for 430 如何建一个新工程 上一篇博客写到了关于430的安装。这一次博主记录如何新建一个430的工程。1.新建一个工程目录,打开IAR软件选择File—>New Workspace,新建一个工作区间。 2.新建一个工程文件选择Project—>Create New Project—->Empty project,这里博主我将它保存为tmp的工程。...原创 2018-07-08 10:19:17 · 7918 阅读 · 2 评论