自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 资源 (5)
  • 收藏
  • 关注

原创 串口测试

1.拿到一个usb转TTL线或DB9线,让其收发对接以测试串口线是否能用2.若只用另个公头的DB9串口也可以实现通信:用杜邦线 2号脚接2号脚、3接3、5接5即可

2016-11-17 21:01:26 529

转载 Kinetis SDK学习笔记1——快速新建一个KSDK工程

注意:所用的库要放在KSDK_1.3.0的文件夹里KSDK_1.3.0库下载网址:http://www.nxp.com/zh-Hans/products/software-and-tools/run-time-software/kinetis-software-and-tools/development-platforms-with-mbed/software-developmen

2016-08-22 14:38:04 4625

转载 字节对齐 #pragma pack(n)

体系结构的对齐和不对齐,是在时间和空间上的一个权衡。对齐其中一个重要的原因是为了提升cpu的访问速度,节省了时间。对于char型数据,其自身对齐值为1,对于short型为2,对于int,float类型,其自身对齐值为4,对于double型,其自身对齐值为8,单位字节。一、更改C编译器的缺省字节对齐方式在缺省情况下,C编译器为每一个变量或是数据单元按其自然对界条件分配空间。一

2016-07-22 10:15:31 352

转载 有符号数和无符号数负数

理解有符号数和无符号数负数在计算机中如何表示呢? 这一点,你可能听过两种不同的回答。 一种是教科书,它会告诉你:计算机用“补码”表示负数。可是有关“补码”的概念一说就得一节课,这一些我们需要在第6章中用一章的篇幅讲2进制的一切。再者,用“补码”表示负数,其实一种公式,公式的作用在于告诉你,想得问题的答案,应该如何计算。却并没有告诉你为什么用这个公式就可以和答案? 另一种是一

2016-07-12 11:19:51 584

转载 extern作用详解

extern 作用1:声明外部变量现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量是互相透明的,也就是说,在编译时,全局变量的可见域限制在文件内部。例1:创建一个工程,里面含有A.cpp和B.cpp两个简单的C++源文件://A.cpp:int iRI;int main(){//.....}//B.cppint iR

2016-07-04 17:17:28 313

转载 C/c++几个预定义的宏:__DATE__,__TIME__,__FILE__,__LINE__

一边情况下,C/C++编译器会内置几个宏,这些宏定义不仅可以帮助我们完成跨平台的源码编写,灵活使用也可以巧妙地帮我们输出非常有用的调试信息。ANSI C标准中有几个标准预定义宏(也是常用的):__LINE__:在源代码中插入当前源代码行号;__FILE__:在源文件中插入当前源文件名;__DATE__:在源文件中插入当前的编译日期__TIME__:在源文件中插入当前编译时间;__S

2016-06-16 20:07:10 359

转载 ADC 分辨率和精度的区别

最近做了一块板子,当然考虑到元器件的选型了,由于指标中要求精度比较高,所以对于AD的选型很慎重。很多人对于精度和分辨率的概念不清楚,这里我做一下总结,希望大家不要混淆。我们搞电子开发的,经常跟“精度”与“分辨率”打交道,这个问题不是三言两语能搞得清楚的,在这里只作抛砖引玉了。简单点说,“精度”是用来描述物理量的准确程度的,而“分辨率”是用来描述刻度划分的。从定义上看

2016-06-12 14:10:01 1299

转载 GPRS-PDP上下文的激活过程

GPRS无线数据传输终端利用网络实现与上位机的全双工数据通信。终端需附着GPRS网络,登陆Internet与连接其上的任意一台普通PC机建立数据链路并随时进行数据传输。欲完成这一过程必须实现GPRS的附着和PDP(PacketDataProtoco1,分组数据协议)上下文的激活。通过GPRS的附着登记用户信息,对用户进行移动性管理,激活过程用于激活IP协议,保证数据能以IP报的形式进行传送,使移动

2016-05-23 14:38:57 5850

转载 拨号上网与宽带上网有什么区别?

宽带上网与拨号上网是有区别的,我们可以从如下几个方面来进行了解。      常见的上网方式有如下几种:      (1)使用MODEM拨号上网       (2)使用ADSL宽带拨号上网       (3)使用网线接入局域网       (4)使用无限网卡接入无线网络       (5)使用手机上网包括以手机作为MODEM拨号上网和以手机进行GPRS上网,还有手机直

2016-05-21 17:19:19 14373

转载 关于Blocking IO, Non-Blocking IO 和 Asynchronous I/O的理解

概括来说,一个IO操作可以分为两个部分:发出请求、结果完成。如果从发出请求到结果返回,一直Block,那就是Blocking IO;如果发出请求就可以返回(结果完成不考虑),就是non-blocking IO;如果发出请求就返回,结果返回是Block在select或者poll上的,则其只能称为IO multiplexing;如果发出请求就返回,结果返回通过Call Back的方式被处理,就是AIO

2016-05-11 16:36:20 387

转载 k60 介绍

学习K60 就像玩游戏 一样,教程 就是 攻城策略,先有 良好的 基础,再来 攻破 K60 ……例如 k60 的 PORT 管脚管理模块 ,他就好比城门兵,管理端口的 复用和配置属性。GPIO 就 好比 步兵那样,简单易用,可模拟时序,如同 步兵可以学习 特殊技能来升级为 其他特殊兵种。UART串口通信模块 、I2C通信模块,SPI通信模块,就是 按照特点的时序

2016-04-22 14:30:35 1937 1

原创 SecureCRT 绝佳配色方案, 保护你的眼睛

1.设置背景颜色Options => Sessions options => Terminal => Emulation,在 Terminal下拉列表下选择Linux,勾选 ANSI Color 和user color scheme2.默认的 ANSI Color 的背景颜色是黑色,感觉看久了很不舒服,可以修改背景颜色。options -> gl

2016-04-21 17:39:11 615

转载 详解C中volatile关键字

volatile提醒编译器它后面所定义的变量随时都有可能改变,因此编译后的程序每次需要存储或读取这个变量的时候,都会直接从变量地址中读取数据。如果没有volatile关键字,则编译器可能优化读取和存储,可能暂时使用寄存器中的值,如果这个变量由别的程序更新了的话,将出现不一致的现象。下面举例说明。在DSP开发中,经常需要等待某个事件的触发,所以经常会写出这样的程序:short flag;vo

2016-04-15 11:16:32 200

转载 各进制转换

#include #include #include #include int main() {    int i,v;    char bs[33];    char b[33];    char hs[9];    char h[9];    char s[4];    char *e;// 十进制整数转二进制串;    i=1024

2016-04-08 17:02:37 330

转载 IAR生成文件链接过程解析

IAR生成文件设置最近在搞contiki在IAR上的移植工作,好不容易移植完成了,但是生成的bin文件超出了MCU的Flash大小,MCUFlash为512K,生成的bin文件747K,开始一直认为是系统文件太多导致,后来觉得疑点颇多,所以就研究了一下IAR工程的编译和链接过程,具体过程如下:1. 使用IAR compiler + assembler,对工程的每个".c/.cp

2016-03-30 19:08:38 1591

转载 IAR 中 icf 文件详解

EWARM 5.xx的链接器ILINK及其配置文件.icfEWARM 5.xx中的链接器称为ILINK。ILINK可以从ELF/DWARF格式的目标文件中提取代码和数据,并生成可执行映像。在EWARM 4.xx中,基本的代码和数据链接单元是segment,而对于ELF/DWARF格式而言,基本链接单元是section。ILINK根据ILINK Configuration File(*.icf)

2016-03-30 16:03:22 17509 1

转载 什么是boot loader?

计算机启动的一般过程:BIOS程序执行完自检后将控制权交给硬盘的MBR,MBR一般会查找激活状态的主分区,做些引导条件判断,然后把控件权交给活动分区的引导扇区内的引导代码或引导程序,如NTLDR、BOOTLOADER等。 BIOS存放在计算机系统的主板上的EEPROM中,当打开计算机或者重启计算机时,BIOS获得系统的控制权。在测试硬件之后,BIOS将控制权交给MBR(通常会将控制权交给分

2016-03-30 15:20:04 6188

转载 什么是引导加载程序?(转)

最简单地讲,引导加载程序(boot loader) 会引导操作系统。当机器引导它的操作系统时,BIOS 会读取引导介质上最前面的 512 字节(即人们所知的 主引导记录(master boot record,MBR))。在单一的 MBR 中只能存储一个操作系统的引导记录,所以当需要多个操作系统时就会出现问题。所以需要更灵活的引导加载程序。    主引导记录本身要包含两类内容 —— 部分(或

2016-03-30 14:56:50 3893 1

转载 socket 与TCP/UDP编程

Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。   Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的Socket数据传输是一种特殊的I/O,Soc

2016-03-29 15:21:16 195

转载 typedef和#define的区别及用法

typedef和#define的用法与区别typedef和#define的用法与区别一、typedef的用法在C/C++语言中,typedef常用来定义一个标识符及关键字的别名,它是语言编译过程的一部分,但它并不实际分配内存空间,实例像:typedef    int       INT;typedef    int       ARRAY[10];typedef

2016-03-29 12:18:38 279

转载 C语言typedef的用法

C语言typedef的用法一.基本概念剖析int* (*a[5])(int, char*);       //#1 void (*b[10]) (void (*)()); //#2 double(*)() (*pa)[9];          //#31.C语言中函数声明和数组声明。函数声明一般是这样: int fun(int, double); 对

2016-03-27 16:35:39 256

转载 函数指针与指针函数

函数指针与指针函数一 辨别指针函数与函数指针最简单的方式就是看函数名前面的指针*号有没有被括号包含,如果被包含就是函数指针    ,反之则是指针函数。1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针     类型标识符    *函数名(参数表)      int *f(x,y);     首

2016-03-27 16:20:23 219

转载 错误:chmod: changing permissions of ‘/etc/passwd': Read-only file system

给passwd文件加权限,修改/etc/passwd目录下所有的文件夹属性为可写可读可执行,执行以下命令:chomd 777 /etc/passwd的时候提示错误:chmod: changing permissions of ‘/etc/passwd': Read-only file system解决方法:产生这个问题的原因是文件系统此时处于只读

2016-03-08 14:33:51 29345 2

原创 crc32校验48位mac 地址

//【用函数判断系统是Big Endian还是Little Endian】//如果字节序为big-endian,返回true;//反之为   little-endian,返回falsebool IsBig_Endian(){    unsigned short test = 0x1234;    if(*( (unsigned char*) &test ) == 0

2016-01-28 12:40:13 1565

原创 使用mstsc进行远程连接

1.2.3

2016-01-27 20:26:33 398

转载 小程序

打开记事本,把下面的代码给拷贝进去,看情况改字哈``然后保存,最后把txt后缀改为hta,然后就可以运行罗``关闭的话ALT+F4.杨清瑶我爱你sub sub1me.closeend subme.resizeto 500,410 '这里设置窗口大小,单位为像素me.moveto 260,100 '这里设置窗口位置,单位为像素window.settim

2016-01-22 12:35:59 290

转载 深入剖析之通过IAR MAP文件查看目标文件内存分配

http://blog.chinaaet.com/detail/27117.html     又是一年五四青年节,也不知道自己还会像现在意气风发多少个青年节,也不清楚自己对技术的执着还会一如既往的坚持多久,总之既然现在依旧坚定不移的“前进”着(前段日子看到奥巴马的竞争口号就是“前进”,说不定跟俺一个境界来,哈哈),未来不可预知,但可规划和争取,把握好现在,莫要虚度光阴,我们年轻并不代表我们

2016-01-21 14:07:29 544

转载 SecureCRT 多个会话显示在同一窗口

多个会话显示在同一窗口" title="SecureCRT 多个会话显示在同一窗口" style="margin:0px; padding:0px; border:0px; list-style:none">

2016-01-15 14:17:43 17661

转载 哈希算法快速查表的原理

哈希算法快速查表的原理 HashMap、Map等是很多公司面试、笔试的时候常考的题目,也是实际开发中经常用到的数据结构,必须好好掌握。因此我从《J2EE开发全程实录》中摘取了下面的片段,希望对同学们有帮助。学习时请对照着《数据结构》这门课中“散列”相关的章节复习。    在实际问题中,按照给定的值进行数据查询是经常遇到的,比如,在电话号码簿中查询某个人的电话号码;在图书馆中

2016-01-07 19:04:56 311

转载 c/c++里的 堆区 栈区 静态区 文字常量区 程序代码区(二)

一. 在c中分为这几个存储区1.栈 - 由编译器自动分配释放2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放4.另外还有一个专门放常量的地方。- 程序结束释放            

2015-12-28 20:04:26 465

转载 c/c++里的 堆区 栈区 静态区 文字常量区 程序代码区

一个由C/C++编译的程序占用的内存分为以下几个部分  1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。        堆(heap):由malloc,new等分配的空间的地址,地址由低向高增长(程序员释放)。  2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可

2015-12-28 19:57:18 387

转载 mac组播地址和单播地址的判断

组播MAC地址    MAC地址是以太网二层使用的一个48bit(6字节十六进制数)的地址,用来标识设备位置。MAC地址分成两部分,前24位是组织唯一标识符(OUI, Organizationally unique identifier),后24位由厂商自行分配。    MAC地址有单播、组播、广播之分。单播地址(unicast address)表示单一设备、节点,多播

2015-12-28 16:11:52 27958 5

转载 C语言中的位域、字节序、比特序、大小端

C语言中的位域、字节序、比特序、大小端 分类: C/C++1.比特序 / 位序 /  bit numbering / bit endianness我们知道一个字节有8位,也就是8个比特位。从第0位到第7位共8位。比特序就是用来描述比特位在字节中的存放顺序的。通过阅读网页http://en.wikipedia.org/wiki/Bit_numberin

2015-12-28 15:24:34 1056

转载 指针的强制类型转换和动态分配内存

C里面使用自动分配内存,比如说malloc分配自由存取区,就把它当作是在堆上分配的了,他的好处是可分配的内存更大更灵活,理论上可以分配用户空间能使用的所有虚拟内存空间,它是通过链式分配的,比如说有这样的一个语句 :int *p=(int *)malloc(sizeof(int))意思是,先在栈上创建一个int类型的指针变量,再在堆上分配4个字节大小的空间,再把创建的内存首地址赋给p

2015-12-28 11:16:13 1646

转载 UART和RS232、RS485的关系

博客目录:1、UART和RS232、RS485的关系:2、RS232和RS485的区别和引脚介绍3、参考文献                                                                                                     正文如下一、UART和RS23

2015-11-05 11:28:47 861

原创 Ping命令的原理

Ping命令的原理:PINGPing就是指在网络或因特网上发送一系列的数据包到指定的计算机上,以便从该计算机上得到回复。计算机在收到ping发出的数据包后,会回复该计算机。使用Ping的目的就是核实是否网络上或因特网上的某计算机是否存在或连接上。Ping使用的是网络控制信息协议(ICMP)的数据包。从源计算机上发出Ping请求数据包;从目的回应Ping回复数据包。 PING (Pa

2015-10-23 17:42:56 434

原创 总线总结

1、TWI总线(半双工)TWI是一种两线接口,一条双向数据线,一条时钟信号线。在TWCK控制下数据逐位传送,边沿触发,上升沿写数据到从设备,下降沿从从设备中输出数据,当两条线都为高电平时,总线处于空闲状态,普通模式下传输速率100k。相关协议: 空闲状态;起始位;停止位支持7bit/10bit 从设备地址  应用框图 主设备写数据到从设备的过程:(1)   

2015-10-15 19:59:55 936

转载 交换机MAC地址学习和转发数据帧的原理

1:交换机MAC地址学习 在交换机初始化的,也就是刚启动的时候,交换机的MAC地址表是没有任何MAC地址和端口的映射条目的 当PCA要想和PCC,PCB,PCD进行通信时,当该二层数据帧通过端口E1/0/1发送到交换机上时,交换机会将PCA发送的数据帧中的源MAC地址和接受该数据帧的端口建立映射关系,并将该映射关系生成映射条目保存到MAC地址表中。 PCB,PCC,

2015-10-15 17:11:09 12565

转载 计算机网络七层协议模型

一、物理层(Physical Layer)OSI模型的最低层或第一层,规定了激活、维持、关闭通信端点之间的机械特性、电气特性、功能特性以及过程特性,为上层协议提供了一个传输数据的物理媒体。在这一层,协议数据单元为比特(bit)。属于物理层定义的典型规范代表包括:RS-232、RS-449、RS-485、USB2.0、IEEE-1394、xDSL、X.21、V.35、RJ-4

2015-10-15 15:48:35 1240

转载 UART 基础知识

UART (Universal Asynchronous Receiver/Transmitter) 通用异步收发器 UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。作为接口的一部分,UART还提供以下功能:     将由计算机内部传送过来的并行数据转换

2015-10-15 14:13:29 1049

RegAnalyzer.exe

RegAnalyzer.exe 寄存器查看器

2017-08-15

ds18b20温度传感器

2017-04-13

source insight 最佳最佳配置文件

source insight 最佳最佳配置文件,直接替换原文件即可

2016-12-15

生日快乐小程序

男朋友、女朋友快过生日了,送什么好呢?要与众不同的,这是一款代码实现的生日快乐小程序,可修改,有惊喜哦

2016-01-22

空空如也

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

TA关注的人

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