- 博客(117)
- 收藏
- 关注
原创 四、J-Flash烧录程序
参考https://mp.csdn.net/mp_blog/creation/editor/155531167安装JLink驱动STM32F407 用的是 Cortex-M4 内核,ARM 规定 M 系列 只能是小端(Little-Endian),芯片厂家也没得选。可以以不同芯片类型的不同用途进行分类,之后只需打开相对应的.jflash文件,更换对应.hex文件,即可对程序进行更新烧录。烧录后,按板卡复位按钮,即可运行相应下位机程序。
2025-12-06 07:30:00
278
1
原创 二、Visual Studio Code 2025 最后一行如何自动补换行符?
/ 可选:别把用户手动留的空行清掉。// 保存时自动在文件末尾加换行。
2025-12-05 07:00:00
304
原创 Altium Designer导出BOM时,如何自动分开top和bottom?
Altium Designer导出BOM时,如何自动分开top和bottom?
2025-10-14 15:26:18
537
原创 二、Windows系统 禁止 指定应用 联网
本文介绍了通过Windows防火墙阻止软件后台联网的方法。具体步骤包括:1)启用防火墙;2)创建出站规则;3)选择目标程序路径(可通过右键属性查看);4)设置为阻止连接并命名规则。该方法能有效防止软件自动联网导致的信息泄露或功能异常,操作时需注意准确获取程序安装路径。整个过程约14个步骤,通过防火墙高级设置实现网络访问控制。
2025-07-02 11:52:12
632
原创 一、Windows安全中心 添加 病毒和威胁防护 排除项
摘要:针对Windows系统误报软件文件为病毒导致安装失败的问题,可通过添加排除项解决。具体步骤为:进入Windows安全中心→病毒和威胁防护→管理设置→排除项,将软件安装包和安装目录文件夹添加为信任位置。建议将所有安装包集中存放于同一文件夹后统一添加排除项,方便后续管理。该方法能有效避免系统误删关键文件导致的安装问题。(142字)
2025-07-02 10:00:58
1170
原创 一、Singal Tap 观察reg信号和wire信号
编写完.v程序代码,全编译后,会将一些变量优化掉,导致调用Singal Tap时一些变量无法获取到,从而无法观察其运行程序代码时的变化情况。下面介绍几种方法,来解决该问题。
2025-05-20 21:24:04
385
原创 三十八、指针笔试面试题讲解(2)
a == &a[0]a[0]表示第一行第一个元素的地址,&a[0]表示第一行数组的地址。sizeofa 48 数组总大小:3 × 4 × 4 = 48a[0][0] 4 第一个元素的大小a[0] 16 第一行数组的大小:4 × 4 = 16,a[0]是第一行数组的数组名。
2024-12-24 02:00:00
591
原创 三十七、指针笔试面试题讲解(1)
sizeofarr 7 整个数组的大小arr + 0 4/8 第一个元素的地址大小*arr 1 第一个元素的大小arr[1] 1 第二个元素的大小。
2024-12-24 01:00:00
820
原创 三十六、指针详解(8)
]的优先级高于&sizeofa 16 数组总大小a + 0 4 / 8 首元素的地址大小*a 4 首元素的大小a + 1 4 / 8 第二个元素的地址大小a[1] 4 第二个元素的大小。
2024-12-23 02:00:00
1003
原创 三十五、指针详解(7)
/cmp是不同方法的比较函数,e1和e2是接收要比较的两个元素的地址。void* base, //目标数组的起始位置。size_t width, //每个元素的大小。size_t num, //数组的大小。1.qsort函数本身。(2)float型数据。(3)结构体字符型数据。(4)结构体整型数据。
2024-12-23 01:00:00
438
原创 三十四、指针详解(6)
/cmp是不同方法的比较函数,e1和e2是接收要比较的两个元素的地址。void* base, //目标数组的起始位置。size_t width, //每个元素的大小。size_t num, //数组的大小。void*指针,(无 / 空)指针(泛型指针类型),接收任意类型的地址。void*指针类型不能进行+ / -整数的操作。//这也是错误写法,
2024-12-22 02:00:00
809
原创 三十三、指针详解(5)
1.写一个函数指针pf,指向my_strcpy2.写一个函数指针数组pfArr,能够存放4个my_strcpy函数的地址。
2024-12-22 01:00:00
322
原创 三十二、指针详解(4)
(1)void(*) ():函数指针把0强制类型转换成一个函数指针类型,该函数无参,且返回类型为void,再以0为该函数的地址,对其解引用调用该函数。(2)signal(int, void(*)(int)):函数(int, 函数指针)把这个函数当作一个函数指针函数指针的指针是个函数,该函数有一个int类型和一个函数指针类型的参数。typedef对void(*)(int)函数指针类型重定义signal是一个函数声明;
2024-12-21 02:00:00
262
原创 三十一、指针详解(3)
例:一维数组传参:传参:test(arr1);指针数组传参:传参:test(arr2);int**:二级指针arr2是一个int*类型的指针,用int**接收。二维数组传参(首元素是第一行的数组的地址):传参:test(arr3);
2024-12-21 01:00:00
789
原创 三十、指针详解(2)
/parr3是一个指针数组,该数组有十个元素,每个元素是一个数组指针,该数组指针指向的数组有五个元素,每个元素类型是int。//parr2是一个数组指针,指向的数组存放十个整型数组的地址。//pa是数组地址,*pa是数组首地址。int(*p)[5] 数组指针 (*p) -> int[5]//arr是有五个整型元素的数组(整型数组)int* p [5] 指针数组 [5] -> int*parr3数组 类型:int(*[10])[5]
2024-12-20 02:00:00
360
原创 二十九、指针详解(1)
首地址以字符形式输出,可输出整个字符串。p存放a的地址,const修饰后,字符串的内容不允许被修改。const修饰*p,*p指向的内容不能被修改。
2024-12-20 01:00:00
575
原创 二十八、数据的存储(4)
E = 1 - 127 / 1 - 1023,得到真实值,有效数字M不再加上第一位的1,而是还原为0.XXX的小数,这是为了表示。M:可写成1.XXX的形式,XXX表示小数部分,因为总有一个1,所以省略,读取的时候,再补上去,提高了精度。规定,存放进内存的E,E的真实值必须再加上一个中间值 = 计算值(存储值),为了避免负数。E = E - 127 / -1023,得到真实值,再将有效数字M前加上第一位的1.表示符号位,S = 0,表示正,S = 1,表示负。(1)E不全为0 / 不全为1。
2024-12-19 02:00:00
1070
原创 二十七、数据的存储(3)
9 8 7 6 5 4 3 2 1 0 -1 -2 ...(i是无符号数,当i为负数时,将负数的补码当作原码。表示符号位,S = 0,表示正,S = 1,表示负。M表示有效数字,1 <= M <=2。无符号数的大圈规律,死循环。定义无符号数变量容易死循环。%f输出小数点后6个数。
2024-12-19 01:00:00
588
原创 二十五、数据的存储(1)
(因为CPU只有加法器,使用补码可以将符号位和数值位统一处理。例如:1 - 1可以看作1 + (-1))(1)使用这个类型开辟内存空间的大小(大小决定了使用范围)大端(存储)模式:数据低位存放在高地址,高位存放在低地址。小端(存储)模式:数据低位存放在低地址,高位存放在高地址。原码有符号位和数值位两部分,符号位,0表示正,1表示负。有符号是把最高位当作符号位 singed。(2)如何看待内存空间的视角(在内存中如何进行存储)-> void(无类型)(无参)无符号数,原码 = 反码 = 补码。
2024-12-18 11:09:24
408
原创 二十三、VS实用调试技巧(2)
Debug,调试版本,包含调试信息,并且不作任何优化,便于程序员调试程序;Release,发布版本,进行了各种优化,使程序在代码大小和运行速度上都是最优的,以便用户很好地使用。生成的.c文件会产生一个可执行程序.exeDebug模式下,会产生一个Debug版本的.exe运行结果可能不同Release模式下,会产生一个Release版本的.exeWindows环境调试介绍:F5 启动调试F9 断点直接跳到下一个断点处(执行逻辑的下一个断点处)
2024-12-14 01:00:00
461
空空如也
qsys系统构建lan91c111
2025-02-17
nios ii调试、使用lan91c111芯片
2025-02-12
generic tri state controller IP核心
2025-02-12
lan91c111的nios ii开发
2025-02-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅