脚踏实地,仰望星空

私信 关注
lwbeyond
码龄15年
  • 1,404,203
    被访问量
  • 230
    原创文章
  • 3,258
    作者排名
  • 1,379
    粉丝数量
  • 于 2005-11-02 加入CSDN
获得成就
  • 获得702次点赞
  • 内容获得399次评论
  • 获得955次收藏
荣誉勋章
兴趣领域
  • #后端
    #架构#Python
TA的专栏
  • Linux Shell
    4篇
  • C/C++
    45篇
  • STL学习笔记
    16篇
  • STL
    17篇
  • Linux
    41篇
  • vxWorsk
    3篇
  • ACE
    4篇
  • Eclipse
    2篇
  • English
    3篇
  • 设计模式
    24篇
  • 网络编程
    17篇
  • 汽车电子
    4篇
  • 加密算法
    1篇
  • 正则表达式
    2篇
  • 读书与生活
    9篇
  • 嵌入式linux开发
    18篇
  • QT
    16篇
  • uC/OS-II
    6篇
  • Java
    6篇
  • Excel
    11篇
  • Python
    24篇
  • 机器学习
    6篇
  • Andriod
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

Android Studio不支持AMD处理器 -- 解决方法

第一次安装使用Android Studio出现问题,查了半天发现是因为我的电脑是AMD的,不支持inter 虚拟架构,所以运行ADV失败。解决方法是:再安装一个别的虚拟机Genymotion 就可以了。捣鼓了半天终于在新的虚拟机上跑起来了,主要参考以下面文章,记录如下: https://blog.csdn.net/qq_25024883/article/details/52771...
原创
24388阅读
4评论
4点赞
发布博客于 3 年前

网络延时

一般我们理解的网络延时,具体包括如下:
原创
782阅读
0评论
0点赞
发布博客于 3 年前

解决:运行程序提示缺少库

拷贝了一些库和某个可执行文件,在linux运行时提示缺少lib库;一. 检查库的的版本因为是在64位系统下,跑32位程序,如果lib版本不对也会提示找不到的, 所以先查看一下可执行文件和lib的版本file appfile libxxx.so二. 检查文件依赖如果运行app还是提示找不到,先查看一下app的库依赖ldd app 发现文件依赖的库找不到,但是...
原创
2633阅读
0评论
0点赞
发布博客于 3 年前

Linux 32 / 64 位判断

一. 查看系统的版本查看系统(内核)uname -a二. 查看文件的版本文件可以是可执行文件、.o、so文件file stunserver
原创
345阅读
0评论
1点赞
发布博客于 3 年前

HTTP POST GET

一 原理区别一般在浏览器中输入网址访问资源都是通过GET方式;在FORM提交中,可以通过Method指定提交方式为GET或者POST,默认为GET提交Http定义了与服务器交互的不同方法,最基本的方法有4种,分别是GET,POST,PUT,DELETE到这里,大家应该有个大概的了解了,GET一般用于获取/查询 资源信息,而POST一般用于更新 资源信息(个人认为这是GET和POST...
转载
478阅读
0评论
0点赞
发布博客于 3 年前

ftok( )操作的陷阱

近期调试了一个Bug,最后发现是ftok( )产生的key值引起的,纪录下以备忘。1. ftock产生的 key值不一定是唯一的ftock一般传入不同的文件或目录,但有时,不同的名子会产生出相同的key值。 所以,可以通过ipcs命令查看一下key值是否已存在。ipcs -sipcs -m2. ftock文件指定要求很多人一般会用系统目录,比如: /tmp;/bin 等来...
原创
499阅读
0评论
0点赞
发布博客于 3 年前

64位Linux系统跑32位程序

1. 在64位debian上安装32位兼容库$ sudo apt-get install ia32-libs$ sudo apt-get install lib32c-dev 无法安装,找不到库,用下面这个方法,打开多架构支持,然后更新:$ sudo dpkg --add-architecture i386$ sudo apt-get update$ sudo apt-...
原创
5668阅读
0评论
0点赞
发布博客于 3 年前

Linux安装软件提示插入光盘

解决Linux 安装软件时提示插入光盘问题1.找到升级source文件vi /etc/apt/sources.list2.注掉:# deb cdrom:[debian GNU/Linux 7.11.0 ......]3.然后再:apt-get update
原创
1917阅读
0评论
0点赞
发布博客于 3 年前

ipcs、ipcrm 命令

在使用共享内存的程序异常退出时,由于没有释放掉共享内存,在调试时会出现错误。您可以使用shell命令来查看与释放已经分配的共享内存,下面将详细说明如何进行查看和释放分配的共享内存的方法。预备知识Linux中通过API函数shmget创建的共享内存一般都是在程序中使用shmctl来释放的,但是有时为了调试程序,开发人员可能通过Ctrl + C等方式发送中断信号来结束程序,此时程序申请的共...
原创
560阅读
0评论
0点赞
发布博客于 3 年前

CMake安装

0.apt-get安装卸载命令apt-get install xxxx 安装 apt-get remove xxxx 卸载但不删除配置 apt-get purge xxxx 卸载并且删除相关配置1.使用apt安装Debain 安装的命令为: sudo apt-get install cmake 安装后查看版本为: cmake version 2.8.12.22....
原创
450阅读
0评论
0点赞
发布博客于 3 年前

Python 字符编码

一. 字符编码字符串也是一种数据类型,但是,字符串比较特殊的是还有一个编码问题。因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,
转载
208阅读
0评论
0点赞
发布博客于 3 年前

Pycharm环境设置

1. 安装Anaconda3 2. 安装pycharm 3. 设置环境 选择Anaconda的python环境做为编译环境,这样anaconda的库会自动加载到pycharm环境中。 4. Anaconda安装库 (1). 进入到 “C:\Anaconda3\Scripts”就可以使用pip进行安装了,记住这个pip是anaconda的pip工具。 (如果你装过python.exe的话,
原创
61434阅读
1评论
7点赞
发布博客于 3 年前

网络连接设备

1. 中继器主要是对信号进行放大的设备,起到延长网络的作用! - 通过物理层的连接延长网络 - 数据链路层出现错误,中继器也会发数据 - 中继器无法改变传输速度(100Mbps 不能连接10Mbps)2. 集线器(Hub) 多个端口的中继器就是集线器,也叫中继集线器。 可以认为集线器的每个端口都是一个中继器。 目的还是为了扩展物理网络的作用!3. 网桥 (2层交换机,L2交换机)连接一个
原创
1593阅读
0评论
0点赞
发布博客于 4 年前

使用sklearn做单机特征工程

1. 特征工程是什么?  有这么一句话在业界广泛流传:数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已。   那特征工程到底是什么呢?顾名思义,其本质是一项工程活动,目的是最大限度地从原始数据中提取特征以供算法和模型使用。   通过总结和归纳,人们认为特征工程包括以下方面:      特征处理是特征工程的核心部分,sklearn提供了较为完整的特征处理方法,包括数据预处理,
转载
510阅读
0评论
0点赞
发布博客于 4 年前

linux下安装gcc

1、了解一下gcc  目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言的程序,可根据需要选择安装支持的语言。我自己linux上是4.1.2版本,是不支持openMP的,而自己又要用到openMP,所以自己在原来的基础上安装了一个4.2以上版本的。  在安装之前,系统必须有cc或者gcc的编译器,如果没有,就不能安装更高版本的gcc了,如果是这种情况,可以在网上找一
原创
22057阅读
2评论
3点赞
发布博客于 4 年前

Python 读写 Excel

一. 读取Excel1. 导入读取库import xlrd2. 打开Excel文件读取数据data = xlrd.open_workbook('111.xls')3. 获取一个工作表table = data.sheets()[0] #通过索引顺序获取table = data.sheet_by_index(0) #通过索引顺序获取table = data.sheet_by_nam
原创
1101阅读
0评论
0点赞
发布博客于 4 年前

决策树 -- 基于ID3算法

决策树可以使用不熟悉的数据集合,并从中提取出一系列规则,这个过程也是机器学习的过程。1. 首先要解决的问题在构造决策树时,我们需要解决第一个问题,当前数据集中哪些特征在划分数据分类时起决定性作用。信息增益: 信息论里有一个信息增益的描述,它的定义如下: 在划分数据集之前、之后信息发生的变化称为信息增益。 信息增益最高的特征就是最好的选择。信息增益具体量化为 —- 熵 熵是如何计算的呢?如下:
原创
529阅读
0评论
0点赞
发布博客于 4 年前

Apriori 算法关联分析

描述:关联分析是一种在大规模数据集中寻找有趣关系的任务。这些关系可以由两种形式:频繁项集或者关联规则。频繁项集:是经常出现在一起的物品的集合。 关联规则:暗示两种物品之间可能存在很强的关系。量化定义: 交易号码 商品 0 豆奶,莴苣 1 莴苣,尿布,葡萄酒,甜菜 2 豆奶,尿布,葡萄酒,橙汁 3 莴苣,豆奶,尿布,葡萄酒 4 莴苣,豆奶,尿布,橙汁如
原创
1489阅读
0评论
0点赞
发布博客于 4 年前

K-均值聚类算法

聚类:是一种无监督的学习,它将相似的对象归到同一个簇中,有点像全自动分类。1. k-均值聚类算法分类簇数为K 每个簇的质心为所有点的平均值 原理: 1. 随机选择起始质心(也就是簇的中心点) 2. 任意一个中心点是否发生变化? 3. 每个数据点与K个质心的距离比较,哪个距离短,这个数据点就属于哪个簇。 4. 对分好的每个簇,计算簇中所有点的均值,并将均值作为质心(新的中心点) 5. 重
原创
692阅读
0评论
0点赞
发布博客于 4 年前

K-近邻算法

1. 原理存在一个样本集合,并且样本集合中的每个数据都存在标签(也就是有确定的值或分类)。当输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较。 然后算法提取样本集中特征最相似数据的分类标签。一般,我们只选取样本数据集中前K个最相似的数据,选出k个最相似数据中出现次数最多的分类,作为新数据的分类。其中计算多个向量点之间的距离,使用欧氏距离公式: d=(xA0−xB0)
原创
412阅读
0评论
0点赞
发布博客于 4 年前

机器学习入门好文

史上最强----机器学习经典总结---入门必读----心血总结-----回味无穷让我们从机器学习谈起导读:在本篇文章中,将对机器学习做个概要的介绍。本文的目的是能让即便完全不了解机器学习的人也能了解机器学习,并且上手相关的实践。当然,本文也面对一般读者,不会对阅读有相关的前提要求。 在进入正题前,我想读者心中可能会有一个疑惑:机器学习有什么重要性,以至于要阅
转载
1157阅读
0评论
5点赞
发布博客于 4 年前

Pandas基础 -- 1. 数据结构 Series

常用命名:from pandas import Series, DataFrameimport pandas as pdSeries是一种类似于一维数组的对象: 它由一组数组(各种NumPy数据类型),以及一组与之相关的数据标签组成。1. 创建 Series obj = Series([4,7,-5,3])obj 表现为:索引在左边,值在右边。 如果没有指定索引,会自动从0开始。2. Se
原创
3870阅读
0评论
1点赞
发布博客于 4 年前

NumPy基础 -- 6. 随机数生成

numpy.random模块对python内置的random进行了补充,增加了一些用于高效生成多种概率分布的样本值函数。例如: 你可以用normal来得到一个标准正态分布的4X4样本数组:samples = np.random.normal(size=(4,4))常用随机函数: 范例:随机漫步 一种方法:import randomposition = 0walk = [position]
原创
4404阅读
0评论
0点赞
发布博客于 4 年前

NumPy基础 -- 5. 线性代数

线性代数(如矩阵乘法,矩阵分解,行列式以及其他方阵数学等)例子:求矩阵乘法x = np.array([[1,2,3], [4,5,6]])x = np.array([[6,23], [-1,7], [8,9]])x.dot(y) #相当于np.dot(x,y)
原创
456阅读
0评论
0点赞
发布博客于 4 年前

NumPy基础 -- 4. 用于数组的文件输入输出

1. 以二进制格式保存到磁盘 np.save和np.load是读写磁盘数组数据的两个主要函数。 默认情况下,数组是以未压缩的原始二进制格式保存在扩展名为.npy文件中。arr = np.arange(10)np.save('some_array', arr)np.load('some_array.npy')
原创
364阅读
0评论
0点赞
发布博客于 4 年前

NumPy基础 -- 3. 基本数据处理

1. 将条件逻辑表述为数组运算, where( ) condition为true进选x, false时选ynumpy.where(condition, x, y)xarr = np.array([1.1,1.2,1.3,1.4,1.5])yarr = np.array([2.1,2.2,2.3,2.4,2.5])cond = np.array([True,False,True,True,Fal
原创
294阅读
0评论
0点赞
发布博客于 4 年前

NumPy基础 -- 2. 通用函数

通用函数是一种对ndarray中的数据执行元素级运算的函数。1. 一元通用函数 例如:arr = np.arrange(10)np.sqrt(arr)2. 二元通用函数 例如:x = randn(8)y = randn(8)np.maximum(x,y)
原创
484阅读
0评论
0点赞
发布博客于 4 年前

NumPy基础 -- 1. ndarray (多维数组对象)

一.创建nbarray1.使用array函数,接受一切序列对象data1 = [6,7.5,8,0,1]arr1 = np.array(data1)print (arr1)2. 嵌套序列,也会被转换为一个多维数组data2 = [[1,2,3,4], [5,6,7,8]]arr2 = np.array(data2)print (arr2)3. zeros和ones创建指定长度或形状全0或全1
原创
3038阅读
0评论
1点赞
发布博客于 4 年前

Qt 绘制仪表盘

1. 首先准备素材,一个表盘,一个指针 2. 计算旋转圆心及转动角度 通过画图软件测量一下表盘中心的坐标,及指针中心的坐标 大概表盘的中心为(163,163),同样指针的中心位置为(14,110) 转动角度可以大概测量一下,应该为(-120,120)度3. 转动操作 有了这些数据就可以来绘制表盘了//设置表盘的中心#define CenterPoint_X 163#defin
原创
11293阅读
3评论
4点赞
发布博客于 4 年前

Python进阶 -- 4. 处理json文件

1. 读取【列表】格式的 json 文件: 源文件:[ { "Country Name": "Arab World", "Country Code": "ARB", "Year": "1960", "Value": "96388069" }, { "Cou
原创
22036阅读
0评论
4点赞
发布博客于 4 年前

Python进阶 -- 3. 处理CSV格式

CSV文件格式 将数据作为一系列以逗号分隔的值 (CSV) (1). 分析CSV文件头import csvfilename = '111.csv'with open(filename) as f: reader = csv.reader(f) header_row = next(reader) print(header_row)(2). 打印文件头及其位置import
原创
5608阅读
0评论
1点赞
发布博客于 4 年前

Python进阶 -- 2. pygal

Python可视化包Pygal可以用来生成可缩放的矢量图形文件。win安装pygaypython -m pip install --user pygal示例:hist = pygal.Bar()hist.title = "Results of rolling one D6 1000 times."hist.x_labels = ['1', '2', '3', '4', '5', '6']his
原创
4462阅读
0评论
0点赞
发布博客于 4 年前

Python进阶 -- 1. matplotlib

通过安装Anaconda3,使用matplotlib库0. 基本绘画设置 (1). Figure和Subplot matplotlib的图像都位于Figure对象中,你可以用plt.figure创建一个新的Figure.#这时会弹出一个空窗fig = plt.figure()但是不能通过空Figure绘图,必须用add_subplot创建一个或多个subplot才行#这条代码的意思是:图像应该
原创
6154阅读
0评论
2点赞
发布博客于 4 年前

Python -- 10. 测试代码

Python标准库中的 模块unittest 提供了代码测试工具。 单元测试 用于核实函数的某个方面没有问题; 测试用例 是一组单元测试,这些单元测试一起核实函数在各种情形下的行为都符合要求。1. 测试函数import unittestfrom pizza import get_formatted_nameclass NamesTestCase(unittest.TestCase):
原创
2278阅读
0评论
0点赞
发布博客于 4 年前

Python -- 9. 文件和异常

1. 从文件中读取数据 (1).读取整个文件with open('pi_digits.txt') as file_object: contents = file_object.read() print(contents)open(‘pi_digits.txt’) 返回一个表示文件pi_digits.txt 的对象在这个程序中,注意到我们调用了open() ,但没有调用close
原创
1815阅读
0评论
0点赞
发布博客于 4 年前

Python -- 8. 类

1. 创建和使用类 根据约定,在Python中,首字母大写的名称指的是类。 (1). 创建 类class Dog(): """一次模拟小狗的简单尝试""" def __init__(self, name, age): """初始化属性name和age""" self.name = name self.age = age def
原创
2311阅读
0评论
2点赞
发布博客于 4 年前

Python -- 7. 函数

1. 定义函数 使用关键字def 来告诉Python你要定义一个函数。def greet_user(): """显示简单的问候语""" print("Hello!")greet_user()(1).向函数传递信息def greet_user(username): """显示简单的问候语""" print("Hello, " + username.title() +
原创
591阅读
0评论
0点赞
发布博客于 4 年前

Python -- 6. 字典

1. 使用字典 字典 是一系列键—值对 。每个键 都与一个值相关联,你可以使用键来访问与之相关联的值。 字典用放在花括号{} 中的一系列键—值对表示,键和值之间用冒号分隔,而键—值对之间用逗号分隔。alien_0 = {'color': 'green', 'points': 5}(1).访问字典中的值 要获取与键相关联的值,可依次指定字典名和放在方括号内的键alien_0 = {'color'
原创
331阅读
0评论
0点赞
发布博客于 4 年前

Python -- 5. 用户输入和while 循环

1. 函数input() 的工作原理 函数input() 让程序暂停运行,等待用户输入一些文本。获取用户输入后,Python将其存储在一个变量中.message = input("Tell me something, and I will repeat it back to you: ")print(message)(1). 使用int() 来获取数值输入 使用函数input() 时,Pyth
原创
13547阅读
0评论
0点赞
发布博客于 4 年前

Python -- 4. if()操作 & for操作

1. 条件测试 每条if 语句的核心都是一个值为True 或False 的表达式,这种表达式被称为条件测试 。==, !=, <, <=, >, >= and, or 检查特定值是否包含在列表中, in / not inbanned_users = ['andrew', 'carolina', 'david']user = 'marie'if user not in banned_us
原创
1816阅读
0评论
0点赞
发布博客于 4 年前

Python -- 3. 操作列表

1. 遍历整个列表magicians = ['alice', 'david', 'carolina']for magician in magicians: print(magician)2. 避免缩进错误 Python根据缩进来判断代码行与前一个代码行的关系。忘记缩进 不必要的缩进 遗漏了冒号3. 创建数值列表 (1).使用函数range() 函数range() 能够轻松地生
原创
321阅读
0评论
0点赞
发布博客于 4 年前

Python -- 2. 列表与元组

一、列表 list1. 列表是什么 由一系列按特定顺序排列的元素组成,在Python中,用方括号([] )来表示列表,并用逗号来分隔其中的元素。bicycles = ['trek', 'cannondale', 'redline', 'specialized']print(bicycles)(1). 访问列表元素 要访问列表的任何元素,只需将该元素的位置或索引告诉Python即可
原创
410阅读
0评论
0点赞
发布博客于 4 年前

Python -- 1. 变量和简单数据类型

一:变量和简单数据类型 1. 变量: 变量名只能包含字母、数字和下划线。 变量名不能包含空格、Python关键字。 大小写区分message = "Hello Python world!"print(message)2. 字符串: 字符串中包含引号和撇号print('I told my friend, "Python is my favorite langu
原创
740阅读
0评论
0点赞
发布博客于 4 年前

工厂工艺学习

温州工厂参观回来,记录下下工厂工艺内容:一. 模具:模具是用来成型物品的工具,它主要通过所成型材料物理状态的改变来实现物品外形的加工。现代模具生产流程如下:1)ESI(Earlier Supplier Evolvement 供应商早期参与):此阶段主要是客户与供应商之间进行的关于产品设计和模具开发等方面的技术探讨,主要的目的是为了让供应商清楚地领会到产品设计者的设计
原创
864阅读
0评论
0点赞
发布博客于 5 年前

《越读者》---- 读书笔记

Read the Word, Read the World每一本书都可能是一道窗户,改变我们对世界观望的方面;或是一道门户,改变我们人生真正走出去的方向。不论自觉错过了多少机会,我们都可以随时画一道门户,到我们想去的地方去。阅读就是这样。对一个读者来说,是昂贵的成本是他的时间。所以要小心那些让你付出不值得付出那么多时间的书。一. 四种阅读饮食1. 主食阅读
原创
627阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 3. 数据管理和分析

1. 排序2. 筛选3. 数据透视表
原创
430阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 2. 公式与函数应用

一. 地址引用1. 相对引用:D4,拖动会变化2. 绝对引用:$D$4,始终保持不变3. 混合引用:$D4, D$44. 各种引用相互切换二. 文本函数1. UPPER/LOWER, 大小写转换2. LEFT/RIGHT/MID,截取字符串3. LEN,计算长度4. & 连接符三.
原创
370阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 1. 数据表规范

一. 数据类型与格式1. 数字:精度最大15位,右对齐。2. 字符串:由字母、字符、符号、文本型数字组成。3. 日期和时间:数字“1”代表基准日期“1900年1月1日”Ctrl + ;当前系统日期Ctrl + Shift + ; 当前系统时间4. 逻辑值:True/False5. 设置格式:Ct
原创
397阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 自动填充

一. 常规方法1. 出现"填充柄"后,鼠标左键拖放操作。2. 出现"填充柄"后,右键拖放操作填充。二. 填充方式1. 序列(数字和日期,默认采用"序列"方式进行填充)2. 复制(文本,默认采用"文本"方式进行填充)拖放的过程中,按住Ctrl键,可以改变填充方式。三. 自定义序列填充[文件]-->[选项]-->[Exce
原创
582阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 日期和时间运算

一. 标准的日期格式1. y/m/d2. y-m-d3. y年m月d日二. 非标日期的修复1. 使用分列功能2. 使用替换Substitute函数=--SUBSTITUTE(A1, "。", "-")三. 获取日期信息1. year/month/day2. 星期几:Weekday3. 第几周:Wee
原创
841阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 数学运算

一. 常规运算1. 数学运算符+ - * / MOD ^2. 对数函数=LOG(8,2) 以2为底8的对数3. 三角函数SIN, COS, TAN, ASIN, ACOS, ATAN注意:这些三角函数是以弧度值为对象进行运算的。角度转弧度函数:RADIANS(角度) 二. 舍入和进位1. Round函数=ROUND(D2,1), 四舍五入保留
原创
737阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 数据类型转换

一. 文本转数字1. 使用分列功能【分列】功能有一个隐藏的功能,可以处理一些脏数据(包括空格、或其它看不见的字符)2. 使用算术计算式=A1+A2=--LEFT(A1, 3)注:函数公式是不行的,函数只能处理数字。一. 数字转文本数字和任意字符拼合,就会变成文本数据。=A1&""
原创
675阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 筛选

一. 筛选的类型1. 特定的数值范围2. 特定的文本内容二. 高级筛选1. 设置条件2. 使用高级筛选3. 注意条件组的方式位于同一行的条件属于交叉关系(And)表示:摄像头>800 and 系统=Android位于不同行的条件之间属于并列关系(Or)表示:摄像头>800 或者系统=
原创
528阅读
0评论
1点赞
发布博客于 5 年前

Excel -- 排序与排名

一. 排序1. 顺序的类型数值的大小顺序:1文本的字母顺序:A逻辑或概念顺序:一季度2. 排序三要素排序范围:原始数据:选中一列单元格,可以时行数据单独排列  选中一个单元格,默认是关联排序排序依据:选中哪个单元格,就以哪个单元格的数据类型做为依据。排序顺序:除了数字和文本,还可以自定义顺序。输入自定义
原创
1991阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 条件统计函数

一. 单一条件函数1. COUNTIF=COUNTIF(条件范围,条件值),返回满足条件的个数。例如:=COUNTIF(F:F, "&J29)注意:要用&符号将比较符号与单元格地址连接在一起。2. SUMIF=SUMIF(条件范围,条件值,求和范围)与COUNTFI函数相比,SUMIF就只多了一个参数--就是用来求和的范围。3. AVERAGEIF=AVERAG
原创
1594阅读
0评论
0点赞
发布博客于 5 年前

Excel -- 数据透视表

一. 创建数据透视表,及布局在数据表中任意选中某个单元格[插入]-->[数据透视表]选择数据区域后,确定如图所示字段面板,数据透视表有:行标签、列标签、数值、报表筛选 四个窗口布局二. 求和、计数、平均值等 统计方式如果字段中的数据都是数值型,透视表会将汇总自动设置为“求和”方式,如果字段的数据中包含文本数据,会被自动设置为“
原创
1831阅读
0评论
1点赞
发布博客于 5 年前

ThinkPad 安装系统

一. 制作U盘启动工具 1. 下载U盘魔术师软件USM 2. 安装USM后, 插上U盘一键制做 3. 解压下载的ISO格式的系统,到U盘根目录 此时U盘启动工具制作完成,U盘内容包括启动盘和一个操作系统噢。二. 擦除磁盘数据 1. 进BISO, 按F12(Fn+F12)键进入,会看到有一项USB 2. 选USB回车,最终会进入Window PE系统 3. 打开分区工具,工具
原创
995阅读
1评论
1点赞
发布博客于 5 年前

Qt 下载地址

上Qt官网http://www.qt.io/download/想下载Qt,速度很慢,在这里记录下在Qt官网看到的镜像下载地址:1. 所有Qt版本下载地址:http://download.qt.io/archive/qt/2. 所有Qt Creator下载地址:http://download.qt.io/archive/qtcreator/3. 所有Qt
原创
2790阅读
0评论
1点赞
发布博客于 5 年前

《你的生命有什么可能》---- 读书笔记

一. 人生金三角:在热爱的领域努力的玩热爱:除了成功或失败,还能选择玩什么游戏、和谁玩、玩不玩----还能成为选择自己人生的人。努力:害怕努力了也无法成功而从未真正全力以赴玩:放下得失之心来玩,不要像个机器,自己也要有玩耍快乐的要求。生涯规划的原理:兴趣:提升兴趣让我们持续发现新的事物,给生命注入玩耍和快乐的体验。能力:强化能力让我们固化自己的努力,得以掌控生活和工作,
原创
3834阅读
0评论
2点赞
发布博客于 6 年前

字符设备驱动----中断程序

Linux内核将所有的中断统一编号,使用一个irq_desc结构数组来描述这些中断:每个数组项对应一个中断。一. 中断的处理流程如下:1. 发生中断时,CPU执行异常向量 vector_irq 的代码。 2. 在 vector_irq 里面,最终会调用中断处理的总入口函数asm_do_IRQ. 3. asm_do_IRQ 根据中断号调用 irq_desc 数组项中的handle_irq.
原创
1076阅读
0评论
0点赞
发布博客于 6 年前

字符设备驱动----LED驱动程序

一. 概念介绍 一般用户在应用程序里调用的 open, read, write 函数是 c 库的函数, 这些函数会触发 swi val异常,从而引发系统调用,进入到内核空间, 内核通过VFS(virtual Filesystem)来实现调用不同的驱动函数。 例如:我们有一个函数,int main(){ int fd1, fd2; int val = 1; fd1
原创
2990阅读
1评论
2点赞
发布博客于 6 年前

C++ 总结

C++ 虽然内容比较多,但是细分下来,可有几大部分组成,每一部分侧重点不同,我在学习过程中按这几大块来理解,发现很有效率,故总结如下。一、基本语言C/C++ 声明与定义C++类型转换C 指针精要二、面向过程的编程函数返回值问题函数内联成员函数的重载、覆盖与隐藏三、STL四、基于对象的编程详解C++ friend关键字详解 C++
原创
4913阅读
0评论
14点赞
发布博客于 6 年前

第0课第5节 刚接触开发板之u-boot, kernel打补丁编译

uboot打补丁、建source insight工程、编译、烧写1. 解压 u-boot-1.1.6.tar.gz2tar xjf u-boot-1.1.6.tar.gz22. 打patchpatch -p1 3. 打完patch后再次打包tar xjf u-boot-1.1.6_jz2440.tar.gz2 u-boot-1.1.64. 此包可以放在window下,通
原创
1676阅读
0评论
0点赞
发布博客于 6 年前

第0课第4节 刚接触开发板之使用vmwae和预先做好的ubuntu

4. 解压使用我制作好的ubuntu4.1 自己下载安装vmware 6.0.5以上版本4.2 按开发板使用手册解压ubuntu4.3 设置vmware的网络环境4.4 使用vmware打开ubuntu4.5 安装FTP工具CuteFTP Professional : 传文件    secure CRT :远程登录工具
原创
542阅读
0评论
0点赞
发布博客于 6 年前

第0课第3节 刚接触开发板之重烧整个系统

3. 重烧系统: uboot, 内核, 文件系统3.1 u-boot的烧写和烧写裸板是一样的3.2 烧写内核: dnw, tftpdnw: 在菜单里输入k, 然后使用dnw.exe发送文件tftp:tftp 30000000 uImagenand erase kernelnand write.jffs2 30000000 kernel3.3 文件系统:d
原创
692阅读
0评论
0点赞
发布博客于 6 年前

第0课第2节 刚接触开发板之烧写裸板程序

2. 烧写: 裸板, 4种方法: 并口, openjtag, jlink, nor上的uboot2.1 使用并口工具烧写: 接线, 使用oflash烧写, 重新上电观察效果2.2 使用openjtag烧写: 接线,使用oflash烧写(oflash烧写完后会复位开发板)2.3 JLINK只能烧写NOR FLASH,烧好u-boot.bin,使用NOR启动2.4 使用
原创
812阅读
0评论
0点赞
发布博客于 6 年前

第0课第1节 刚接触开发板之接口接线工具

1. 接口、接线、装驱动、装软件1.1 如果PC有并口,装并口驱动1.2 安装USB串口卡的驱动, 以openjtag为例: 先接上去,然后按提示安装烧写软件用的工具。1.3 JZ2440v2集成的USB串口:运行PL2303_Prolific_DriverInstaller_v1.5.0.exe, 然后接USB线(板子上的USB-COM1口PC的USB口)串口调试工具。1
原创
910阅读
0评论
0点赞
发布博客于 6 年前

学前班 第3节 怎么看原理图之内存类接口

3.类似内存的接口 : ram-like3.1 NOR, SDRAM, 网卡3.2 不同位宽外设的接线、访问过程3.3 怎么确定访问地址、设置内存控制器问1:地址线、数据线上接有众多设备,怎样做到只访问其中一个而避免其余的影响?答1:每一个芯片都有单后的片选引脚,访问它之前先设置片选引脚为低电平;其他芯片的片选引脚为高电平问2:是否需要我们手工来设置片选引脚?答
原创
1006阅读
0评论
0点赞
发布博客于 6 年前

学前班 第2节 怎么看原理图之协议类

协议类
原创
833阅读
0评论
0点赞
发布博客于 6 年前

学前班 第1节 怎么看原理图之GPIO和门电路

微机原理          :侧重于计算机结构数字电子技术基础  :侧重于门电路1.GPIO和门电路 :general peripheral input/ouput1.1 输入、输出引脚、上拉电阻、三极管1.2 与门、或门、非门1.3 中断
原创
1190阅读
0评论
0点赞
发布博客于 6 年前

Qt5.3.2 编译出现cannot find -lGL错误

新建一个工程,运行出现cannot find -lGL错误终端下输入:sudo apt-get install libglu1-mesa-dev安装完成后,再进行编译,就OK了。
原创
711阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----6.面向对象(包装类与比较运算符)

一. 包装类1. 把基本数据类型变量包装成包装类实例是通过对应包装类的构造器来实现的//通过构造器把bl基本类型变量包装成包装类对象boolean bl = true;Boolean blObj = new Boolean(bl);//通过构造器把it基本类型变量包装成包装类对象int it = 5;Interget inObj = new Interget(i
原创
1413阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----5. 面向对象(封装、继承、多态)

一. 封装封装,是将对象的状态信息隐藏在对象内部,不允许外部程序直接访问对象内部信息,而是通过该类所提供的方法来实现对内部信息的操作和访问。1. 访问控件符private:当前类访问权限,如果类里的一个成员使用private来修饰,则这个成员只能在当前类的内部被访问。显然这个修饰符用于Field最合适,可以把Field隐藏在该类内部。default(不使用任何修饰符):包访
原创
1097阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----4. 面向对象(基本概念)

一. 类和对象1. 定义类:[修饰符] class 类名{ 0~N个构造器定义 0~N个Field 0~N个方法}修饰符:public, final, abstract 或完全省略定义构造器[修饰符] 构造器名(形参列表){...}修饰符:public, protected, private 或完全省略定义Field[修饰符] Fi
原创
640阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----3. 流程控制与数组

一. 分支结构1. if2. switchexpression 只能是byte,short,char,int 四个整数类型和枚举类型java7还允许使用java.lang.String类型二. 循环结构1. while2. do while3. for三. 控制循环结构1. break用于完全结束一个循环,只能跳出一个循环
原创
778阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----2. 基本数据类型

一. java数据类型基本类型:boolean类型,数值类型引用类型:类、接口和数组类型,null类型下图:1. 整形Java整数常量默认就是int类型:5,100,1000都是int类型a: 如果将一下较小的整数常量(在byte或short数值范围之内),赋给一个byte或short变量,系统会自动把这个整数常量当成byte或short类型来处理。// 下面代码是
原创
895阅读
0评论
0点赞
发布博客于 6 年前

Java笔记----1. Java语言概述

1. Java程序的运行机制使用javac编译:生成一种与平台无关的字节码(也就是*.class文件)使用java解释执行:负责解释执行字节码文件的是Java虚拟机,即JVM。JRE:运行时环境JRE除了包含JVM之外,还包含运行Java程序的其他环境支持(类加载器,字节码校验器,基础类库等)2. 设置PATH环境变量安装JDK,安装路径中最好不要有空格。在用户
原创
838阅读
0评论
0点赞
发布博客于 6 年前

QT 坐标系统

一个绘图设备的默认坐标系统中原点(0,0)在其左上角,x坐标向右增长,y坐标向下增长。逻辑坐标与绘图设备的物理坐标之间的映射由QPainter的变换矩阵、视口和窗口来处理的。逻辑坐标和物理坐标默认是一致的。一. 抗锯齿渲染默认情况下,绘制会产生锯齿。可以使用抗锯齿渲染提示,QPainter::setRenderHint(RenderHint hint, bool on=true
原创
3794阅读
0评论
0点赞
发布博客于 7 年前

QT 渐变填充

QT 一. 使用QTimeEvent类QTQT
原创
4395阅读
0评论
0点赞
发布博客于 7 年前

QT 基本图形绘制

1. 绘制图形protected:    void paintEvent(QPaintEvent *);void Widget::paintEvent((QPaintEvent *event){    QPainter painter(this); //this为绘图设备,即表明在该部件上进行绘制    painter.drawLine(QPaint(0, 0), QP
原创
43953阅读
2评论
14点赞
发布博客于 7 年前

QT 定时器

二. 事件过滤器
原创
1405阅读
0评论
0点赞
发布博客于 7 年前

QT 中的事件

一. 事件处理与传递QApplication类调用exec()函数后,它会使QT应用程序进入事件循环,这样就可以使应用程序在运行时接收发生的各种事件。有5种处理事件的方法:1. 重新实现部件的事件处理函数(比如:paintEvent(), mousePressEvent()等)。比较常用,但它只能处理特定部件的特定事件。2. 重新实现notify()函数。3. 向QAppl
原创
944阅读
0评论
0点赞
发布博客于 7 年前

QT 常用部件

一. QFrame类部件QFrame类族,包括QLabel, QLCDNumber, QSackedWidget, QToolBox, QSplitter, QAbstractScrollArea1. QLabel 部件//对齐方式//属性栏设置 alignment//实现文本自动换行//属性栏设置 wordWrap//设置图片#include ui
原创
4788阅读
0评论
0点赞
发布博客于 7 年前

QT 标准对话框

1. 颜色对话框QColorDialog dialog(Qt::red, this);dialog.setOption(QColorDialog::ShowAlphaChannel); //显示alpha选项dialog.exec();QColor color = dialog.currentColor(); //获取当前颜色qDebug() 2. 文件对话框
原创
1214阅读
0评论
0点赞
发布博客于 7 年前

QT Creator 里设置输入法

1. 安装ibus-qt42. 设置qt_
原创
1715阅读
0评论
0点赞
发布博客于 7 年前

printf 打印颜色

printf的颜色控制控制字符的通用格式如下:Esc[{attr1};...;{attrn}m其中:Esc 是转义字符, 其值为"\033";[ 是常量的左中括号;{attr1};...{attrn} 是若干属性, 通常是由一个有特定意义的数字代替, 每个属性之间用分号分隔;m 就是字面常量字符m;可用属性列表:通用格式控制:0 重置所有属性
原创
12766阅读
3评论
6点赞
发布博客于 7 年前

sprintf函数的用法

在将各种类型的数据构造成字符串时,sprintf 的强大功能很少会让你失望。由于sprintf 跟printf 在用法上几乎一样,只是打印的目的地不同而已,前者打印到字符串中,后者则直接在命令行上输出。这也导致sprintf 比printf 有用得多。sprintf 是个变参函数,定义如下:int sprintf( char *buffer, const char *format [, a
转载
1215阅读
1评论
0点赞
发布博客于 8 年前

uC/OS-II消息队列及操作

使用消息队列可在任务之间传递多条消息,消息队列由三部分组成:事件控制块、消息队列和消息。事件控件块成员OSEventPtr指向一个叫做队列控制块(OS_Q)的结构,该结构管理着一个数组MsgTb1[],该数组中的元素都是指向消息的指针。一. 消息队列的操作1. 创建消息队列OS_EVENT *OSQCreate (void **start, INT16U size);st
原创
3500阅读
1评论
0点赞
发布博客于 8 年前

uC/OS-II消息邮箱及其操作

如果要在任务与任务之间传递一个数据,可以用消息邮箱,它的原理是在存储器中建立一个数据缓冲区,然后就以这个缓冲区为中介来实现任务间的数据传递。一. 消息邮箱的操作1. 创建消息邮箱OS_EVENT *OSMboxCreate (void *msg);调用此函数须先定义msg的初始值,在一般的情况下,这个初始值为NULL;但也可以事先定义一个邮箱,然后把邮箱指针做为参数。
原创
4964阅读
0评论
1点赞
发布博客于 8 年前

uC/OS-II互斥信号量与任务优先级反转

一. 任务优先级反转的概念当任务以独占方式使用共享资源时,会出出低优先级任务先于高优先级任务而被运行的现象,这就是所谓的任务优先级反转。例如:1. 任务A和任务C都要使用同一共享资源S,现在假设任务A和任务B都在等待与各自任务相关的事件发生而处于等待状态,而任务C正在运行,且在t1时刻取得了信号量的并开始访问共享资源S。2. 如果在任务C使用共享资源S过程中的t2时刻,任务
原创
4202阅读
0评论
0点赞
发布博客于 8 年前

uC/OS-II的信号量及其操作

一. 信号量的概念信号量的最初目的,是为了给共享资源设立一个标志,该标志表示该共享资源被占用的情况。当事件控制块成员OSEventType的值被设置成OS_EVENT_TYPE_SEM时,这个事件控制块描述的就是一个信号量。信号量由信号量计数器和等待任务表两部分组成:信号量使用事件控制块的成员OSEventCnt作为计数器,而用数组OSEventTb1[]来充当等待任务表。
原创
5189阅读
1评论
4点赞
发布博客于 8 年前

uC/OS-II任务间的同步及事件

一. 什么是同步为了实现各个任务之间的合作和无冲突的运行,在各任务之间必须建立一些制约关系。一是各任务间应该具有一种互斥关系,即对于某个共享资源,如果一个任务正在使用,则其他任务只能等待,等到该任务释放该资源后,等待的任务之一才能使用它;二是相关的任务在执行上要有先后次序,一个任务要等其伙伴发来通知,或建立了某个条件后才能继续执行,否则只能等待。任务之间的这种制约的合作运行机制
原创
2986阅读
0评论
1点赞
发布博客于 8 年前

uC/OS-II 中的任务

一. 任务的基本概念1. 任务分三个部分:任务控制块,任务堆栈,任务程序代码。任务控制块:关联了任务代码的程序控制块,它记录了任务的各个属性;任务堆栈:用来保存任务的工作环境。任务程序代码:就是任务的执行部分。2. 任务的状态睡眠状态:任务在没有配备任务控制块或被剥夺了作务控制块时的状态。就绪状态:配备了任务控制块并在任务就绪表中进行了就绪登记。运行
原创
1710阅读
0评论
0点赞
发布博客于 8 年前

SPI 协议

一. 概念1. 通常SPI通信要求4根线,分别是MOSI(mast output salve input), MISO, CLK, CS。2. 当发送和接受数据的工作都准备好了,只要有时钟CLK,就发送数据,没有时钟就不发送,而且一个时钟周期发送一位(bit)数据,所以发送数据的快慢由时钟频率来控制。3. 至于时钟和数据的相位没有特别严格的要求(而IIC中,数据的变化只能在SCL是低电
原创
28763阅读
2评论
5点赞
发布博客于 8 年前

ubuntu下载的软件存放位置

ubuntu下载的软件一般放在:/var/cache/apt/archives下面,而且名子为xxx.deb要安装xxx.deb需要用下面的命令:dpkg -i /home/xxx.deb
原创
9909阅读
0评论
0点赞
发布博客于 8 年前

2. 分析uboot 的Makefile文件

一. 分析 uboot 的配置过程:make 100ask24x0_config查找:100ask24x0_config100ask24x0_config : unconfig @$(MKCONFIG) $(@:_config=) arm arm920t 100ask24x0 NULL s3c24x0查找:MKCONFIG  MKCONFIG := $(S
原创
1077阅读
0评论
0点赞
发布博客于 8 年前

1. 编译uboot

1. 解压:tar jxf u-boot-1.1.6.tar.bz2cd u-boot-1.1.6/2. 打补丁patch -p1 3. 配置make 100ask24x0_config4. 编译make生成 u-boot.bin5.其它在 tool 目录下会生成一个mkimage,把它拷贝到/usr/bin下面,主要是为了生成uImage用的。cp mk
原创
830阅读
0评论
0点赞
发布博客于 9 年前

is not in the sudoers file 解决

解决方案:首需要切换到root身份$su -(注意有- ,这和su是不同的,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,用"su -"命令将环境变量也一起带过去,就象和root登录一样)然后$visudo     //切记,此处没有vi和sudo之间没有空格移动光标,到最后一行your_user_nam
原创
621阅读
0评论
0点赞
发布博客于 9 年前

linux系统设置环境变量

Ubuntu Linux 系统环境变量配置文件主要有以下机个地方:1. /etc/profile : 在登录时,操作系统定制用户环境时使用的第一个文件,此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行。2. /etc /environment : 在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。3. ~/.profile
原创
1232阅读
0评论
0点赞
发布博客于 9 年前

创建根文件系统

一. 编译安装busybox在busybox代码安装文档里有说明:make menuconfig # This creates a file called ".config"make # This creates the "busybox" executablemake install # or make CONFIG_PREFI
原创
1006阅读
0评论
0点赞
发布博客于 9 年前