自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (6)
  • 收藏
  • 关注

原创 VSCODE ctrl+左键 无法跳转的问题!

直到今天,我全局搜索了和vscode相关的文件,全部删除,之后,ctrl+左键重新起了作用。所以猜想,应该是缓存把一些版本或者功能给保持了,即使重装新的插件,它仍然去使用缓存的内容,只有删除了缓存,才能算彻底地删除和卸载。vscode使用一段时间后,常常会出现ctrl+左键无法跳转进函数体的问题,很多情况下是由于vscode的插件和本身的版本不断更新,有的时候可能版本之间匹配得不是很好,导致ctrl+左键不起作用,一般这种情况下,重装插件,甚至是重装vscode就能够解决问题。

2023-04-11 16:12:45 9131

原创 MMAP的原理过程解析

mmap的原理

2023-04-08 12:15:51 144

原创 gdb 调试 no debugging symbols

gdb 调试 no debugging symbols, dwarf

2023-02-22 19:33:19 1478

原创 C# 串口通信 stm32 电机

前几天已经完成了stm32通过PWM对电机的控制,这几天趁上班之余,也完成了c#通过串口通信控制电机的运行。界面如下好久没写文章了,发现非常不擅长分享和表达,第一反应是演示出来,可惜这里不能有动画,功能不强大啊。哪天有空了,把上位机代码和下位机代码上传上来。代码已经上传,请查看我的资源页。...

2018-08-10 22:48:04 4292 7

原创 stm32通过pwm控制导轨电机

通过一段时间的实践,经过自己摸索,终于通过stm32发出PWM去控制电机的运行。以下将详细讲解整个设备的搭建过程,不算复杂的项目,但是初次玩电机的朋友也可能能够从中获取到一些方法。项目具体是,通过stm32发出PWM去控制电机,使得导轨上的平台沿着导轨左右移动。从而通过程序控制电机的启动,速度,方向,停止。先上图如下 四样东西从左到右分别是电机导轨,电机驱动器,stm32开发板...

2018-08-04 00:16:53 3853 3

转载 关于ANSI,unicode与utf-8的区别

非常好的一篇文章,值得一看,特转之关于编码ansi、GB2312、unicode与utf-8的区别先做一个小小的试验:在一个文件夹里,把一个txt文本(文本里包含“今天的天气非常好”这句话)分别另存为ansi、unicode、utf-8这三种编码的txt文件。然后,在该文件夹上点击右键,选择“搜索(E)…”。搜索“天气”二字,可以搜索出ansi和unicode这两种编码的txt文件,搜索不出u...

2018-06-29 14:29:01 1104

转载 Socket原理与编程基础

一、Socket简介Socket是进程通讯的一种方式,即调用这个网络库的一些API函数实现分布在不同主机的相关进程之间的数据交换。几个定义:(1)IP地址:即依照TCP/IP协议分配给本地主机的网络地址,两个进程要通讯,任一进程首先要知道通讯对方的位置,即对方的IP。(2)端口号:用来辨别本地通讯进程,一个本地的进程在通讯时均会占用一个端口号,不同的进程端口号不同,因此在通

2016-05-27 18:48:52 1471

原创 关于使用JAVA调用c 或者c++的DLL的吐槽

关于使用JAVA调用c 或者c++的DLL的

2014-09-09 19:29:26 1420

转载 浅谈C中的malloc和free

原帖及讨论:http://bbs.bccn.net/thread-82212-1-1.html    在C语言的学习中,对内存管理这部分的知识掌握尤其重要!之前对C中的malloc()和free()两个函数的了解甚少,只知道大概该怎么用——就是malloc然后free就一切OK了。当然现在对这两个函数的体会也不见得多,不过对于本文章第三部分的内容倒是有了转折性的认识,所以写下这篇文章作为一

2014-09-05 17:00:41 686

转载 this super 介绍

通过用static来定义方法或成员,为我们编程提供了某种便利,从某种程度上可以说它类似于C语言中的全局函数和全局变量。但是,并不是说有了这种便利,你便可以随处使用,如果那样的话,你便需要认真考虑一下自己是否在用面向对象的思想编程,自己的程序是否是面向对象的。 好了,现在开始讨论this&super这两个关键字的意义和用法。 在Java中,this通常指当前对象,super则指父类的

2014-08-10 10:58:38 498

原创 arm str ldr case

在ARM架构下, 数据从内存到CPU之间的移动只能通过LDR/STR指令来完成.而MOV只能在寄存器之间移动数据,或者把立即数移动到寄存器中,并且数据的长度不能超过8位1. LDR r0,=label 用于加载立即数或一个地址值到指定寄存器中1.1 如果label是立即数: LDR r0,=0X123;将0X123存入r0中1.2 如果name是个标识符: LDR r0,=

2013-05-05 08:05:24 663

转载 ARM指令:BIC

Rd,  Rn, Oprand2BIC(位清除)指令对 Rn 中的值 和 Operand2 值的反码按位进行逻辑“与”运算。 (注意:ARM官方网站有误, 写的是补码)BIC 是 逻辑”与非” 指令, 实现的 Bit Clear的功能举例:BIC     R0,   R0  , #0xF0000000#将 R0  高4位清零BIC    R1,  R1,   #

2012-12-20 18:09:44 2535

原创 宏的优缺点

优点:1. 提高了程序的可读性,同时也方便进行修改;2. 提高程序的运行效率:使用带参的宏定义既可完成函数调用的功能,又能避免函数的出栈与入栈操作,减少系统开销,提高运行效率;3.宏是由预处理器处理的,通过字符串操作可以完成很多编译器无法实现的功能。比如##连接符。缺点:1. 由于是直接嵌入的,所以代码可能相对多一点;2. 嵌套定义过多可能会影响程序的可读性,而且很容易出错

2012-12-18 22:51:09 1575

转载 字节序 大端 小端

在各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机通信领 域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正 确的编/译码从而导致通信失败。目前在各种体系的计算机中通常采用的字节存储机制主要有两种:Big-Endian和Little-Endian,下面先 从字节序说起。

2012-11-19 09:24:03 1169

转载 ARM汇编指令MCR/MRC学习

MCR指令将ARM处理器的寄存器中的数据传送到协处理器的寄存器中。如果协处理器不能成功地执行该操作,将产生未定义的指令异常中断。指令的语法格式:MCR{} p15, 0, , , {,}MCR2 p15, 0, , , {,}其中,为指令执行的条件码。当忽略时指令为无条件执行。MCR2中,为Ob1111,指令为无条件执行指令。 为协处理器将执行的操作的操作码

2012-10-29 14:43:28 23454

转载 norflash芯片内执行(XIP)

为什么程序不能直接在nandflash上执行?出于这个疑惑带来了这篇博文,是我在网上找了很多资料后总结的,假如有误,希望马上指出来,免得我误人子弟。谢谢!首先认识下nandflash和norflash:NOR Flash 和 NAND Flash是现在市场上两种主要的非易失闪存技术。Intel于1988年首先开发出NOR Flash技术,彻底改变了原先由EPROM(El

2012-10-28 22:20:22 17655 5

转载 nor flash

.NOR Flash的介绍   NOR FLASH 是很常见的一种存储芯片,数据掉电不会丢失。NOR FLASH支持Execute ON Chip,即程序可以直接在FLASH片内执行。这点和NAND FLASH不一样。因此,在嵌入是系统中,NOR FLASH很适合作为启动程序的存储介质。NOR FLASH的读取和RAM很类似,但不可以直接进行写操作。对NOR FLASH的写操作需要遵循特定的命

2012-10-28 22:18:12 3754 2

转载 vim 基本命令

1.vim#在命令行中输入vim,进入vim编辑器2.i#按一下i键,下端显示 --INSERT--#插入命令,在vim中可能任意字符都有作用3.Esc#退出i(插入)命令进行其它命令使用4.:r filename#读入一个文件内容,并写入到当前编辑器中5.:w newfilename#将该编辑器中的内容写入到一个新文件中6.:w

2012-10-10 13:16:48 1325 2

转载 关于vs2005、vs2008和vs2010项目互转的总结

有做.net的程序员和朋友曾经问过我,关于vs2005和vs2008、vs2008和vs2010、vs2005和vs2010项目互转的问题,那么关于这个问题有两层含义:一种是通过高版本的编译器打开低版本的项目,进行升级;一种是通过修改Soultion文件和Project文件,可以打开编译。第一种方法,相信大家都可以做到。我主张用第二种方法,这种方法灵活多变,既可以从低版本升级到高版本,又可以从高版

2012-09-28 09:50:40 7867 3

转载 WM_CREATE和WM_INITDIALOG消息响应函数之区别,以及MFC应用程序中处理消息的

在响应WM_CREATE消息响应函数的时候,对话框及子控件还未创建完成,亦是说只是通知系统说要开始创建窗口啦,这个消息响应完之后,对话框和子控件才开始创建。因此在此消息响应函数中无法对控件进行修改和初始化。而WM_INITDIALOG消息响应函数是在程序运行时,当其对话框和子控件全部创建完毕,将要显示内容的时候发送的消息。因此可以在WM_INITDIALOG消息响应函数中添加对编辑框控件的初始

2012-09-25 22:59:45 1865

转载 回调函数的作用与实现

简介  对于很多初学者来说,往往觉得回调函数很神秘,很想知道回调函数的工作原理。本文将要解释什么是回调函数、它们有什么好处、为什么要使用它们等等问题,在开始之前,假设你已经熟知了函数指针。   什么是回调函数?  简而言之,回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数。

2012-08-10 17:18:36 7033

转载 MFC中TAB CONTROL的使用

1、首先创建一个MFC对话框框架,在对话框资源上从工具箱中添加上一个Tab Control 控件,根据需要修改一下属性,然后右击控件,为这个控件添加一个变量,将此控件跟一个CTabCtrl类变量绑定在一起,这里设为m_tabctrl2、创建两个新的对话框资源,其属性作如下修改:Border:none //边界为空,这样它就没了标题栏Style :Child // 这样这个模板就可以当作

2012-08-10 14:45:26 4942

转载 the superiority of ARM Cortex-M3

ARM Cortex-M3相比于ARM其他系列微控制器,具有以下优势或特点:1. 三级流水线+分支预测  ARM Cortex-M3与ARM7内核一样,采用适合于微控制器应用的三级流水线,但增加了分支预测功能。  现代处理器大多采用指令预取和流水线技术,以提高处理器的指令执行速度。流水线处理器在正常执行指令时,如果碰到分支(跳转)指令,由于指令执行的顺序可能会发生变化,指令预取队列和流

2012-08-01 13:38:17 1126

转载 ARM中的RO、RW和ZI DATA说明

RO段、RW段和ZI段            一直以来对于ARM体系中所描述的RO,RW和ZI数据存在似是而非的理解,这段时间对其仔细了解了一番,发现了一些规律,理解了一些以前书本上有的但是不理解的东西,我想应该有不少人也有和我同样的困惑,因此将我的一些关于RO,RW和ZI的理解写出来,希望能对大家有所帮助。            要了解RO,RW和ZI需要首先了解以下知识:

2012-07-30 06:45:14 824

转载 查看电脑开放了哪些端口

一、如何查看电脑开放了哪些端口1、利用netstat命令Windows提供了netstat命令,可以显示当前的 TCP/IP 网络连接情况。方法:开始——程序——附件——命令提示符,进入DOS窗口,输入命令 netstat -na 回车,就可以显示本机连接情况及打开的端口。其中Local Address代表本机IP地址和打开的端口号,Foreign Address是远程计算机IP地址和

2012-06-23 17:26:47 14844

转载 bat 文件

bat是dos下的批处理文件 .cmd是nt内核命令行环境的另一种批处理文件 从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言

2012-06-23 14:31:46 930

转载 什么是计算机端口?主要有什么用?怎样设置?

端口简介 随着计算机网络技术的发展,原来物理上的接口(如键盘、鼠标、网卡、显示卡等输入/输出接口)已不能满足网络通信的要求,TCP/IP协议作为网络通信的标准协议就解决了这个通信难题。TCP/IP协议集成到操作系统的内核中,这就相当于在操作系统中引入了一种新的输入/输出接口技术,因为在TCP/IP协议中引入了一种称之为"Socket(套接字)"应用程序接口。有了这样一种接口技术,一台计算机

2012-05-30 14:46:30 7428

转载 阻塞、非阻塞的概念和select函数的阻塞功能

(1)阻塞block所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回。例如socket编程中connect、accept、recv、recvfrom这样的阻塞程序。再如绝大多数的函数调用、语句执行,严格来说,他们都是以阻塞方式执行的。(2)非阻塞non-block所谓非阻塞方式non

2012-05-29 21:52:30 1688

转载 指针函数和函数指针

一、指针函数当一个函数声明其返回值为一个指针时,实际上就是返回一个地址给调用函数,以用于需要指针或地址的表达式中。格式:类型说明符 * 函数名(参数)当然了,由于返回的是一个地址,所以类型说明符一般都是int。例如:int *GetDate();int * aaa(int,int);函数返回的是一个地址值,经常使用在返回数组的某一元素地址上。int * GetD

2012-05-26 22:08:41 505

转载 单播、多播和广播

当前的网络中有三种通讯模式:单播、广播、组播(多播),其中的组播出现时间最晚但同时具备单播和广播的优点,最具有发展前景。 一、单播:  主机之间“一对一”的通讯模式,网络中的交换机和路由器对数据只进行转发不进行复制。如果10个客户机需要相同的数据,则服务器需要逐一传送,重复10次相同的工作。但由于其能够针对每个客户的及时响应,所以现在的网页浏览全部都是采用IP单播协议。网络中的路由

2012-05-26 11:11:23 557

转载 windows 下的网络编程

用简单的代码和演示说明了WinSocket的使用一般必要步骤。先看看程序执行的效果吧:UDP程序" name="image_operate_26381299510550204" alt="一个简单的Winsocket UDP程序" src="http://s3.sinaimg.cn/middle/628c2910x9de562c13bf2&690" width="529" height="

2012-05-24 21:25:22 585

转载 scanf()与gets()在读取字符串时的区别

1 用scanf()函数输入字符串时,%c表示以字符的形式输入数据,每次为一个数组元素输入一个字符常量;%s表示以字符串的形式输入数据,每次为一个数组输入一个字符串.  2 以%s的形式输入字符串时,除了输入的字符串本身的内容被保存到数组中,字符串尾部的\0也会被自动保存再字符数组中.  3 以%s的形式输入字符串时,存入到字符数组中的内容从输入字符的第一个非空白字符开始,直到遇到下一个空

2012-05-10 18:15:10 2250

转载 C-Kermit在linux 下的安装和使用

1. 到http://www.columbia.edu/kermit/ckdaily.html下载ckermit源码x.tar.gz版本:0.9因为较低的版本不支持波特率9216002.编译ckermittar xzvf x.tar.gz -C ckermitcd ckermitmake linux编译成功后, 会产生可执行文件wermit3.描述|--

2012-05-03 11:08:33 11370

转载 Linux 中 RPM 命令参数使用详解

在Linux操作系统中,有一个系统软件包,它的功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是Red Hat Package Manager(简称RPM)。此工具包最先是由RedHat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就给大家介绍一下它的具体使用方法。

2012-05-03 10:35:00 604

转载 QT Designer 使用入门例子

前面: 这里只是告诉大家一种如何快速学习QT的方法.这里也只对QT Designer 和QT作一个简单的介绍.让没有写过QT的人能对QT有一个初步的认识.如果您真的对QT Programming很有兴趣.这里我建议您去看看O'REILY出版的Programming with QT和Bible出版的KDE 2 /QT Programming.这两本书将会给您带来一个好的开始.这篇文章适合您吗

2012-05-01 20:29:25 18483

转载 mkdir命令(建立一个目录) rmdir命令(删除一个目录) rm命令(删除文件)

mkdir命令(建立一个目录) 功能:创建一个目录(类似DOS下的md命令)。语法:mkdir [选项] dirname 说明:该命令创建由dirname命名的目录。要求创建目录的用户在当前目录中 (dirname的父目录中)具有写权限,并且dirname不能是当前目录中已有的目录或文件名称。参数:- m 对新建目录设置存取权限。也可以用chmod命令设置。- p 可以是一

2012-04-30 21:22:04 15252

转载 查看文件系统类型

虽然说,在Linux下mount一个文件系统时,可以不指定文件系统。这时候,操作系统会尝试用所有它已知的文件系统格式去挂载。大多数情况下,都会正确的挂载。但不要忘了,它同时也提醒你,如果你的数据非常重要,请不要让系统去自动识别文件系统格式。如果她识别格式错误将会给你带来致命的错误。那么当你不知道一个文件系统是什么格式时,怎么去挂载这个系统,就是你要面对的问题。本文提供了两种查看文件系统的方式,其中

2012-04-30 21:04:43 4890

转载 Linux不同颜色文件类型/权限/属性

Linux不同颜色文件类型/权限/属性蓝色文件----------目录白色文件----------一般性文件,如文本文件,配置文件,源码文件等浅蓝色文件----------链接文件,主要是使用ln命令建立的文件绿色文件----------可执行文件,可执行的程序红色文件-----------压缩文件或者包文件红色闪烁-------表示链接的文件有问题

2012-04-30 15:16:06 5039

转载 chmod

指令名称 : chmod  使用权限 : 所有使用者  使用方式 : chmod [-cfvR] [--help] [--version] mode file...  说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。  参数格式 :  mode : 权限设定字串,格式如下

2012-04-29 16:12:15 472

转载 find用法

find . -name "jia" -o -wholename './files' -prune在当前目录及除./files的其他子目录下查找名为jia的文件,并输出文件的路径,注意输出会多了个./files递归查找文件内的字符串 find . -name "*.h" -exec grep "sockaddr_in" {} \; -print这条命令将查找所有包含 soc

2012-04-29 09:08:56 470

STM32接收C#上位机命令控制电机,和根据红外线判断电机位置

使用STM32通过串口接收来自C#上位机的命令,下位机通过PWM控制电机的速度,控制方向和距离,通过红外线判断电机位置,这样可以保护好电机。

2019-02-24

应用程序控制

c#控制stme32 驱动电机,同时还有红外线判断电机移动位置

2019-02-24

uCOS-III 移植到stm32

uCOS-III 移植到stm32 的详细过程解析, 欢迎各位踊跃下载

2012-04-05

嵌入式实时操作系统 uCOS-II

邵贝贝老师翻译的 嵌入式实时操作系统 uCOS-II 第二版 欢迎大家一起下载共享

2012-04-05

usb通信协议

usb通信协议,非常好的资源,讲得很全面很清楚,希望大家一起共勉。

2012-04-04

LDPC 的详细解析

LDPC的详细解析,国内第一本系统介绍LDPC编码、译码基本原理及其应用技术的著作。

2012-04-04

空空如也

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

TA关注的人

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