MCU专题精讲-看门狗

MCU专题精讲-看门狗

看门狗独立看门狗 (FWDGT):工作原理:FWDGT是一个持续计数的定时器。在设定的时间间隔内,软件必须“喂狗”(重置该定时器)。如果在此时间内没有“喂狗”,则FWDGT会触发一个系统复位。时钟源:FWDGT通常使用一个独立的、低速...
MCU专题精讲-I2C

MCU专题精讲-I2C

I2C通信基础知识两线制:I2C使用两条线进行通信,一条是数据线(SDA),另一条是时钟线(SCL)。SDA线用于数据传输,SCL线用于同步。设备角色:在I2C通信中,设备可以是主设备(Master)或从设备(Slave)。主设备是启动和...
GD32内存堆栈配置

GD32内存堆栈配置

一、问题简介使用malloc分配内存空间并进行赋值操作,发现读出来的内容如下所示,和实际内容不一致,出现大量0x7F,怀疑是内存越界导致。二、原因使用了malloc分配内存空间超过分配的空间限制三、解决方案在相应的启动文件...
案例: gd32 swdp_enable 影响i2c输出

案例: gd32 swdp_enable 影响i2c输出

一、问题简介GD32处理gpio_pin_remap_config时,如果未配置为SW-DP,则9555、fru、lm75都不能正常读写SPI写的时容易产生问题,出现只写一部分现象二、问题分析问题1gpio_pin_remap_config(GPIO_SWJ_SWDPENABLE_REMAP, ENABL...
GD32F427学习记录

GD32F427学习记录

一、时钟控制单元(CCTL)1.简介时钟控制单元提供了一系列频率的时钟功能,包括一个内部16M RC振荡器时钟(IRC16M)、一个内部48M RC振荡器时钟(IRC48M)、一个外部高速晶体振荡器时钟(HXTAL)、一个内部32K RC振荡器时钟...
GD32 IIC DMA发送和接收并采用中断获取信息

GD32 IIC DMA发送和接收并采用中断获取信息

IIC DMA发送和接收并采用中断获取信息一、使用背景目前项目中采用的I2C发送和接收均采用软件发送和接收,为了优化效率,更新I2C驱动为DMA发送和接收,并提供相应的接口,采用I2C接收停止中断来通知数据处理程序进行处理,可...
GD32 I2C主机发送和从机中断接收

GD32 I2C主机发送和从机中断接收

GD32 I2C主机发送和从机中断接收一、I2C初始化此程序采用I2C0作为主机,I2C1作为从机,因此需要初始化I2C0和I2C1/*************************************************** * 名称: i2c_init * 描述: i2c初始化函数 * 参数: vo...
嵌入式软件架构设计

嵌入式软件架构设计

嵌入式软件架构设计一、为何要进行嵌入式软件架构设计如果没有好的架构,移植将会是一件非常痛苦的事情。如果没有好的架构,复用是不存在的,至少不能最大限度的复用原有的代码。如果没有好的架构,一旦某处修改了,其它很...
基于cortex M4内核空调实时控制系统

基于cortex M4内核空调实时控制系统

摘要目前,物联网技术越来越发达,各种芯片、传感器都如雨后春笋层出不穷,空调的功能也越来越多。本文设计了一种基于cortex M4内核的实时操作系统,解决空调在具有非常复杂功能的情况下的逻辑处理和防堵塞的问题。该控制系...
FreeRTOS学习教程

FreeRTOS学习教程

提到FreeRTOS,大家的第一反应是,为什么会去学FreeRTOS,FreeRTOS有哪些优缺点,这篇文章会从零开始带领大家进入FreeRTOS的世界,这也是我验证自身所学的一个过程。RTOS简介RTOS全称为real-time-operate-sysyem,以为实时...