自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ArthurBruin‘s Blogs

没有征服不了的技术!

  • 博客(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

原创 算法 - 二分查找算法

详细地址:详解二分查找算法

2020-11-18 17:44:46 161

原创 算法 - KMP

详细文章参照:KMP算法—终于全部弄懂了

2020-11-18 17:40:45 167

转载 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-&amp;utm_source=tuicool&amp;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

emwin GUIBuilder v5.36 最新版 图形界面设计

emwin,STemwin,GUIBuilder v5.36最新版, 图形界面设计

2018-02-05

IAR Embedded WorkbenchFor ARM 7.20注册工具(附破解流程)

IAR Embedded Workbench For ARM 7.20 注册工具(附破解流程)经过验证 IAR Embedded Workbench For ARM 7.20.2可用

2014-08-29

51单片机实现PID控制算法源程序

8051单片机 PID控制算法 源程序

2011-04-04

SecureCRT-V6.58H win7能用 telnet远程服务器调试

SecureCRT-v6.58H telnet远程服务器调试工具 服务器开发

2010-10-31

Source Insight3.5 + 注册码 破解 我一直在用 win7、XP能用

Source Insight3.5 注册码 win7能用 绝对对得起你的资源分 一直在用的 破解30、40年不等 看你运气了

2010-10-31

深圳明芯TC9012中文资料

深圳 明芯 红外遥控 编码TC9012 中文资料

2010-09-22

IAR for MSP430 V4.21.2注册机 IAR Embedded Workbench IAR 公司最新版本 淘宝网上淘的

IAR Embedded Workbench IAR for MSP430 V4.21.2注册机

2010-04-20

无线 通信 技术 11b

无线 通信 技术 11b 无线 通信 技术 11b ..........

2009-11-08

复变 函数 工程数学

复变 函数 答案 工程数学希望对大家有用!。。。。。。

2009-11-08

TLC5615 0-1023数字量转换

TLC5615 0-1023数字量转换 TLC5615 0-1023数字量转换

2009-10-21

tlc5615数模转换子模块

数模转换子模块,希望对需要这方面资源的朋友以帮助。。。。。

2009-10-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除