自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(87)
  • 资源 (14)
  • 收藏
  • 关注

原创 ubuntu20.04 下载 linux源码和编译简单测试模块

未解压前,/usr/src/ 目录下 已经有两个 linux-header-5.15.0的目录,一个是带有generic,说明是通用头文件。但这个下载的默认是linux-source-5.4.0 - Linux kernel source for version 5.4.0 with Ubuntu patches. 放在了/usr/src/目录下。下载 sudo apt-get install linux-hwe-5.15-source-5.15.0 后,就下面几个文件,肯定不是源码。可以现在对应版本的。

2023-04-04 10:13:11 2301

原创 terminator alt + n 不切换tab 的深究收获

在terminator下,默认输入 alt + 1,2会出现 arg 111的输出,这个输出是干嘛的?一直困扰着我,我想用 alt + number 来切换终端,在terminal bash 这种终端下,默认输入 alt + 2就会快速切换到 某个终端下。其中在preference中有一个配置,就是 enable mnemonics。打开它,在输入 alt 2 时,就会输出 arg 2 然后输入一个字母,终端就会快速将输入的字母重复 arg中数字的次数,进行输出,从而完成快速N个相同字母的目的。

2022-02-21 16:21:11 579 1

原创 linux练习 十一 信号的阻塞和捕捉

#include #include #include #include #include void myfunc(int signo){ if(SIGQUIT == signo) { printf("recv SIGQUIT sig\n"); } else if(SIGINT == signo) { printf

2017-12-19 20:01:59 321

原创 llinux C练习十 Tcp通信select实现简易聊天

用select 和Tcp通信实现服务器和客户端两者的聊天//TcpChatServer.c#include #include #include #include #include #include #include #include #include #define RET_VAL(VAL,FUNC_NAME) do{\ if(VAL

2017-12-19 14:54:20 1218

原创 linux 练习七 线程键用有名管道FIFO通信

题目:利用多线程与有名管道技术,实现两个进程之间发送即时消息,实现聊天功能思路:关键在于建立两个有名管道,利用多线程技术,进程A中线程1向管道A写数据,进程B中线程2从管道A读数据,进程A线程2从管道B中读数据,进程B中线程1往管道B中写数据//线程和FIFO练习//pthreadtest.c#include #include #include #include #inc

2017-12-07 08:47:31 395

原创 linux 练习六 守护进程_文件锁_系统时间

题目:自己动手实现一个守护进程,当控制台窗口关闭时还可以在后台运行。每隔一秒钟向my.log文件中插入一条记录,记录格式如下:yyyy-mm-dd hh:mi:se 记录内容,其中yyyy为年,mm为月,dd为天,hh为小时,mi为分钟, se为秒。//writelog.c 多进程文件锁互斥写文件#include #include #include #include #i

2017-12-05 21:27:08 391

原创 linux 练习六 信号的发送与信号处理

题目:实现两个程序mysignal、mycontrl,mycontrl给mysignal发送SIGINT信号,控制mysignal是否在屏幕打印“hello”字符串。//mycontrol.c #include #include #include #include #include int main(int argc , char *argv[]){ pid_t

2017-12-02 21:31:42 628

原创 linux 练习五 如何生成库.so及被C和C++程序可用

题目:实现一个so库文件名称为listupper.so,so文件中实现一个函数,函数名为void upper(const char *src, char *desc),调用update后将参数src所指向的字符串中所有字符转化为大写字母,结果放入desc字符串中。分别用C语言编写一个程序test1,调用libupper.so中的upper函数,用C++语言编写一个程序test2,调用lib

2017-11-30 17:10:49 354

原创 linux 练习四 共享内存练习

题目:编写两个进程,a和b,利用共享内存技术,a向共享内存写字符串,b从共享内存把字符串读出来,并显示在屏幕上/* 目标 编写两个进程a和b,利用共享内存技术, * a向共享内存写字符串,b从共享内存中读取 * 字符串并显示在屏幕上 */shmwrite.c#include #include #include #include #include #include

2017-11-30 09:55:29 406

原创 linux 练习三 fork函数和exev函数族

编写两个不同的可执行程序,名称分别为a和b,b为a的子进程。在a程序中调用open函数打开a.txt文件。在b程序不可以调用open或者fopen,只允许调用read函数来实现读取a.txt文件。(a程序中可以使用 fork与execve函数创建子进程)。a.c//fork函数 父子进程 共享(复制)文件描述符#include #include #include #incl

2017-11-29 12:46:36 745

原创 Linux 练习二

实现一个类似于计算器的程序 #include #include #include int caltest(int a,char fuhao,int b);int main(int argc, char*argv[]){ int i = 0; int a = 0; int b = 0; int result = 0; if(argc < 4)

2017-11-28 11:37:17 202

原创 linux C 练习一

目标:编写一个程序读取a.txt文件,将文件内容数字从小到大排序,并将排序结果写入b.txt。#include #include #include int main(int argc,char * argv[]){ FILE * fptr = NULL; char buf[5]; int num = 0; int maxnum = 0; int

2017-11-28 09:42:36 347

原创 matlab 写 google earth 所用的kml文件

kmlwrite()kmlwriteline()

2016-09-18 17:09:07 4522

转载 矩阵的点乘与叉乘

向量:u=(u1,u2,u3) v=(v1,v2,v3)叉积公式:u x v = { u2v3-v2u3 ,u3v1-v3u1 ,u1v2-u2v1 }点积公式:u * v = u1v1+u2v2+u3v33=lul*lvl*COS(U,V)对于向量的运算,还有两个“乘法”,那就是点乘和叉乘了.点乘的结果就是两个向量的模相乘,然后再与这两个向量的夹角的余弦值相乘.或者说是两个向量的各个

2016-07-25 21:18:56 8181

转载 理解矩阵乘法

大多数人在高中,或者大学低年级,都上过一门课《线性代数》。这门课其实是教矩阵。刚学的时候,还蛮简单的,矩阵加法就是相同位置的数字加一下。矩阵减法也类似。矩阵乘以一个常数,就是所有位置都乘以这个数。但是,等到矩阵乘以矩阵的时候,一切就不一样了。这个结果是怎么算出来的?教科书告诉你,计算规则是,第一个矩阵第一行的每个数字(

2016-07-25 21:05:44 342

转载 飞行器姿态角

百度上居然搜不到俯仰滚转和偏航的定义,可见大家的浮躁了,没事摇一摇都不干正事了,整理了一下资料,公布给大家。要了解飞机姿态,需要首先知道什么是地面坐标系和机体坐标系。■地面坐标系(earth-surface inertial reference frame)Sg--------Oxgygzg①在地面上选一点Og②使xg轴在水平面内并指向某一方向③zg轴垂直于地面并指

2016-07-25 20:37:09 1867

转载 #if defined和#if !defined(c语言的宏定义)

因为对于一个大程序而言,我们可能要定义很多常量( 不管是放在源文件还是头文件 ),那么我们有时考虑定义某个常量时,我们就必须返回检查原来此常量是否定义,但这样做很麻烦.if defined宏正是为这种情况提供了解决方案.举个例子,如下: #define .... #define ....     ....     .... #define a 100     .... 

2016-07-21 10:45:51 384

转载 f_sync解决fatfs文件掉电数据丢失问题

临界段When write operation to the FAT file system is interrupted due to any accidental failure, such as sudden blackout, incorrect disk removal and unrecoverable disk error, the FAT structure can b

2016-06-29 09:37:25 5330

转载 有关SD卡接线的探索(为什么标准SD卡是九根线,而一般原理图上都是11根线或更多呢?)

版权声明:本文为博主原创文章,转载请注明出处,谢谢!首先说几个概念:SD卡:SDHC卡(SD High Capacity,大容量SD卡):4GB~32GBSDXC卡(SD eXtended Capacity):64GB~2TB,这是2009年SD协会发布的新标准SDIO:SD Input Output 带有输入输出设备的SD卡 SD技术是一个大家族,由SD协会负

2016-06-29 09:35:09 1070

转载 新手学堂之有刷/无刷动力电调与马达知识

新手学堂之有刷-无刷动力知识FunRC Studio原创资料,只发RCFANS,如需转载务必注明出处。模型车需要行驶,就跟真车一样,需要一套动力单元,也有分电动和油动,至于混合动力这个估计就不需要奢望了,对于车模这么小的空间来说是不现实的,而且模型车也不需要考虑燃油经济性的问题。本文则重点介绍电动模型的动力单元。电动模型的动力,主要是指2个元件:第一就是带动

2016-06-16 18:01:42 28544 1

转载 飞控信号SBUS信号解析为PWM信号输出

飞控信号SBUS信号解析为PWM信号输出 1.修改STM32时钟频率: static void SetSysClockTo72(void) { __IO uint32_t StartUpCounter = 0, HSEStatus = 0;/!/ /!/ RCC->CR |= ((uint32_t)RCC_CR_HSEON);/!/ do { H

2016-06-16 17:00:34 20444 4

转载 STM32定时器

STM32的定时器功能很强大,学习起来也很费劲儿.其实手册讲的还是挺全面的,只是无奈TIMER的功能太复杂,所以显得手册很难懂,我就是通过这样看手册:while(!SUCCESS){看手册…}才搞明白的!所以接下来我以手册的顺序为主线,增加一些自己的理解,并通过11个例程对TIMER做个剖析。实验环境是STM103V100的实验板,MDK3.2 +Library2.东西都不怎么新,凑合用…

2016-06-16 16:44:05 1331

原创 之前好好的 JLink SWD can not enter debug mode

之前Jlink烧写同一块板是好好,后来在Jlink SWD的线又并联了一组线,再烧写就不成功了,老是出现can not enter debug mode后来将并联的一组先给去掉了就好了,希望可以帮到大家。

2016-06-16 10:51:58 6825

原创 HID从设备连接电脑获取描述符分析

Bus Hound 6.01 capture on Windows Vista (x64). Complements of www.perisoft.net  Device - Device ID (followed by the endpoint for USB devices)            (18) Generic USB Hub            (29)

2016-06-03 08:31:50 3894

转载 ARM 浮点运算详解 另一篇

这篇文章对最近遇到上的 ARM上浮点运算的问题做一个总结。首先,我们先看一下ARM处理器是如何处理浮点运算的。交叉编译器在编译的时候,对于浮点运行会预 设硬浮点运算FPA(Float Point Architecture),而没有FPA的CPU,比如SAMSUNG S3C2410/S3C2440,会使用FPE(Float Point Emulation 即软浮点),这样在速度上就会

2016-05-25 12:37:42 968

转载 ARM 浮点运算详解

一:早期ARM上的浮点模拟器:早期的ARM没有协处理器,所以浮点运算是由CPU来模拟的,即所需浮点运算均在浮点运算模拟器(float math emulation)上进行,需要的浮点运算,常要耗费数千个循环才能执行完毕,因此特别缓慢。直到今天,在ARM Kernel配置时,都有如下选项:Floating point emulation  --->[ ] NWFPE

2016-05-25 12:35:35 1813

转载 安装 WINE

安装 WINE 安装完 Wine ,先要运行一下 winecfg 英文 wine 官方用户指南 中文 wine 用户指南 一、自Ubuntu 软件库 进行 apt-get 安装 不推荐 sudo apt-get update sudo apt-get install wine 二、从Wine HQ 进行 apt-get

2016-05-24 18:22:33 465

转载 window用ssh连接本机虚拟机NAT方式中的ubuntu

主机和虚拟机间通信,需将2台机器的IP地址设为同一网段。1、设置虚拟机: 虚拟机–> 设置–> Hardware –> Network Adapter,在网络连接处设置为 “桥接:直接连接到物理网络”,“NAT:使用已共享的主机IP地址”处打勾。2、window和虚拟机下ubuntu的IP地址设为同一网段Ubuntu配置和修改IP地址请看:http://www.tieguanyin

2016-05-22 20:52:15 1621

原创 JLink和JFlash使用方法笔记

这段时间在用jlink调试freescale的mx51板子,下面将使用jlink的方法在此做一个笔记。   jlink是segger公司的产品,由于正版的工具巨贵,所以现在大部分人都喜欢用山寨版的jlink,幸运的是我的山寨版jlink支持arm cortex a8,所以能调试mx51板子。   jlink的官方提供调试软件和驱动,调试软件有jlink commander(j-ta

2016-05-22 00:46:55 38578

原创 ubuntu terminator字体挤在一起问题 大小设置

对Linux系统进行管理时,我们经常需要通过终端窗口输入各种操作命令。在GNOME桌面环境下,GNOME终端(gnome-terminal) 是我们经常使用的终端程序,每次运行该程序都将打开一个单独的终端窗口。当我们进行命令行操作时,有时需要打开多个终端窗口,并且希望这些窗口能同时平铺显示,那该怎么办呢?其实,借助一款小巧而实用的软件——Terminator就可以轻松实现这一功能。使用Te

2016-05-21 20:41:02 5369 1

原创 ubuntu安装vmware tool

vmware11中的 ubuntu16.05 在安装vmware tool过程中出现了错误,发现在vmware-configl.pl执行过程中nb_set_link函数没有定义错误,导致文件夹共享不能成功。换个vmware版本试试。换了一个Vmware12就可以了。进入root认证失败的解决办法sudo passwd共享文件夹:在vmware 选项中设置共享文件夹,在u

2016-05-21 18:15:10 622

转载 ubuntu终端su认证失败:允许su到root的方法

Ubuntu 安装后,root用户默认被锁定,不允许登录,也不允许“su”到 root。对于桌面用户来说,这样安全性更高一些,但对于服务器可以设置成“允许 su 到root,但不允许root用户直接登录”。为了开发时的方便,我们常希望都采用这种方式,那么我们应该怎么办呢?请参考本文讨论的方法与建议。1、允许 su 到 root非常简单,下面是设置的方法:~$ sud

2016-05-21 11:04:19 441

原创 Ubuntu 16.04下安装VMware Tools

在VMware下安装Ubuntu,那么必须安装VMware-tools,才能获得更好的体验,包括屏幕分辨率、声音、和windows共享剪贴板等等。 个人觉得安装vmware-tools很重要的几点:1,切换不用再CTRL+ALR了。2,虚拟机与主机之间可以直接复制粘贴东西了,就是上面说的剪切板共享。3,主机给虚拟机共享文件,不用再用FTP,或者是通过聊天软件传文件了

2016-05-21 11:02:15 8028

转载 UTMI及USB 2.0 PHY高速传输特性分析

1. 概述USB2.0利用传输时序的缩短(微帧125us)以及相关的传输技术,将整个传输速度从原来的12Mbps提高到480Mbps,提高了40倍的带宽,为开发高宽带USB接口产品提供条件。USB2.0支持USB1.1的全速(Full Speed)和低速(Low Speed)工作环境,其电气特性在其他文献中有描述[6],这里主要介绍USB2.0高速设备的电气特性以及相关的UTMI接口规范。UT

2016-05-20 13:11:15 8585

转载 USB协议架构及驱动架构

1. USB协议1.1 USB主机系统       在USB主机系统中,通过根集线器与外部USB从机设备相连的处理芯片,称为USB主机控制器。USB主机控制器包含硬件、软件和固件一部分。1.2 USB设备系统        USB设备按功能分为两部分:集线器(Hub)和功能部件。从下图可知,主机通过根集线器连接到各种外围设备(集线器和功能部件)。1.

2016-05-20 10:36:29 360

转载 USB详解(转)

USB详解usb作为一种串行接口,应用日益广泛。如同每个工程设计人员必须掌握I2C,RS232这些接口一样,我们也必须掌握usb.但是usb的接口协议实在有点费解,linux uhci驱动作者之一Alan Stern曾经就说过“The USB documentation is downright evil. Most    of it is just crap, writt

2016-05-20 10:34:18 505

转载 USB2.0描述符小结

描述符(descriptor)是一个数据结构,使主机了解设备的格式化信息。每一个描述符可能包含整个设备的信息,或是设备中的一个组件。所有的USB外围设备,都必须对标准的USB描述符作出响应。    在检测设备的期间,主机使用控制传输来要求设备传回描述符。表1列出了描述符的类型。在检测设备的过程中,要求的描述符首先是整个设备,然后是每一个设置配置,每一个设置配置的接口,最后是每一个接口的断点

2016-05-20 09:28:47 607

转载 USB协议 检测设备连接与速度

USB协议-检测设备连接与速度在USB设备连接时,USB系统能自动检测到这个连接,并识别出其采用的数据传输速率。USB采用在D+或D-线上增加上拉电阻的方法来识别低速和全速设备。USB支持3种类型的传输速率:1.5Mb/s的低速传输、12Mb/s的全速传输和480Mb/s的高速传输。当主控制器或集线器的下行端口上没有USB设备连接时,其D+和D-线上的下拉电阻使得这两条数据线的

2016-05-20 09:26:59 1057

原创 LWIP UDP socket编程 可以指定本地端口号及发送长度不能太长问题分析

发送方:/*   * File:   main.c  * Author: tianshuai  *  * Created on 2011年11月29日, 下午10:34  *  * 主要实现:发送20个文本消息,然后再发送一个终止消息  */    #include   #include     #include   #include   #include   #include   #

2016-03-01 17:02:44 5501

原创 ucos 多任务操作系统 无法仿真 系统不运行的调试方法

最近调试一个ucos多任务操作系统,没有使用jlink仿真,系统运行几秒钟,运行灯不亮了。由于没有仿真,不能通过暂停查看当前程序运行在哪里。步骤1:通过建立一个硬件定时器,定时打印当前任务的名称,OSTCBCurPtr->NamePtr;步骤2:经过步骤1后,还是找不到原因,将打印消息的语句修改为通过串口直接打印,不经过任务查询输出。经过这两部后,就能看到打印输出的语句了。

2016-02-22 15:27:22 2759

基于STM32Cube上的FatFS的开发应用程序

STM32Cube上关于FATFS的应用。讲解了FATFS的特性,配置,API接口等,中文的。值得下载

2016-04-26

好用的串口工具

这是exe文件,很好用

2016-04-26

fat文件系统原理

讲解FAT文件系统最详细的文档,包括FAT12,FAT16,FAT32。

2016-01-24

GUN ld中文使用手册.pdf

GUN ld中文使用手册是学习链接脚本非常不错的文档,内容多且详细,适合学习。特此推荐

2015-11-19

gnu-ld链接脚本浅析.pdf

非常好的GNU的链接脚本讲解文档,也适合非GNU开发的KEIL,IAR等开发工具使用者学习,方便更深入的使用工具

2015-11-19

wire shark 1.10.8

可配置过滤信息的网络报文捕获软件,官网获取的英文稳定版

2014-07-10

vb滚轮实现插件

好用的vb滚轮插件,解压缩后,打开方式选择C:\WINDOWS\SYSTEM32\regsvr32程序进行注册,然后在vb菜单栏中选择Add-In中Add-In Manager中选中MouseWheel Fix ,然后选中下面的Load on startup和Load/Unload,即可

2013-10-29

jcbutton按钮控件

样式比较多的按钮控件。使用vb。免费的,大家试试.这也是我下载的,用的时候不要完全相信它

2012-11-12

开机启动时自动进入系统,之后注销了或切换用户时需要密码

上次没说清楚,这次完善了。要在开始菜单-》运行里面输入文档里的语句。

2012-09-17

越过登录密码进入系统,注销后需要输入密码

在开机时不需要输入密码即可进入系统,注销后就需要密码了

2012-09-15

推挽输出与开漏输出的区别

详细介绍了推挽输出和开漏输出的概念,以及它们之间的区别

2011-06-04

稳压器BL8503的中文资料

详细介绍了BL8503的各种参数,参数的仿真图,以及应用连接图。

2011-06-04

空空如也

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

TA关注的人

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