- 博客(75)
- 问答 (1)
- 收藏
- 关注
原创 “The inferior stopped because it received a signal from the operating system”错误原因及解决方案
The inferior stopped because it received a signal from the operating system”错误通常表明程序在运行时收到了来自操作系统的信号,导致程序终止。
2025-04-09 13:35:42
217
原创 寄存器相关及清零、置1、取反等位移操作
对变量a的第x位清零,就1<<x位,再取反,跟a位与操作即可得到清零操作,例如a = 0x2f,对其第2位清零,1左移2位得到0000 0100,按位取反后得到1111 1011,再与a相与,1111 1011&0010 1111 = 0010 1011。若要对某几位清零:a = 0x2f(0010 1111),若要对bit2、bit3清零,则先得到0000 1100(掩码值),需要3<<2,再按位取反得到1111 0011,最后与0010 1111相与后得到0010 0011。
2025-04-07 20:42:10
444
原创 关键字的作用(static、const、Volatile)
精确地说就是,遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问;在模块内(函数体外),一个被声明为静态的变量可被模块内所用函数访问,但不能被模块外其他函数访问,是一个本地的全局变量。int const *a const 意味着a是一个指向常整型数的常指针,整型数和指针都不可修改。意味着a是一个指向常整型数的指针,整型数不可修改,但指针可修改;意味着a是一个指向整型数的常指针,整型数可修改,指针不可修改;意味着a是一个常整型数。
2025-02-11 14:15:28
212
原创 VS2022的MFC程序的类向导中,缺少添加类型库中的MFC类
在MFC中点击“TypeLib中的MDC类”或者“ActiveX控件中的MFC类”在可用类型库中找到需要的类添加即可。点击“Ctrl+Shift+A”
2025-01-20 15:30:08
334
原创 在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下; 32位exe和dll在目录c:\windows\syswow64目录下; 所以要注意: 在win6
在64位Windows下: 64位exe和dll在目录c:\windows\system32目录下;32位exe和dll在目录c:\windows\syswow64目录下;所以要注意: 在win64位系统下注册32位ocx或dll需要将32位ocx或dll拷贝到c:\windows\syswow64\目录下。且注册要用c:\windows\syswow64\regsvr32 xxxxxxx.ocx或dll。
2025-01-17 16:15:00
307
原创 vector加&和不加的区别
当你传递 vector 时,function 会得到该 vector 的副本。您可以在函数中对它执行任何操作,并且您的原始数据不会更改。//m*n的二维vector,所有元素为0。当你传递 vector& then function 时,它会得到引用,这意味着函数中的任何更改都会修改原始数据。获得二维数组的列数:nums[0].size()获得二维数组的行数:nums.size();动态创建m*n的二维vector。
2025-01-09 14:45:36
314
原创 VS移植问题以及OnInitDialog函数问题
在某些情况下,当添加新的对话框时,MFC 应用程序可能不会自动为子对话框类添加 OnInitDialog 函数。本来使用一个名为DLLTest对话框里面调用另外一个名为VK700Dlg的对话框,但两个对话框里面都需要调用同一个头文件,也就是画图的一个头文件,然后我初始化画图的一些属性之后放在如下类的程序中程序崩溃。解决方法:在调试属性->链接器->输入->附加依赖项中添加legacy_stdio_definitions.lib,如果还有错误,可能是只添加了解决方案中其中一个项目,另外一个没加;
2025-01-03 16:35:22
336
原创 VS常见错误之一:LNK2019 : 无法解析的外部符号
一般为使用了外部库函数但包含外部库(.lib)错误:试了放在属性里的VC++的库目录和C/C++里面的包含目录都没用,还是报错!
2024-12-26 14:49:49
1001
原创 SDK 作为虚拟示波器配备的一个 Windows 标准 DLL 接口,通过这个接口可以直接控制虚拟示波器,并获得示波器采集的数据
调用Capture函数开始采集数据,length就是你想要采集的长度,以K为单位,比如 length=10,就是10K 10240个点。设备的前级带有程控增益放大器,当采集的信号小于 AD 量程的时候,增益放大器可以把信号放大,更多的利用 AD 的位数,提高采集信号的质量。Dll 会根据设置的采集范围,说明:3 方式只要使用其中的一种就可以了,回掉函数和 Event 都是异步的处理方式,更加的高效;硬件触发的触发点都是采集数据的最中间,比如采集128K 数据,触发点就是第 64K 的点。
2024-12-23 16:20:31
1018
原创 AdvPlot的简单使用以及ON_MESSAGE的自定义使用
在类的实现文件中添加消息映射:然后,在类的实现文件中,使用 BEGIN_MESSAGE_MAP 和 END_MESSAGE_MAP 宏来定义消息映射。在类的头文件中声明消息处理函数:接下来,你需要在类的头文件中声明一个消息处理函数。定义自定义消息:首先,你需要定义一个自定义消息。通常,自定义消息的定义是通过在应用程序的头文件中添加一个常量来实现的,这个常量的值应该大于 WM_USER(0x0400),以避免与系统定义的消息冲突。实现消息处理函数:最后,你需要在类的实现文件中实现消息处理函数。
2024-12-20 16:45:51
285
原创 GetPrivateProfileInt 函数和Modbus使用
此值采用字符串形式;数据读写:Modbus协议允许主设备(如PLC、SCADA系统)读写从设备(如传感器、执行器)的数据。通用性:Modbus协议可在不同的物理层(如串口、以太网)上实现,具有很高的通用性。设置从站地址:主设备通过modbus_set_slave函数设置要通信的从设备地址;处理响应:从设备接收到请求后,根据请求的内容进行相应的处理,并返回相应给主设备;发送请求:主设备向从设备发送请求,请求中包含要读取或写入的数据地址和数量;解析响应:主设备接收到从设备的响应后,解析响应数据,获取所需信息;
2024-12-18 16:54:21
309
原创 ARINC429和CAN
应答场:包含应答位(ACK)和应答界定符(ACK Delimiter),用于确认数据是否正确接收。帧结束(EOF):标志着数据帧的结束,由7个隐性位(逻辑1)表示。帧起始(SOF):标志着数据帧的开始,由一个显性位(逻辑0)表示。控制场:包含数据长度代码(DLC),指示数据场中数据字节的数量。SSM(信号状态矩阵):2位,用于表示数据的有效性和状态。数据场:包含实际传输的数据,长度由控制场中的DLC决定。Label(标签):8位,用于表示数据的类型和来源。Data(数据):19位,包含实际传输的数据。
2024-12-16 16:40:22
821
原创 QT中OpenGL学习笔记1
在 OpenGL 中渲染多边形的方法有很多种,但最有效的方法是仅使用三角形条带基元并渲染图形硬件内存中的顶点。此示例是为 OpenGL ES 2.0 编写的,但它也适用于桌面 OpenGL,因为此示例足够简单,并且在大多数情况下,桌面 OpenGL API 是相同的。Qt主要有两种主要的UI开发方法:QtQuick 和Qt Widgets,它们的存在是为了支持不同类型的用户界面,并建立在针对每种类型进行了优化的单独图形引擎之上,可将OpenGL图形API中编码与这两种用户界面类型相结合创造出渲染后的界面;
2024-11-05 17:26:03
797
原创 CMFCMaskedEdit 类和CIPAddressCtrl 类
检索 IP 地址控件中所有四个字段的地址值。SetAddress:设置 IP 地址控件中所有四个字段的地址值。DWORD dwStyle,//IP 地址控件的样式**, 必须包括 WS_CHILD 样式,因为控件必须是子窗口。const RECT& rect,//对 IP 地址控件的大小和位置的引用。CWnd* pParentWnd,//指向 IP 地址控件的父窗口的指针。创建 IP 地址控件并将其附加到 CIPAddressCtrl 对象。//IP 地址控件的 ID。0 24 到 31。
2024-11-01 16:34:38
778
原创 串口通信以及USART和UART以及IIC和SPI-学习笔记
简述了同步异步通信以及串口通信区别,对RS232、RS422以及RS485作了深入分析,简述了IIC和SPI特点以及区别。
2024-10-30 16:03:05
859
空空如也
nuttx编译成功之后,想知道stm32L562E-DK可以直接用吗?
2022-02-19
TA创建的收藏夹 TA关注的收藏夹
TA关注的人