- 博客(30)
- 收藏
- 关注
原创 代码中的表达式和语句到底有什么区别?
语句(Statement): 会做一些操作,不能缩减为一个数值。代码最基本的组成就是表达式和语句,但两者有什么区别呢?表达式(Expression): 会生成一个数值。
2024-06-27 21:30:16 152
原创 vscode c/c++插件的includePath中${workspaceFolder}/**不起作用解决思路
vscode安装了c/c++ IntelliSense插件后,能方便c代码的编辑和调试。在项目文件夹下的.vscode/c_cpp_properties.json中,可设置h头文件的搜索路径的含义是搜索项目目录下的所有文件。
2024-06-07 09:10:41 1522
原创 ETH公钥转地址
注意: point_x+point_y是bytes相加,组成64bytes,也就是非压缩公钥。我发现很少有地方强调这个,自己傻傻得直接用公钥计算,结果总不对!mod_sqrt是根据椭圆曲线上的模开方,不是数学开方,具体需要自己代码实现,或者借用现成库。
2024-05-13 16:06:13 312 1
原创 编译错误<command-line>error: macro names must be identifiers的解决办法
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档。
2023-06-24 16:06:40 2380
原创 RtThread添加context_gcc.S后的GCC编译问题
解决cubemx添加了rtthread后,生成代码后,gcc编译context_gcc.S的问题
2022-11-18 14:47:40 1142 4
原创 vsnprintf不能正确打印浮点数
网上找了资料,目前比较信服的说法是,在嵌入式里面,编译器将浮点打印阉割了,因为它比较占堆栈。只能用如下方式替代了。在stm32上,用vsnprintf打印调试信息,但发现不能将float打印出来,整数打印都是正常的。
2022-09-09 09:49:56 1238
原创 APM32 Freertos中断处理
但cube只要选了freertos后,优先级分组只能选NVIC_PRIORITYGROUP_4,不能改为NVIC_PRIORITYGROUP_3. 但似乎也没啥大影响,只是会对优先级进行截断,比如设置的优先级是5,实际是4,设置为11,实际是10。cube中启动了rtos后,只能设置stm32的优先级分组为NVIC_PRIORITYGROUP_4,而实际APM32的优先级分组为NVIC_PRIORITYGROUP_3,所以导致很多configASSERT检查失败,跳到了死循环里。
2022-09-03 16:19:46 705
原创 stm32 can初始化引脚
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、问题二、原因解决办法一、问题STM32的控制板(上面只有一个cpu最小系统),发现如果单独供电,程序经常不能正常启动;如果和系统连接起来,就是控制板插在卡槽里和外围板连起来后,就能正常启动。最开始怀疑是boot引脚的问题,后来排查后发现不是这个原因。最后问题定位在CAN的RX引脚悬空上。二、原因根本原因是: CAN_RX引脚悬空,导致CAN初始化失败。(1) CAN硬件初始化,要求在RX引脚连续监测到11个隐.
2022-04-17 17:05:50 3312 2
原创 [读论文] Electric Drive Technology Trends, Challenges, and Opportunities for Future Electric Vehicles
文章目录1. 论文信息2. Introduction2.1. 驱动系统的目标2.2 控制器的设计趋势2.3 电机设计趋势3. 控制器3.1 功率器件3.2 器件封装3.3 直流电容3.4 分段控制器,降低电容体积3.5 控制器优化设计3.5.1 换流回路电感最小化3.5.2 EMI4 电机4.1 先进材料4.1.1 铜绕组材料4.1.2 磁钢4.1.3 硅钢片4.2 无重稀土设计4.2.1 Halbach结构的外转子电机4.2.2 无槽Halbach带嵌入冷却的永磁电机4.2.3 磁钢分段电机4.3 宽禁带
2022-03-31 17:41:26 844 1
原创 CAN传输大小端模式的直观记忆
什么是大小端,网上文章汗牛充栋,不再赘述。具体到CAN传输,总觉得大端模式有点反人类,不易于理解。秉着只有深刻理解才能记住的原则,将大小端进行图形化。小端模式,就是数据的低位部分填充到低字节,高位部分填充到高字节。数据填充方向是按下图的箭头,先填充数据的低位。大端模式,就是数据的高位部分填充到低字节,低位部分填充到高字节。数据填充方向是按下图的箭头,先填充数据的高位。举个栗子,要填充两个12bit的数据至byte0, byte1, byte2,其值分别为0x123, 0x456, 具体的填充结果
2022-03-27 11:02:51 3427
原创 QLayout: Attempting to add QLayout ““ to MainWindow ““, which already has a layout
文章目录一、问题二、解决办法一、问题qt运行时,会报如下提示:QLayout: Attempting to add QLayout “” to MainWindow “”, which already has a layout研究了下面这篇文章的方法,发现自己就是这样做的,还是会报如上错。参考连接:QLayout: Attempting to add QLayout “” to MainWindow “”, which already has a layout二、解决办法创建layout
2022-03-23 18:46:35 3035
原创 QT实现表格View空白区域不响应ContextMenuRequested
文章目录一、问题描述二、解决办法一、问题描述设计初衷是,表格的某一项右键选中后,弹出菜单。但是在空白非有效区域点击右键后,系统会认为上次的选择仍然有效,仍会弹出右键菜单,如上图所示。二、解决办法调用*[override virtual] QModelIndex QTreeView::indexAt(const QPoint &point) const*函数,判断点击处是否有index存在。> void TableView::onCustomContextMenuRequeste
2022-03-21 20:18:47 624
原创 Qt出错信息undefined reference to vtable for classname
在QT里定义了一个新类,编译后出现如下错误。“undefined reference to `vtable for classname”网上找了一圈,适合我的办法是: clean all,然后重新编译,问题解决。仅供参考。
2022-03-19 08:00:27 370
原创 硅钢片知识点
文章目录一、电工钢为什么选硅钢二、为什么要用硅钢“片”三、为什么电机用无取向,变压器用有取向硅钢片四、其他关于硅钢片应该了解的4.1 热轧和冷轧4.2 厚度4.3 牌号4.4 叠片系数4.5 冲片性一、电工钢为什么选硅钢电机和变压器的内部主要组成是铜绕组,绕组通以电流,会产生磁场。空气的磁导率很低,导磁回路导磁回路采用一些高导磁材料作为电机定转子和变压器的铁芯。电工钢的需求需要背景硅钢特性磁导率高绕组流过相同的电流产生的磁场相对H,能产生更多的磁感应强度B相对磁导率高达70
2022-02-26 14:59:07 10338
原创 美国能源部电动汽车电控2025计划
文章目录1. 论文信息2. 指标2.1. 驱动系统指标2.2. 电控指标2.3 电机指标2.4 DCDC指标2.5 OBC指标3. 主要问题和方向3.1 电控3.2 电机1. 论文信息论文名VehiclesElectrical and Electronics Technical Team Roadmap作者Electrical and Electronics Tech Team单位USDRIVE(有点类似美国行业标准委员会)期刊时间2017DOID
2022-02-18 09:41:06 4468
原创 旋变监控中的采样混叠问题
项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述:提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override public void run() { bytes = mmInStream.read(buffer); mHandler.obta
2022-02-16 11:25:08 1217
原创 ui(new Ui::MainWindow) 解惑
文章目录一、问题描述二、使用步骤1.引入库2.读入数据总结一、问题描述QT生成一个简单的MainWindow工程后,mainwindows.cpp中,实现了MainWindow的构造函数,见如下代码。MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)冒号后面的两行代码,是C++的列表初始化。其中QMainWindow(parent) 是调用示例:pandas
2022-02-14 17:12:16 8933 5
原创 git中分别使用https和ssh登陆gitlab
git中分别使用https和ssh登陆gitlab1. https2. ssh2.1 生成密钥对2.2 gitlab添加公钥2.3 本地命令行操作2.4 TortoiseGitgitlab中,建立好库后,需要克隆到本地。通常提供两种加密协议:ssh和https。1. httpsgit clone https://gitlab.com/tes1473/Test.git中间会提示你输入用户名和密码。用户名是你的username, 不是fullname。输入正确一次后,windows会记录下你用户名
2022-02-02 22:54:57 1426
原创 __builtin_memset的-Warray-bounds 警告
一、做了啥?// 定义了一个结构体typedef struct _A{ UINT32 a1; UINT32 a2;} A;// 声明了一个结构体变量A a_temp;// 初始化a_tempfor (i = 0; i < sizeof(A)/sizeof(UINT32); i++){ *(&(a_temp.a1)+ i) = 0;}2.出现了什么现象用o2编译,没有任何问题。用o3编译,报-Warray-bounds 警告,警告内容如下:
2021-12-07 09:18:28 1087
原创 调用Powergui FFT Analysis Tool进行FFT分析
simulink里,添加了powergui后,可以在里面找到 Powergui FFT Analysis Tool, 分析scope存下的波形里面的谐波,非常方便。但是如果数据不是simulink仿真的输出数据,怎么方便调用该工具?用现有数据构建数据结构体fftdatalen = length(x); % x为待分析的数据, [1 * n] ,离散采样周期为Tsfftdata.time=[1:len]’ * Ts; % 构建采样时间点,[n * 1] , 离散采样周期为Tsfftdata.
2021-12-06 13:26:56 4330
原创 simulink enable嵌套问题
一、什么是嵌套假设一个subsystem A1, 其内部还有一个subsystem a1.A1 内部有一个enable模块,“States when execution is resumed:”设置为 reset。 也即disable时,内部所有状态复位。a1 内部也有一个enable模块,“States when execution is resumed:”设置为 held。 也即disable时,内部所有状态保持。那么,当A1 disable时,a1的内部状态到底时复位,还是保持呢?直觉:a
2021-12-06 09:34:17 1785
原创 STM32 连不上JTAG的调试
现象描述画了一块STM32F4的板子,回来后自己手工焊的。上电后连不上SWJ,提示STM32 (connect): Can not attach to CPU. Trying connect under reset.换成JTAG连接,提示Could not measure total IR len. TDO is constant high.问题排除JTAG连接其他电路板正常,说明JTAG配置没有问题。又焊了一块电路板,问题依旧,说明是芯片损坏的概率较小。示波器抓TDO引脚的波形,一直
2021-11-19 14:48:15 3227 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人