- 博客(35)
- 资源 (15)
- 收藏
- 关注
原创 #、##、__VA_ARGS__和##__VA_ARGS__
一、#用来把参数转换成字符串eg1:#define P(A) printf("%s:%d\n",#A,A);int main(int argc, char **argv){ int a = 1, b = 2;P(a);P(b);P(a+b);system("pause");}输出为:eg2:#define SQUARE(x) printf("The square of "#x" is %d.\n", ((x)*(x)));S...
2021-01-13 14:48:26
259
转载 C++ sort排序函数详解
转载至AlvinZH博客作者Github地址1.sort使用:#include <algorithm> using namespace std;作用:排序时间复杂度:n*lg(n)实现原理:sort并不是简单的快速排序,它对普通的快速排序进行了优化,此外,它还结合了插入排序和推排序。系统会根据你的数据形式和数据量自动选择合适的排序方法,这并不是说它每次排序只选择一种方法,它是在一次完整排序中不同的情况选用不同方法,比如给一个数据量较大的数组排序,开始采用快速排.
2020-11-18 17:25:51
635
原创 两个vector向量连接
C++中将两个vector相连#include <iostream>#include <vector>int main(int argc, char **argv) { int arr[6] = {1,2,3,4,5,6}; std::vector<int> v1(&arr[0],&arr[3]); std::vector<int> v2(&arr[3],&arr[5]); std::
2020-11-18 17:18:00
1938
原创 W5500 KeepAlive功能调试经验
1. 问题 W5500在实际项目应用时遇到Client可能会异常中断和板卡的连接。软件程序控制断开连接,实际上由于种种原因未断开,使得板卡进入某种临界状态,且无法恢复。根本原因是驱动库的接收函数为阻塞型,在没有报文接收时会阻塞在该函数内部,当外部Client进行某种异常断开后,Socket的状态得不到及时更新,认为当前依然在established状态,依旧阻塞。而Client恢复后无法再次连接该端口,造成死锁。2. 解决解决办法是在程序内增加keepalive帧,异常阻塞超过一定时...
2020-07-04 17:40:40
3070
原创 IAR Fatal error
一、错误描述:打开IAR工程或者编译后弹出如下错误Fatal error while generating source browse infomation.See the Source Browse Log window for more infomation同时查看IAR Source Browser Log,显示Failed to parse input files的问题二、错误现象:工程各个源文件之间没关联,函数,变量,声明等无法跳转错误分析:这是由于工程各个源文件之间无法关
2020-05-21 10:42:01
9780
3
转载 STM32串口接收不定长数据原理与源程序(RXNE 与 IDLE)
今天说一下STM32单片机的接收不定长度字节数据的方法。由于STM32单片机带IDLE中断,所以利用这个中断,可以接收不定长字节的数据,由于STM32属于ARM单片机,所以这篇文章的方法也适合其他的ARM单片机。IDLE中断什么时候发生?IDLE就是串口收到一帧数据后,发生的中断。什么是一帧数据呢?比如说给单片机一次发来1个字节,或者一次发来8个字节,这些一次发来的数据,就称为一帧数据,也可以叫做...
2020-04-24 15:40:54
1370
转载 高速数字信号线上添加33欧电阻的作用
高速数字信号线上添加33欧电阻的作用一,作用 用来做阻抗匹配,防止信号反射的。一般PCB走线控制为50欧姆,在这样接收端高阻的情况时,可以通过源端串联50欧姆来做匹配,将终端反射回来的信号吸收,防止在源端再次发生发射。这边33欧,和信号驱动的内阻(大约20欧)串联成50欧,与PCB走线匹配。所以这个电阻在PCB上的位置要和信号驱动端靠近。二,如何使用要不要做匹配就取决于信号的速度...
2020-02-28 11:06:35
8503
1
原创 astyle --help
系统命令行运行:C:\Users\admin>astyle --help Artistic Style 3.1 Maintained by: Jim Pattee Original Author: Tal DavidsonUsage:------ ...
2020-01-16 15:16:47
248
原创 Artistic Style详解
Astyle 全称为 Artistic Style,官方网站是http://astyle.sourceforge.net Astyle 是一个命令行程序,简单的使用方法是直接使用Astyle加上你要格式化的程序的源文件,Astyle支持不同的代码风格,也有不同的参数来设置自己想要的效果,astyle是一个命令行工具。关于学习最好的方法还是官方文档:http://astyle...
2020-01-16 15:07:46
681
原创 Astyle选项
Astyle 全称为 Artistic Style,官方网站是http://astyle.sourceforge.net Astyle 是一个命令行程序,简单的使用方法是直接使用Astyle加上你要格式化的程序的源文件,Astyle支持不同的代码风格,也有不同的参数来设置自己想要的效果,astyle是一个命令行工具。 命令语法:astyle [options] ...
2020-01-16 14:50:52
637
转载 RT-Thread 自动初始化机制
自动初始化机制是指初始化函数不需要被显式调用,只需要在函数定义处通过宏定义的方式进行申明,就会在系统启动过程中被执行。例如在串口驱动中调用一个宏定义告知系统初始化需要调用的函数,代码如下:int rt_hw_usart_init(void) /* 串口初始化函数 */{ ... ... /* 注册串口 1 设备 */ rt_hw_serial_regis...
2019-12-25 10:57:42
516
转载 使用__attribute__((section(“name”)))构建初始化函数表
需要做三件事:使用__attribute__((section()))定义了宏:DECLARE_INIT,此宏把函数放置到初始化函数表 使用DELCARE_INIT的宏,声明了3个模块初始化函数:A_init/B_init/C_init 在main中通过调用do_initcalls函数,依次调用编译时构建的初始化函数。其中,“_init_start”和“_init_end”的变量在链...
2019-12-24 16:08:52
696
转载 __attribute__编译属性section子项构建初始化函数表
gcc的__attribute__编译属性有很多子项,用于改变作用对象的特性。这里讨论section子项的作用。__attribute__的section子项使用方式为:__attribute__((section("section_name")))其作用是将作用的函数或数据放入指定名为"section_name"的段。看以下程序片段:#include <unistd...
2019-12-24 14:55:08
172
转载 熟悉RT-Thread的软硬件环境【RT-Thread学习笔记 1】
软件环境:Win7+MDK4.7.2硬件环境:STM32F4Discovery所用OS代码:RT-Thread2.0.0 beta 下载地址:https://github.com/RT-Thread/rt-thread/archive/v2.0.0_beta.zip 解压缩后,使用\rt-thread-2.0.0_beta\bsp\stm32f40x\...
2019-12-18 15:09:08
128
转载 使用STM32F4的CCM内存
我们知道STM32F4当中有个CCM内存,如图所示,这个内存是挂在D总线上直接和内核相连,因此除了内核之外谁都不能访问,那么我们怎么将其利用起来呢?网上这个资料还真的很少,今天我就给大家分享一下,献给那些还不知道的人,如有错漏,还请指正。首先,我们可以使用Keil的设置选项,将IRAM2打勾,让编译器选择什么时候使用这个内存。显然,我们还可以将这两个地址修改一下,将IRAM1改为0x100000...
2019-12-18 14:04:01
384
原创 RT-Thread内存管理移植问题
在做STM32F407VE系列的BSP,但出现一个问题:1.本芯片的SRAM大小为192KB;2.按照移植手册上把SRAM大小写为192KB时,堆初始化时rt_system_heap_init,始终报硬件错误;3.把SRAM改为128KB之后就正常了;按照手册进行移植的,难道堆不能全部使用完系统剩余内存?还是有其他原因?问题解决思路:STM32F407VE系列内存是不连续的...
2019-12-18 10:53:54
688
转载 RO段、RW段和ZI段 --Image$$??$$Limit 含义(zz)
IMPORT |Image$$RO$$Limit| IMPORT |Image$$RW$$Base| IMPORT |Image$$ZI$$Base| IMPORT |Image$$ZI$$Limit| IMPORT |Image$$RW$$Limit|从ADS1.2的帮助文档可以看出以下几个symbol的定义应该是:|Image$$...
2019-12-12 13:57:09
409
转载 Image$$RO$$Base
这篇文章是从网上摘录的,觉得蛮有用的,所以保存下来IMPORT |Image$$RO$$Base| ; Base of ROM codeIMPORT |Image$$RO$$Limit| ; End of ROM code (=start of ROM data)IMPORT |Image$$RW$$Base| ; Base of RAM to initialiseIMPORT...
2019-12-12 13:54:15
240
转载 Keil MDK中“Image$$RW_IRAM1$$ZI$$Limit”
ARM程序的组成 此处所说的“ARM程序”是指在ARM系统中正在执行的程序,而非保存在ROM中的bin映像(image)文件,这一点清注意区别。 一个ARM程序包含3部分:RO,RW和ZIRO是程序中的指令和常量RW是程序中已初始化变量ZI是程序中未初始化或初始化为0的变...
2019-12-12 13:49:52
4138
原创 vscode添加 Artistic Style(AStyle)
1. PC端安装Artistic Style软件1.1 软件下载官网地址:http://astyle.sourceforge.net/选择Download项,得到安装文件(免安装):解压拷贝到安装路径下得到:其中AStyle.exe是可执行文件,但是不能直接执行,其是命令行模式,因此需要配合其他软件才能执行记录下文件路径:D:\01_eda_install\AStyl...
2019-12-10 17:28:55
2560
原创 C++中struct与class的区别
C++中struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能struct能包含成员函数吗? 能!struct能继承吗? 能!!struct能实现多态吗? 能!!!既然这些它都能实现,那它和class还能有什么区别?最本质的一个区别就是默认的访问控制,体现在两个方面:默认的继承访问权限:struct是public的,cl...
2019-07-23 20:34:09
86
转载 BufferedReader类 与 InputStreamReader 类
转载至:https://blog.csdn.net/sinat_33749961/article/details/58088209BufferedReader类 BufferedReader由Reader类扩展而来,提供通用的缓冲方式文本读取,而且提供了很实用的readLine,读取一个文本行,从字符输入流中读取文本,缓冲各个字符,从而提供字符、数组和行的高效读取。一般用法:Buffered...
2018-03-30 11:27:08
1047
转载 Java 包(package)
转载至:http://www.runoob.com/java/java-package.htmlJava 包(package) 为了更好地组织类,Java 提供了包机制,用于区别类名的命名空间。包的作用 1、把功能相似或相关的类或接口组织在同一个包中,方便类的查找和使用。 2、如同文件夹一样,包也采用了树形目录的存储方式。同一个包中的类名字是不同的,不同的包中的类的名字是可以相同...
2018-03-30 10:44:15
108
转载 Java关键字(package、import)
转载至:https://blog.csdn.net/qq_25665807/article/details/74747868 import与package机制相关,这里先从package入手,再讲述import以及static import的作用。package C/C++ 的 #include会把所包含的内容在编译时添加到程序文件中,而java的impor...
2018-03-30 10:07:24
316
原创 从控制台读取数据
从控制台读取数据//p94package lesson4; (0)import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader; //(1)public class lesson4 {public static void main(String[] args) th...
2018-03-29 09:05:53
351
原创 do{}while(0)的意义和用法
linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复杂的宏,避免引用的时候出错举例来说,假设你需要定义这样一个宏:#define DO...
2018-03-29 08:51:58
250
原创 Java SE Development Kit(JDK)安装与环境变量配置(win7)
Selenium、Appium、Macaca、RobotFramework、Jmeter等框架或工具均必须的一样东西——JDK,也就是基于java开发的东西都要这个东西。具体概念什么的,自己上网搜去。对于一些比较初级的测试/开发人员,不要去搜索JAVA,要搜JDK!如果只搜索java,你还要再下载jre!是在Oracle官网下载,不是Java官网!官网直达:http://www.oracl...
2018-03-27 10:33:54
6046
1
转载 Android学习路线
转载至:http://www.cnblogs.com/zhuawang/p/3672228.html第一阶段:Java面向对象编程1.Java基本数据类型与表达式,分支循环。 2.String和StringBuffer的使用、正则表达式。 3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收;构造函数、this关键字、方法和方法的参数传递过程、static关键字、内部类,Java的垃极...
2018-03-20 13:57:59
147
转载 初识 MQTT - 为什么 MQTT 是最适合物联网的网络协议
转载至:https://www.ibm.com/developerworks/cn/iot/iot-mqtt-why-good-for-iot/index.html?ca=drs-&utm_source=tuicool&utm_medium=referral物联网 (IoT) 设备必须连接互联网。通过连接到互联网,设备就能相互协作,以及与后端服务协同工作。互联网的基础网络协议是 ...
2018-03-20 09:37:59
1877
转载 __attribute__ ((aligned (n), packed))
转载至:http://blog.csdn.net/wshini7316/article/details/8537572GNU C扩展的__attribute__ 机制被用来设置函数、变量、类型的属性,其用得较多的是处理字节对齐的问题。__attribute__ 的语法为:__attribute__ ((语法列表))参数aligned(number) [number为最小对齐的字
2013-12-29 14:34:22
901
转载 do{}while(0)的意义和用法
转载至:http://www.spongeliu.com/415.htmllinux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:
2013-12-29 13:18:51
582
转载 关于ucos中os_tmr.c中的代码分析
我本身也是个初学者,喜欢嵌入式而自学ucos系统,ucos是个开源的代码,短小而又简单,这是我学习的笔记,希望能对喜欢ucos的人有一点帮助,因本人也是初学者,如有错误迎指点。一般的书多是2.5版本,没有os_tmr.c,所以我写了关于这部分代码的分析。我读ucos.中的os_tmr.c: 我想这个文件里就是为了写一个建立在操作系统的定时器,原来我们学的时钟节拍就像cpu总线
2012-03-29 16:17:28
2055
1
转载 自定义通信协议(实用)
自定义通信协议(实用)现在大部分的仪器设备都要求能过通过上位机软件来操作,这样方便调试,利于操作。其中就涉及到通信的过程。在实际制作的几个设备中,笔者总结出了通信程序的通用写法,包括上位机端和下位机端等。1.自定义数据通信协议 这里所说的数据协议是建立在物理层之上的通信数据包格式。所谓通信的物理层就是指我们通常所用到的RS232、RS485、红外、光纤、无线等等通信方式。在这个层面上
2012-03-08 17:33:56
5602
3
IAR Embedded WorkbenchFor ARM 7.20注册工具(附破解流程)
2014-08-29
Source Insight3.5 + 注册码 破解 我一直在用 win7、XP能用
2010-10-31
IAR for MSP430 V4.21.2注册机 IAR Embedded Workbench IAR 公司最新版本 淘宝网上淘的
2010-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人