- 博客(68)
- 资源 (5)
- 收藏
- 关注
原创 本站文章导航
电子工程应用:STM32F1:STM32H7:STM32 其他:C51:C 语言:Python 语言:C# 语言:C++ 语言:Objective-C 语言:
2024-01-10 22:54:34
588
原创 STM32理论 —— 存储、中断
在该模式下,主器件发送IIC起始信号(通知从器件开始工作)和从器件地址信息(选择与哪个从器件进行通信)给从器件,从器件回应主器件以应答信号后,主器件发送CAT24WC01/02/04/08/16的字节地址(EEPROM内存储单元的地址),从器件回应主器件以应答信号后,主器件发送要写入的数据到被寻址的存储单元,CAT24WC01/02/04/08/16回应主器件以应答信号后,主器件发送IIC停止信号(通知从器件停止工作)给从器件。它管理着中断控制器的 20个中断/事件线。
2025-10-16 16:51:18
1067
原创 STM32理论 —— SD卡、FatFS 文件管理系统
FATFS是一个轻量级FAT文件系统模块,专为嵌入式系统设计。它支持FAT12/16/32格式,适用于SD卡、U盘等存储设备。采用平台无关的ANSI C编写,只需实现底层磁盘I/O接口即可移植到ARM、STM32等处理器。具有代码精简(约几千行)、内存占用低的特点,非常适合资源受限的嵌入式环境。该模块实现了基本的文件管理功能,是嵌入式存储方案的理想选择。
2025-07-14 14:59:01
1335
原创 PLC - 基恩士KV8000
梯形图程序是将配线图进行简化后所得;梯形图程序是通过指令的组合进行编制;指令由指令符(符号)和软元件编号(要素编号)构成:指令的种类:可分为基本指令、应用指令、运算指令、扩展指令、各单元专用指令。仅通过基本指令便可以编制出大部分的程序。软元件编号(要素编号):指输入继电器、输出继电器、定时器、计数器、内部辅助继电器等的编号。题目:编制步骤:题目与编制步骤(方法1):题目与编制步骤(方法2):题目与编制步骤(方法3):解析:双线圈是指在 PLC 的梯形图程序中,同一个输出线圈在多个位
2025-01-22 10:44:38
3174
原创 PLC - 汇川H5U 与Easy 系列
PLC:指可编程逻辑控制器 (Programmable Logic Controller) 的简称,是作为继电器回路的替代装置开发出来的控制装置,一台PLC 可取代大量的继电器、定时器、计数器;
2025-01-17 13:33:55
6216
原创 ESP32S3 -- Arduino
Arduino(Arduino Integrated Development Environment 、集成开发环境)是一个开源电子原型平台,由硬件和软件组成,旨在让任何人都能轻松创建交互式电子项目;简单来说,只要是搭载 Arduino 支持芯片的开发板都可以称为 Arduino 开发板。
2024-12-10 15:59:30
5886
原创 STM32理论 —— μCOS-Ⅲ(2/2):时间管理、消息队列、信号量、任务内嵌信号量/队列、事件标志、软件定时器、内存管理
更多关于队列相关API 函数介绍,详见《UCOS-III开发指南_V1.5》第十三章;
2024-06-12 14:18:55
1475
原创 STM32理论 —— μCOS-Ⅲ(1/2):移植、任务创建&删除&挂起&恢复、中断管理、临界段代码保护及任务调度锁、任务调度器
任务调度器就是决定当前执行哪个任务;μCos-Ⅲ 支持2种任务调度方式抢占式调度:针对优先级不同的任务,优先级高的任务可抢占优先级低的任务;时间片调度:针对优先级相同的任务,当多个任务优先级相同且就绪时,调度器会根据用户设置的时间片轮流运行这些任务。时间片以一次系统时钟节拍为单位(滴答定时器的中断频率),µC/OS-III 默认设置的任务时间片为 100,则 µC/OS-III 会在当前任务运行 100 次系统时钟节拍的时间后,切换到另一个相同任务优先级的任务中运行。
2024-05-09 23:05:58
996
原创 C#理论 —— 基础语法、数据类型、变量、常量、操作符、三大结构
结构可带有方法、字段、索引、属性、运算符方法和事件。结构可定义构造函数,但不能定义析构函数。但是,您不能为结构定义无参构造函数。无参构造函数(默认)是自动定义的,且不能被改变。与类不同,结构不能继承其他的结构或类。结构不能作为其他结构或类的基础结构。结构可实现一个或多个接口。结构成员不能指定为 abstract、virtual 或 protected。当您使用 New 操作符创建一个结构对象时,会调用适当的构造函数来创建结构。与类不同,结构可以不使用 New 操作符即可被实例化。
2024-02-28 23:00:40
1609
原创 TINA-TI —— 电路仿真
文章目录1. 安装2.1. 安装Tina-TI 官网下载链接:https://www.ti.com.cn/tool/cn/TINA-TI注册登陆,选择简体中文版下载;下载完成后,直接安装;2.
2023-12-09 11:27:26
5463
原创 STM32【H7】理论——MPU、Cache
MPU 可以配置的 16 个内存区的序号范围是 0 到 15,还有默认区 default region,也叫作背景区,序号-1;由于这些内存区可以嵌套和重叠,所以这些区域在嵌套或者重叠时有个优先级的问题。序号15 的优先级最高,以此递减,序号-1,即背景区的优先级最低。:MPU 可以独立配置保护 16 个内存区域,每个区域最小要求 256 字节,每个区域还可以配置为 8 个子区域;由于子区域一般都大小相同,这样每个子区域的大小就是 32 字节,正好跟 Cache 的 Cache Line 大小一样;
2023-05-26 17:18:03
6682
1
原创 STM32理论 —— 定时器、时钟、RTC
STM32F103系列单片机一共有11个定时器::2个高级定时器:TIM1、TIM8;挂载在APB2时钟总线上;4个通用定时器:TIM2~TIM5;挂载在APB1时钟总线上;2个基本定时器:TIM6、TIM7;2个看门狗定时器;1个系统嘀嗒定时器;主要功能特点位于低速的APB1时钟总线上;16位向上、向下、向上向下(中心对齐)计数模式,自动重装载寄存器(TIMx_ARR);
2023-04-18 22:59:41
6949
1
原创 STM32 ——bootloader IAP
IAP(In Application Programming) 是用户自己的程序在运行过程中对 User Flash 的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。为了实现 IAP 功能,系统将分为 bootloader 和 app 两部分。bootloader 部分实现 app 升级功能和跳转,app 部分实现系统核心功能并能触发升级。
2023-03-29 16:01:18
4339
原创 STM32理论 —— 看门狗、ST-Link
STM32 的独立看门狗由内部专门的 40Khz 低速时钟驱动(该内部低速时钟并不精确),即使主时钟发生故障,它也仍然有效;STM32 内部自带了 2 个看门狗:独立看门狗(IWDG)和窗口看门狗(WWDG);
2022-12-28 15:57:44
1461
原创 Python理论 —— excel、word、txt 数据读写
与 Excel 相似,唯一的不同是,Excel 中是写入单元格,而在 Word 中则是在文档的文本“范围”内插入字符串。方式三:按行获取所有数据。
2022-11-18 11:41:09
1688
转载 C语言Json库 —— cJson
关于该结构体的几点说明:cJOSN 结构体是一个双向链表,并且可通过 指针访问下一层。结构体成员 变量用于描述数据元素的类型(如果是键值对表示 值的类型),数据元素可以是字符串、整形、浮点型。如果是整形值的话可通过 将值取出如果是浮点型的话可通过 将值取出如果是字符串类型的话可通过 将值取出结构体成员 表示键值对中键值的名称。2.2 数据的封装在 cJSON.h 头文件中可以看到一些函数声明,通过调用这些创建函数就可以将 Json 支持的数据类型封装为 cJSON
2022-06-01 15:00:16
12725
1
原创 Python JSON 开发
文章目录1. 综述2. JSON 语法2.1 JSON 对象2.2 JSON 数组1. 综述JSON: JavaScript Object Notation(JavaScript 对象表示法),是轻量级的存储和交换文本信息的语法,类似 XML . 特点是纯文本、层级结构、使用数组。2. JSON 语法JSON 语法是 JavaScript 语法的子集。数据在名称/值对(健值对)中数据由逗号分隔花括号{}保存对象中括号 [] 保存数组,数组可以包含多个对象数据在名称/值对(健值对
2022-04-23 18:09:31
1558
原创 STM32【H7】理论——GPIO
文章目录1. GPIO1.1 GPIIO 功能模式分析1.2 推挽输出1.3 开漏输出1.4 复用推挽和开漏1.5 四种输入模式1.6 GPIO 的拉电流负载和灌电流负载能力1.7 IO 补偿单元(高速IO)1.8 GPIIO 兼容 CMOS 和 TTL 电平使用芯片:STM32H743XIH6 .开发板:安富莱V71. GPIO对于不使用的引脚,推荐设置为模拟模式,悬空即可。GPIO 的速度等级高的时候,最好使能 IO 补偿单元。GPIO 还涉及到一个注入电流的问题,详见:http:/
2022-04-16 23:37:25
3029
1
原创 GD32替换STM32移植过程
目录1. 硬件芯片移植2. 软件配置2.1 修改外部晶振起振超时时间2.2 增加DMA功能1. 硬件芯片移植下面以 GD32F103RET6 替换 STM32F103RET6为例硬件上使用对应的GD32芯片替换STM32,如使用 GD32F103RET6 替换 STM32F103RET6,其引脚数与引脚定义都是一样的到兆易创新官网 - 资料下载 - 对应系列芯片 - 应用软件 - 找到GD32F1x0_Addon_V3.1.0.rar,解压安装3. 更换算法文件(.FLM)到Keil 的F
2021-12-09 18:11:04
8964
5
原创 STM32理论 —— FreeRTOS(2/2):内核控制、时钟、队列
文章目录1. 系统内核控制1.1 相关API函数1.1.1 函数 `taskYIELD()`1.1.2 函数 `taskENTER_CRITICAL()`1.1.3 函数 `taskEXIT_CRITICAL()`1.1.4 函数 `taskENTER_CRITICAL_FROM_ISR()`1.1.5 函数 `taskEXIT_CRITICAL_FROM_ISR()`1.1.6 函数 `taskDISABLE_INTERRUPTS()`1.1.7 函数 `taskENABLE_INTERRUPTS()`1
2021-11-27 18:24:27
3665
转载 微带线与带状线的区别
带状线:线走内板层,信号线是嵌在两层导体之间的带状导线,它的电场分布都在两个包它的导体(平面)之间,不会辐射能量出去,也不会受到外部的辐射干扰。但由于它的周围全是电介质(介电常数比1大),所以信号在里程中的传输速度比在表层中慢。微带线:线走在板层表面, 如下图,蓝色部分是导体,绿色部分是PCB的绝缘电介质, 由于微带线的一面裸露在空气里面(可以向周围形成信号辐射或受到周围的辐射干扰),而另一面附在PCB的绝缘电介质上,所以它形成的电场一部分分布在空中,另一部分分布在PCB的绝缘介质中。但是微带线.
2021-11-04 10:11:52
20493
原创 Matlab —— 电路仿真
回到最初的斩控交交调压电路,理想情况下Mosfet S1和S4互补导通(S2、S3同理),前面的电路触发也是如此设置,但实际电路中可能因为某些原因,存在Mosfet S1、S4都不导通的情况,若此时负载L中存在大电压,此电压得不到及时的泄放,会对负载形成较大的威胁。12. 点击运行,查看两个示波器波形,其中示波器2中黄色为电源电压,蓝色为电阻电压,红色为电感电压,可见,由于电感的存在,负载的电压存在一个滞后状态,导致电源电压到零后,负载电压还未到零。
2021-10-04 00:52:33
32402
7
转载 嵌入式软件工程师学习步骤
嵌入式门槛虽然较高,但也跟其他事物一样,并不是牢不可破。只要我们用心去对待,冬雪终将化去,春风定会吹来。具体步骤如下:1、《C语言》第二版 谭浩强 ;《C程序设计语言》第二版 徐宝文译 机械工业出版社 你能区分开指针数组和数组指针吗?你知道函数指针吗? 你能区分开定义一个变量时系统给它分配的空间与用malloc()函数给一个变量分配的空间有什么不一样吗?2、《数据结构》C语言版 黄国愉、叶乃青编 清华大学出版社 你能合上书本,用C语言实现书中的单链表、双链表数据结构吗?3、《实用C++
2021-09-26 00:15:27
5123
原创 Git - 代码版本管控工具
文章目录1. 综述1.1 Git安装1.2 Git配置用户名与邮箱2. Git代码管理系统2.1 建立Git仓库2.2 配置本地仓库信息2.3 版本提交Git是一种代码版本控制系统。使用Git开发代码,一般有以下三个优势:更方便地管理代码版本;更方便地进行代码对比;协同合作1. 综述1.1 Git安装到Git的官网下载安装包。安装时一路默认即可,在下图的步骤中,是选择Git默认的编辑器。安装完成后,在桌面右击,可发现Git以添加到右击菜单栏中。点击Git Bash Here,
2021-09-02 00:57:56
486
原创 Python GUI之PyQT QTCreater专讲
文章目录1. 综述1.1 在 IDLE 中开启对 PyQt5 的代码提示功能1.2 取消文件自动命名全小写2. UI Designer 可视化设计2.1 新建工程2.2 属性编辑器2.3 将 ui 文件编译为 py 文件QTCreater是QT官方的IDE,其功能与Pytharm一样,都是用于开发。关于QT、QT Creater的安装,详见Python理论之三 —— GUI1. 综述1.1 在 IDLE 中开启对 PyQt5 的代码提示功能进入python安装目录中的dlelib文件夹,比如我
2021-08-15 14:38:30
1666
原创 Python理论 —— GUI
1. Tkinter在Python3.x 中,默认安装Tkinter库,在使用时引入即可(引入方式:import tkinter)Tkinter 最大的好处,就是 python3 自带,真正的"绿色代码",不需另外安装第三方工具和框架(比如 wxPython/PyQt),后续工作少,坑也少,打包的程序也足够小!GitHub上找到的 Tkinter 可视化编程工具:tkinter-designer1.1 Tkinter GUI 编程介绍创建一个 GUI 应用就像画画一样。传统上,艺术家使用单一的
2021-08-10 23:57:53
2826
6
原创 STM32【H7】理论——综述、HAL库简述
文章目录1. STM32H7芯片简介1.1 STM32H7与STM32F1、F4系列芯片的区别1.2 硬件框图1.3 STM32H7各型号对比1.4 总线框图和时钟1.5 AXI总线1.5.1 AXI总线简介1.5.2 AXI总线优先级编程1.6 总线互联1.7 FLASH1.8 RAM1.9 电源系统1.9.1 系统上电启动1.9.2 低功耗模式1.9.3 电源去耦电容的选择1.10 复位系统1.10.1 硬件复位1.10.2 软件复位1.11 RCC 时钟系统1.11.1 STM32H7 RCC时钟简介
2021-06-30 14:05:01
14907
6
原创 C51理论 —— 综述
文章目录1. 综述1.1 集成开发环境1.2 添加芯片包(Device)1.3 新建工程2. 其他2.1 Flash 压缩方法1. 综述1.1 集成开发环境安装Keil C51,注意Keil MDK版本不可用于开发C51的芯片:到官方下载地址下载安装、PoJie1.2 添加芯片包(Device)关闭Keil,打开STC-ISP软件 - 选中Keil仿真设置 - 点击图中按钮选择Keil的安装目录,点确定打开Keil,到Device页面,下拉选择STC MCU Database
2021-04-12 14:33:35
370
原创 STM32理论 ——通信
文章目录1. 数据通信介绍1.1 并行/串行通信2. USART串口通信(STM32H7系列)2.1 串口的硬件框图2.2 串口的基本功能特性2.3 串口的自适应波特率2.4 串口的数据帧格式2.5 同步串口和异步串口的区别2.6 单工,半双工和全双工通讯2.7 串口的HAL库应用(串口的初始化流程)2.7.1 串口寄存器结构体USART_TypeDef2.7.2 串口句柄结构体 UART_HandleTypeDef2.7.3 串口的底层配置(GPIO、时钟、中断等)2.7.4 串口的状态标志清除问题2.8
2021-03-18 11:30:39
5503
1
原创 STM32理论 —— DAC、DMA
文章目录1. DAC1.1 内置DAC1.2 MCP47251.3 可编程信号发生器 - AD98331.3.1 控制寄存器1.3.2 频率和相位寄存器1.3.3 输出引脚1.3.4 核心代码1.4 AD56932. DMA2.1 DMA的数据传送过程2.1.1 仲裁器2.1.2 指针增量2.1.3 循环模式2.1.4 存储器到存储器模式2.1.5 通道传输数据量2.1.6 中断2.2 核心代码2.3 CPU与外设之间的数据传送方式2.3.1 程序传送方式2.3.2 中断传送方式2.4 STM32 DMA
2021-02-24 10:20:41
5778
1
原创 STM32理论 —— FreeRTOS(1/2):任务、中断管理、列表
文章目录0. 综述0.1 单片机的几种运行模式0.2 任务栈与任务函数0.3 任务控制块 —— TCB1. FreeRTOS最新源码下载2. FreeRTOS代码移植3. 任务3.1 任务调度机制3.2 任务状态3.3 任务优先级3.4 任务实现3.5 任务控制块3.6 任务堆栈3.7 任务创建与删除(动态方法)3.7.1 `xTaskCreate()` —— 使用动态方法创建函数3.7.2 `xTaskCreateStatic()` —— 使用静态方法创建函数3.7.3 `vTaskDelete()` —
2021-01-31 16:19:15
3425
1
原创 Microsoft Office&WPS
本文总结了Office 2016系列软件(Excel、OneNote、Project)的实用操作技巧,重点介绍Excel的各项功能。主要内容包括:1)文档加密与取消加密方法;2)Excel行/列操作(筛选、删除空行、冻结窗格、自动调整列宽);3)格式规范建议(避免空单元格、统一格式等);4)常用公式应用(逻辑判断、进制转换、日期处理、计算函数等);5)特殊操作技巧(数字转字符串、绝对引用、获取列宽行高等)。全文通过表格分类整理各类公式用途与示例,便于快速查询应用。
2021-01-22 21:50:46
1485
1
原创 C#理论 —— 文件操作、委托和事件
文章目录1. 文件操作1.1 获取计算机驱动器信息Driveinfo1.2 文件夹操作Directory、Directoryinfo1.3 文件操作File、FileInfo1.4 文件路径操作Path1. 文件操作操作变量和常量时这些值都是存放到内存中的,当程序运行结束后使用的数据全部被删除。若需要长久保存应用程序中的数据,需要选用文件或数据库来存储。文件操作类在 System.IO 命名空间中,包括 Driveinfo 类、Directory 类、Directoryinfo 类、File 类、F
2021-01-07 17:59:16
897
1
原创 C#理论 —— Windows 窗体应用WinForm
文章目录1. WinForm - Windows窗体应用程序1.1 WinForm工程创建1.2 工具箱1.3 窗体属性1.3.1 实例:创建一个新窗体1.4 窗体事件1.4.1 实例:通过窗体的不同事件改变窗体的背景颜色1.5 窗体方法1.5.1 实例:窗体方法使用1.6 消息框MessageBox1.6.1 实例:Message的应用1.7 控件1. WinForm - Windows窗体应用程序WinForm 是 Windows Form 的简称,是基于 .NET Framework 平台的客户
2021-01-04 15:26:37
27509
4
文章附件STM32理论 -通信
2025-10-10
Matlab —— 电路仿真电路图.zip
2021-11-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅