其他
ccccccsdn
这个作者很懒,什么都没留下…
展开
-
结构体变量的赋值
以前在使用结构体时没有在结构体变量之间直接赋值,今天同事在查看别人的代码时,发现有两个结构体变量直接赋值的语句当时感觉这个语句不对,认为在一个结构体里边,既有一般的无符号整形与数组,因为数组的赋值是不能直接赋值,要内存拷贝,从这里推理所以认为这个语句不对。于是问了一下,我当时以为是结构体指针变量的赋值,认为没有问题。还和同事争论了一番,当他让我看源代码时,发现是变量间的直接赋值,下意识中的判断是不转载 2014-07-25 09:52:33 · 2005 阅读 · 0 评论 -
可重入函数
可重入函数 在实时系统的设计中,经常会出现多个任务调用同一个函数的情况。如果这个函数不幸被设计成为不可重入的函数的话,那么不同任务调用这个函数时可能修改其他任务调用这个函数的数据,从而导致不可预料的后果。那么什么是可重入函数呢?所谓可重入是指一个可以被多个任务调用的过程,任务在调用时不必担心数据是否会出错。不可重入函数在实时系统设计中被视为不安全函数。 满足下列条件转载 2015-03-04 15:39:03 · 406 阅读 · 0 评论 -
SD(Secure Digital)与 MMC(Multimedia Card)
SD(Secure Digital)与 MMC(Multimedia Card)SD 是一种 flash memory card 的标准,也就是一般常见的 SD 记忆卡,而 MMC 则是较早的一种记忆卡标准,目前已经被 SD 标准所取代。在维基百科上有相当详细的 SD/MMC 规格说明:[http://zh.wikipedia.org/wiki/Secure_Digital]。SD转载 2015-07-06 10:09:35 · 578 阅读 · 0 评论 -
屏幕色彩与分辨率区别,PPI的概念,IPS屏与TFT屏
转自:http://blog.csdn.net/jbb0523/article/details/7706903题目:【整理】屏幕色彩与分辨率区别,PPI的概念,IPS屏与TFT屏1)屏幕色彩与分辨率区别我们在这里所指的屏幕色彩实质上即为色阶的概念。色阶是表示手机液晶显示屏亮度强弱的指数标准,也就是通常所说的色彩指数。目前彩屏手机的色阶指数从低到高可分为:最低单色,其转载 2015-09-09 11:08:17 · 3143 阅读 · 0 评论 -
usr/bin/env python 和 usr/bin/python
在linux的一些脚本里,需在开头一行指定脚本的解释程序,如:#!/usr/bin/env python再如:#!/usr/bin/env perl#!/usr/bin/env zimbu但有时候也用#!/usr/bin/python和#!/usr/bin/perl那么 env到底有什么用?何时用这个呢?脚本用env启动的原因,是因为脚本解释器在转载 2015-10-21 10:41:24 · 377 阅读 · 0 评论 -
Protocol Buffers介绍
今天来介绍一下“Protocol Buffers”(以下简称protobuf)这个玩意儿。本来俺在构思“生产者/消费者模式”系列的下一个帖子:关于生产者和消费者之间的数据传输格式。由于里面扯到了protobuf,想想干脆单独开一个帖子算了。 ★protobuf是啥玩意儿? 为了照顾从没听说过的同学,照例先来扫盲一把。 首先,protobuf是一个开源项目(官方站点在“这里”)转载 2015-10-23 14:53:26 · 268 阅读 · 0 评论 -
stm32 fsmc
哎..这些天忙着准备四六级,整天呆在自习室,都快傻了,而且特别累,回来还没心情搞STM32,趁今天有点心情,赶快把前面的东西给补上吧以下的资料都是从别的大虾那里偷来的.在此谢谢人家的分析.让我们站在巨人的肩膀上学习.开发板:奋斗V5这是从 http://www.cnblogs.com/hduxyc/archive/2011/05/17/2048099.html 这里copy过来的转载 2015-10-13 09:51:20 · 402 阅读 · 0 评论 -
xml <></>和</>的区别
content这是正常的一个元素,当内容content为空时,可以简写为,是一个自闭合元素。转载 2015-10-12 09:45:33 · 974 阅读 · 0 评论 -
C语言MD5实现
转载使用DEV-C++调试验证正常注:以下是md5加密算法c语言版,加密后16,32位版------------------------------------------------------------------------------------------------------网上找到的md5函数的实现,试过,可以用,稍微修改了,支持输出16和32转载 2016-01-19 13:14:34 · 671 阅读 · 0 评论 -
source insight 多行注释
source insight 添加多行注释,取消多行注释快捷键把下方的代码加入到base项目中。macro Comment_gg(){ //用杠杠注释,不选中多行的话,注释当前行 hwnd = GetCurrentWnd() selection = GetWndSel( hwnd ) lnFirst = GetWndSelLnFirst( hwnd ) lnLa转载 2015-11-27 10:10:43 · 624 阅读 · 0 评论 -
Java 环境下使用 AES 加密的特殊问题处理
在 Java 环境下使用 AES 加密,在密钥长度和字节填充方面有一些比较特殊的处理。1. 密钥长度问题 默认 Java 中仅支持 128 位密钥,当使用 256 位密钥的时候,会报告密钥长度错误Invalid AES key length 你需要下载一个支持更长密钥的包。这个包叫做 Java Cryptography Extension (JCE) Unlimi转载 2016-01-21 13:38:31 · 743 阅读 · 0 评论 -
do{...}while(0)的意义和用法
linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{ ...}while(0)这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{...}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复杂的宏,避免引转载 2014-12-10 16:47:37 · 348 阅读 · 0 评论 -
MBus协议详解(二)
4.4 slave设计传输特性:slaves被设计为具有两种不同恒定sink电流,因此在总线上电压有1V的变化的时候,sink电流的变化一定不能超过0.2%。为了传输一个Mark,一个单位负载被指定,一个单位负载由最大为1.5mA的恒定电流组成。如果slave需要更多的电流,就必须增加适当数量的单位负载。当发送一个space的时候,slave需要多增加11~20mA的电流消耗。Slave在转载 2015-01-28 10:22:33 · 8134 阅读 · 2 评论 -
MBus协议详解(一)
看了许多关于MBus协议的资料,感觉说的不具体、不完整、也不系统,本人准备结合一个具体的产品实现,从理论和实现上对MBus协议做一个详细的论述,如有不当之处,欢迎讨论。1介绍 MBus(Meter Bus)即仪表总线,MBus总线开发的目的是用于满足网络系统和远程抄表的需要,例如用于测量家里面气和水的消耗。MBus仪表总线可以满足由电池供电或远程供电的计量转载 2015-01-28 10:20:58 · 30206 阅读 · 1 评论 -
PI PI Expert Suite 9.0 使用体会---几分钟搞定一款LED电源设计
此贴是本人在 LED社区 帖子整理而来帖子地址:http://ledlight.eefocus.com/bbs/article_1270_549209.htmlPI Expert 是PI公司推出的一款用于单片开关电源的计算机辅助设计软件,也称为PI Expert专家系统,目前的版本是9.0。它能根据设计人员的要求,在输入了一系列技术指标以后,自动生成电路拓扑、设计结果、材料清单、PCB布局转载 2014-07-26 19:12:01 · 3952 阅读 · 0 评论 -
51单片机中使用ucos ii的优缺点(好文)
摘要:近年来,在单片机系统中嵌入操作系统已经成为人们越来越关心的一个话题。本文通过对一种源码公开的嵌入式实时操作系统ucosii的分析,以51系列单片机为例,阐述了在单片机中使用该嵌入式操作系统的优缺点,以及在应用中应当注意的一些问题。关键词:实时操作系统;ucos ii;单片机 引言 早在20世纪60年代,就已经有人开始研究和开发嵌入式操作系统。但直到最近,它才在国内被越来越多转载 2014-07-28 14:20:59 · 2144 阅读 · 0 评论 -
点阵LCD的显示原理
点阵LCD的显示原理 在数字电路中,所有的数据都是以0和1保存的,对LCD控制器进行不同的数据操作,可以得到不同的结果。对于显示英文操作,由于英文字母种类很少,只需要8位(一字节)即可。而对于中文,常用却有6000以上,于是我们的DOS前辈想了一个办法,就是将ASCII表的高128个很少用到的数值以两个为一组来表示汉字,即汉字的内码。而剩下的低128位则留给英文字符使用,即英文的内转载 2014-11-18 19:29:27 · 17703 阅读 · 0 评论 -
12864液晶模块的详细使用
备注:这篇文章是对12864操作的具体介绍,仅限刚接触12864的新手,大神请拍砖,文章写的较散,建议先参考12864手册及控制驱动器ST7920英文手册有个初步理解之后再阅读该篇文章,将会有更深的认识。强烈建议阅读ST7920英文手册,细节内容里面有详细介绍,中文的12864也是从中译过来的。本文分三个步骤介绍12864的内部资源原理,指令集详细讲解,以及应用例子。转载 2014-11-18 20:30:29 · 1972 阅读 · 0 评论 -
stm32使用systick精确延时
利用系统滴答定时器来实现精确延时,需要以下五步:1、设置滴答定时器的时钟,通过设置其控制寄存器,选择外部时钟,即为系统时钟的八分之一,若系统时钟为72M,则滴答定时器时钟为9M。即定时一秒需要9M个时钟周期。2、设置滴答定时器的重装载寄存器的数值,即需要延时的时钟周期数。如:若需要延时20微秒,则重装载值为20*9.若要延时20毫秒,则设置重装载值为20*9000.3、清空滴答定时器当转载 2014-11-28 14:54:47 · 2331 阅读 · 0 评论 -
浅析代码优化
转载于:http://www.cnblogs.com/yanlingyin/开篇相信有过编码经验的人都知道,程序的正常运行,只是最基本的要求。更多的,还要考虑程序的性能,运行效率,组织结构,和重用性等等。今天将简单的讨论一下如何优化程序性能。要写出高效的程序,可能多数初学者想到的是在程序中用合适的算法和数据结构。这确实是一中提高程序性能的主要方法。而这里要讨转载 2015-01-07 17:22:02 · 439 阅读 · 0 评论 -
volatile与编译器代码优化浅析
转载自:http://blog.chinaunix.net/uid-24641004-id-3395896.htmlVolatile有什么用?最近写ARM9的裸板C语言代码,比如说我想表示到GPBCON的地址的内容,我们往往会这样写:#define GPBCON (*(volatile unsigned int*)0x56000010)转载 2015-01-07 17:22:57 · 624 阅读 · 0 评论 -
关于I2C和SPI总线协议
关于I2C和SPI总线协议IICvs SPI 现今,在低端数字通信应用领域,我们随处可见IIC (Inter-Integrated Circuit) 和 SPI (Serial Peripheral Interface)的身影。原因是这两种通信协议非常适合近距离低速芯片间通信。Philips(for IIC)和Motorola(for SPI) 出于不同背景和市场需转载 2015-01-07 09:16:37 · 589 阅读 · 0 评论 -
volatile关键字的作用:防止变量被编译器优化
volatile关键字是一种类型修饰符,用它声明的类型变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。 精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。其中关键在于两个地方: 1. 编译器的优化在本次线程内, 当读取一个变量时,为提高存取速度,编译器优化时有时会先把转载 2015-01-07 17:13:43 · 1676 阅读 · 0 评论 -
编译器优化 → C关键字volatile → memory破坏描述符zz
“memory”比较特殊,可能是内嵌汇编中最难懂部分。为解释清楚它,先介绍一下编译器的优化知识,再看C关键字volatile。最后去看该描述符。 1、编译器优化介绍 内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流转载 2015-01-07 17:18:28 · 800 阅读 · 0 评论 -
protobuf,json,xml,binary,Thrift之间的对比
一条消息数据,用protobuf序列化后的大小是json的10分之一,xml格式的20分之一,是二进制序列化的10分之一,总体看来ProtoBuf的优势还是很明显的。protobuf是google提供的一个开源序列化框架,类似于XML,JSON这样的数据表示语言,详情访问protobuf的google官方网站。protobuf在google中是一个比较核心的基础库,作为分布式运算涉及到大量转载 2016-07-14 11:01:20 · 537 阅读 · 0 评论