单片机
文章平均质量分 71
Kshine2017
记录自己的学习,分享自己的感悟。
展开
-
以太网外设ETH
近几年,项目需要,在多款单片机上使用了以太网外设。本文为阶段知识整理,查缺补漏,方便以后再次遇到相关任务时,可以游刃有余的完成工作。原创 2023-05-14 22:27:26 · 1510 阅读 · 1 评论 -
GPIO相关寄存器
1. STM32的GPIO相关寄存器GPIOx_BRRGPIOx_BSRRGPIOx_CRHGPIOx_CRLGPIOx_IDRGPIOx_LCKRGPIOx_ODR1.1 输入输出方向的设置涉及到两个32位的配置寄存器(Configuration Register),CRH,CRL。GPIOB->CRL &= 0x0FFFFFFF;GPIOB->CRL|=0x30000000;//3<<28;//配置PB7为输出GPIOB->CRL &=原创 2022-05-10 16:52:41 · 2178 阅读 · 0 评论 -
OLED屏幕的使用
OLED原创 2022-06-01 12:06:04 · 1319 阅读 · 0 评论 -
IAP升级
相关资料:https://blog.csdn.net/elikang/article/details/86082960IAP升级的原理这里就不介绍了。1. 修改代码实现IAP+Ymodem基于stm32官方提供的demo工程 STM32F10x_AN2557_FW_V3.3.0提取出IAP和Ymodem文件,并修改Ymodem代码,从标准库到HAL库。1.1 首先,从demo中找到执行框架,并将其封装在新建的文件IAP.c中。#include "main.h"#include "Define.原创 2021-03-15 17:57:23 · 1220 阅读 · 0 评论 -
通信接口CAN
CAN通信目前(2021年6月)我用到的CAN电路原理图:判断电路有没有接好,其中一个标准就是,测量接入的电阻阻值是不是60Ω。上图两个60.4Ω直接,可以接一个电容到GND。CAN数据接收设置针对两种MCU的过滤器设置。stm32f105网上全是参考代码,这里直接贴上我的过滤器代码列表模式,CAN1 16位ID过滤,CAN2 16位ID过滤 CAN_FilterTypeDef sFilterConfig; sFilterConfig.FilterMode = CAN原创 2021-06-30 16:49:14 · 5289 阅读 · 3 评论 -
IO模拟,IIC,SPI,PWM
20220402原创 2022-04-08 18:02:24 · 2586 阅读 · 0 评论 -
模拟电路设计学习
光电采集设备记录1. 功能示意图三个滑动变阻器可以对3路恒流源输出量进行调节,从而改变LED发光亮度。ADS1220芯片,需要使用SPI模式1。目前使用的是两线制接线方式。不需要校准。加热丝PID控温,在湿度变送器项目中有涉及。光电采集板不对加热丝进行控温。本项目考虑到运行速率,未采用操作系统。指示灯包括6个通讯指示灯(3路收发)和一个运行指示灯。用户按键用于boot升级以及shell模式。1路485和一路232 共用串口2。通过开关拨动切换。2. 电路图分析2.1 三级检测电路原创 2021-02-20 11:53:43 · 1810 阅读 · 2 评论 -
循环队列(自定义,4通道)在CAN中的使用
2022年4月1日原创 2022-04-02 08:59:37 · 1251 阅读 · 1 评论 -
#GD32F307VET6# 等位替代海威华芯HHD1705001
ADC采集,在使用单片机内部温度采集功能时,发现该通道需要放在其它通道的前面进行。否则读出来的数值会异常。这可能和我的ADC采集方式有关系。初始化引脚前需要先初始化时钟,否则引脚可能会初始化失败。这是我观察发现的,不确定是否为个例问题。原创 2023-03-24 10:30:41 · 628 阅读 · 0 评论 -
#HHD32F107# IIC
国产芯片声明:本文旨在帮助自己记录芯片的常用配置过程。同时希望分享出自己的使用经验,让更多的人加入国产芯片的开发中。新的技术往往都来自于模仿。从模仿到超越。芯片国产化的过程需要模仿已经比较成熟的产品,让使用者好入手,增加自己的用户量。IIC2个I2C总线接口 。支持主、从两种模式。可设定为4个不同的从机地址。支持3MHz速率。相关引脚IIC寄存器大概了解一下有哪些寄存器,这些都已经在驱动中封装好,不需要特别关注。IIC主模式代码实现void i2c_init(HHD32F1_II原创 2021-11-26 16:28:39 · 558 阅读 · 1 评论 -
#HHD32F107# watch dog
介绍独立的频率可以设定的看门狗时钟振荡器看门狗定时器可触发中断或复位支持低功耗模式时钟源可以选择内部低速时钟或者内部高速时钟。看门狗 时钟振荡 控制寄存器 WDTOSCCTRL 0x024振荡器的模拟部分用于产生模拟时钟(Fclkana)。有±20%的误差。振荡器的数字部分,模拟时钟(Fclkana)会被重新整形分频到 WDT_CLK 输出。模拟时钟(Fclkana)可以用FRWQSEL 在320KHz 到2.2MHz 范围内选择。然后再被DIVSEL 控制的分频器分频输出到WDT原创 2021-11-26 15:16:17 · 650 阅读 · 0 评论 -
#HHD32F107# SPI通信
国产芯片声明:本文旨在帮助自己记录芯片的常用配置过程。同时希望分享出自己的使用经验,让更多的人加入国产芯片的开发中。新的技术往往都来自于模仿。从模仿到超越。芯片国产化的过程需要模仿已经比较成熟的产品,让使用者好入手,增加自己的用户量。HHD32F107 SPI通信首先,这里使用的是单片机内部自带的SPI模块,即硬件SPI。使用硬件SPI的好处是,在进行SPI通信时,往来的数据交给外设模块处理,内核可以响应别的操作。1. SPI模块简介2. SPI相关的引脚如下图所示,3路SPI引脚。3.原创 2021-11-18 18:19:29 · 992 阅读 · 5 评论 -
#HHD32F107# AD采集
国产芯片声明:本文旨在帮助自己记录芯片的常用配置过程。同时希望分享出自己的使用经验,让更多的人加入国产芯片的开发中。新的技术往往都来自于模仿。从模仿到超越。芯片国产化的过程需要模仿已经比较成熟的产品,让使用者好入手,增加自己的用户量。HHD32F107 AD采集,模拟量采集1. AD模块简介2. ADC相关的引脚ADC模块属于HHD32F107的一个集成外设。当我们要使用 MCU 外设时,需找到相应的管脚并通过 IOCONFIG 寄存器设置管脚的功能。系统复位时,主 SWD 调试端口和 R原创 2021-11-18 17:13:44 · 910 阅读 · 2 评论 -
#STM32学习# 不同的型号
Flash 16/32 Kbytes.Flash 64/128 Kbytes.Flash 256/512 Kbytes.Flash 768 Kbytes/1 Mbyte.原创 2023-05-06 15:41:06 · 995 阅读 · 1 评论 -
#STM32学习#RTC设置与低功耗(1)
基于L476RGTx的开发过程:1、关于RTC的配置:1.1、首先,我们要保证创建的工程正确的配置了时钟LSE。在stm32cubemx自动生成的代码中有如下体现:1.2、RTC时钟分频设置 时钟源 AsynchPrediv SynchPrediv ...原创 2018-12-12 11:00:16 · 3748 阅读 · 0 评论 -
#STM32学习# 使用文件系统FAT
1、我在使用stm32进行文件操作时,学习和使用了FatFs文件系统。如下图所示,关键在于FatFs module 和 LowLevel disk I/O layer。2、在项目中需要将FatFs module 和 LowLevel disk I/O layer 各自 的内容分别定义好。我所涉及的项目,就包含了这样的文件。如下图所示:下方绿色文字,表示 LowLevel disk I/O la...原创 2018-04-24 16:55:20 · 5591 阅读 · 1 评论 -
STM32CubeMX --- 独立看门狗
IWDGcubemx中的配置计算超时时间用户代码cubemx中的配置首先我们需要知道iwdg看门狗的时钟源为内部40khz的时钟。这个关系到如何计算喂狗超时时间。如下图所示,勾选“Activated”。可以根据自己的需求修改预分频系数和记满周期。计算超时时间参考:计算用户代码void startIWDG(void){ __HAL_IWDG_START(&hiwdg);}void clearIWDG(void){ HAL_IWDG_Refresh(&h原创 2021-01-22 13:04:38 · 455 阅读 · 0 评论 -
(工作记录)2020年3月11日至2021年3月15日
工作记录,单片机原创 2022-06-14 14:31:12 · 1097 阅读 · 0 评论