- 博客(44)
- 收藏
- 关注
原创 为什么在C语言中,数组越界会造成很严重的问题?
C语言数组越界问题严重,源于其不提供运行时边界检查,将内存管理完全交给程序员。越界访问可导致数据损坏、程序崩溃甚至安全漏洞,被归类为"未定义行为",后果难以预测。典型危害包括破坏相邻变量、触发段错误或被利用进行缓冲区溢出攻击。预防措施包括:严格循环控制、边界检查、使用安全函数及检测工具(如AddressSanitizer)。该问题体现了C语言性能与控制力背后的安全隐患,要求程序员必须保持高度警惕。
2025-09-09 15:06:10
714
原创 通讯协议串口 | 232标准
RS-232是一种由美国电子工业协会制定的单端信号串行通信标准,主要用于短距离数据传输。其电气特性采用非平衡传输方式,逻辑“1”为-3V至-15V,逻辑“0”为+3V至+15V,硬件接口常用DB9或DB25连接器,核心引脚包括TXD、RXD和GND。RS-232广泛应用于工业自动化、计算机外设和调试与仪器仪表等领域,具有广泛兼容性、实现简单和稳定性等优势,但也存在传输速率低、点对点限制和抗干扰差等局限性。在实际应用中,需注意电平转换、通信协议和常见问题排查等关键设计与调试要点。尽管RS-232逐渐被USB、
2025-05-19 14:18:22
1300
原创 通讯协议串口 | 485标准
RS-485是一种由美国电子工业协会制定的差分信号串行通信标准,专为工业环境设计,支持多点通信、长距离传输及高抗干扰性。其核心原理是通过两条信号线传输数据,利用电压差定义逻辑状态,有效抵消共模噪声。RS-485支持半双工和全双工通信模式,具有抗干扰能力强、传输距离远、多点组网灵活、成本低等优势,广泛应用于工业自动化、智能建筑、新能源与安防等领域。在硬件设计上,需注意终端电阻、防护措施和布线规范;在协议选择上,Modbus RTU是主流协议。未来,RS-485将向智能化、兼容性和标准化方向发展,继续在工业物联
2025-05-19 14:14:55
1066
原创 C语言-指针函数和函数指针
在C语言中,"指针函数"和"函数指针"是两个重要但容易混淆的概念。指针函数是返回指针类型的函数,常用于动态内存分配和数据结构操作,如int* create_int_array(int size)。函数指针则是指向函数入口地址的指针变量,用于实现回调机制和动态调用,如int (*MathFunc)(int, int)。两者的主要区别在于:指针函数是返回指针的函数,而函数指针是指向函数的指针变量。指针函数用于资源创建和获取地址,函数指针用于动态调用和回调机制。掌握这两个概
2025-05-15 18:52:15
1018
原创 C语言-指针数组和数组指针
• 含义:声明一个包含3个元素的数组,每个元素是。的作用:改变运算符优先级,明确指针的指向目标类型。:当需要存储多个独立指针时使用(如字符串数组):当需要按行操作二维数组时使用(如矩阵遍历)• 含义:声明一个指针,指向一个包含3个。• 典型用途:存储多个独立指针。• 典型用途:操作二维数组的行。
2025-05-15 18:33:50
247
原创 火线、零线、地线
火线、零线和地线在电路中各有其核心功能与定义。火线(L)负责输送电能,电压为220V,通常标识为红色、黄色或绿色。零线(N)与火线构成回路,电压接近0V,标识为蓝色或黑色。地线(PE)用于安全保护,连接设备外壳与大地,标识为黄绿双色。火线和零线在正常工作时均有电流通过,而地线仅在漏电或故障时有电流。区分方法包括颜色识别、电笔测试、电压表测量和试灯法。安全使用规范强调正确接线、安装漏电保护器和选择适当设备。常见误区包括认为零线不带电、地线可替代零线以及不接地线也能使用,这些都可能带来严重的安全风险。正确区分和
2025-05-14 14:32:33
5543
原创 工业自动化领域中常见的5种回原点方式
• 多轴同步:需确保各轴回原方式兼容性(如伺服驱动器的多轴独立回原功能)。• 精度需求:高精度场景优先选择编码器Z相法或限位+编码器结合法。• 常用于直线轴设备(如滑台),需配合逻辑限位防止超程。• 需注意Z相信号可能受电源波动影响,重复精度需优化。特点:灵活适应复杂工况,但依赖系统稳定性和参数调试。• 限位+Index:触发限位后反向搜索Z相信号。特点:精度更高,适用于数控机床等高精度设备。• 成本控制:限位开关或机械止挡法更经济。• 需搭配过载保护功能防止电机损坏。
2025-05-14 11:52:21
861
原创 什么是步进电机?
步进电机是一种将电脉冲信号转换为角位移或线位移的特种电机,其核心特点是每输入一个电脉冲信号,转子会转动一个固定的角度(称为“步距角”)或移动一步。它通过控制脉冲的数量、频率和相序,实现精确的位置、速度和方向控制,无需闭环反馈即可完成开环定位操作
2025-04-27 10:13:42
480
原创 推荐书单 | 嵌入式软件工程师的精选书单
以下是针对嵌入式软件工程师的精选书单,分为基础夯实、进阶提升、高级精通和综合能力拓展四个阶段,帮助你系统性进阶至高级工程师甚至专家级别。书单结合经典教材与实战指南,涵盖硬件、软件、系统设计等核心领域,并标注了推荐理由及参考来源。
2025-03-18 16:04:14
2142
原创 嵌入式开发 | 矩阵键盘
矩阵键盘(Matrix Keypad)是一种通过行列交叉点检测按键的电子输入设备,广泛应用于嵌入式系统、计算器、密码锁、工业控制面板等场景。相比独立按键的“一对一”连接方式,矩阵键盘利用行列扫描技术大幅减少所需的I/O端口数量,是嵌入式开发中节省硬件资源的经典设计。
2025-03-13 18:07:30
1464
原创 O5-TIM定时器
TIM(Timer)定时器,它的基本功能是 对输入的时钟进行计数,并在计数值达到定值时触发中断,即定时触发中断定时器就是一个计数器,当计数器的输入是一个准确可靠的基准时钟时,对基准时钟进行计数的过程就是计时的过程。
2024-11-14 16:17:55
202
原创 04-中断
中断,英文名为Interrupt,计算机的世界里处处都有中断,任何工作都离不开中断,可以说整个计算机系统就是由中断来驱动的。那么什么是中断?简单来说就是,这一过程便是中断。
2024-11-14 16:15:32
743
原创 03-GPIO(General Purpose Input Output)通用输入输出
GPIO(General Purpose Input Output)通用输入输出
2024-11-09 21:44:55
212
原创 刷机|我的第一个Windows平板,(1)解除BL锁
我的小米平板5买来快吃灰两年半了,最近听说可以给pad5刷一个小米澎湃OS+Windows11的双系统。于是,我也打算给我的pad整个双系统玩玩。查询了相关资料后,发现需要先解锁BL锁。(出厂即为澎湃OS系统的不用看了)出厂为miui升级为hyperOS的可以采用这种方法解锁BL锁。
2024-10-14 00:16:34
6208
5
原创 嵌入式|EEPROM--电可擦除可编程只读存储器
EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦除可编程只读存储器)是一种非易失性存储器,它可以被电子擦除并重新编程。EEPROM通常用于存储小量数据,如配置信息、校准数据、用户设置等,它在嵌入式系统和电子设备中有着广泛的应用。
2024-02-29 20:06:00
2513
原创 嵌入式| IIC--串行通信协议
IIC(Inter-Integrated Circuit,又称为I2C,Inter-IC)是一种串行通信协议,用于在数字设备之间进行全双工通信。IIC通常用于连接低速设备,例如传感器、EEPROM、实时时钟(RTC)等。
2024-02-29 20:01:31
679
2
原创 嵌入式|SPI--串行外围接口
SPI(Serial Peripheral Interface,串行外围接口)是一种用于在数字设备之间进行全双工通信的串行通信协议。SPI通常用于短距离通信,例如在嵌入式系统中连接微控制器、外围设备、传感器、存储器芯片等。
2024-02-29 19:48:50
419
原创 嵌入式|PWM--脉冲宽度调制
PWM(Pulse Width Modulation,脉冲宽度调制)是一种常用的调制技术,用于控制模拟信号的大小,常用于控制电机速度、LED亮度、音频输出等。PWM通过改变脉冲信号的占空比(即高电平占总周期的比例)来控制输出信号的平均功率。
2024-02-29 19:42:27
685
原创 嵌入式|Tmer--定时器
定时器(Timer)是嵌入式系统中常见的一个组件,用于生成精确的时间延时、计时和触发事件。定时器通常是一个硬件模块,它可以在内部运行,独立于CPU,从而可以在后台执行计时任务而不影响CPU的正常工作。
2024-02-29 19:35:15
942
原创 嵌入式|USART--通用同步/异步接收/发送器
USART是一种串行通信接口,它代表“Universal Synchronous/Asynchronous Receiver/Transmitter”,即通用同步/异步接收/发送器。USART是一种广泛用于微控制器和嵌入式系统中的串行通信接口,可用于与外部设备进行数据通信。
2024-02-29 19:26:01
837
原创 嵌入式|ADC——模拟数字转换器
模拟数字转换器(Analog-to-Digital Converter,ADC)是一种电子设备,用于将连续的模拟信号转换为离散的数字信号。
2024-02-29 19:10:42
462
原创 C语言学习笔记系列三:数据类型
1.整数的分类(1)基本整型(int)***在存储单元的存储方式:用整数的补码(complement)形式存放。***求负数补码:1.对原码取反2.加13.将结果的符号位不变,其余各位取反(2)短整型(short)(3)长整型(long)(4)双长整型(long long int)2.整数变量的符号属性整数数据常见的存储空间和值的范围。
2023-09-12 10:19:11
300
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅