自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

u012411027的专栏

在不断探索中,获得进取的动力!

  • 博客(26)
  • 资源 (5)
  • 收藏
  • 关注

原创 深入理解派生类

虚函数是在基类中声明的一种特殊函数,它可以被派生类重写。需要注意的是,在派生类的构造函数中,如果没有显式地调用基类的构造函数,则会调用默认的基类构造函数。总的来说,派生类构造顺序是按照基类构造函数、成员对象构造函数、派生类构造函数的顺序依次执行的,需要开发者根据实际情况进行调用和传递参数的处理。在调用派生类的构造函数前,基类的构造函数和成员对象的构造函数都已经完成了。因此,在派生类的构造函数中,可以直接使用基类的成员和成员对象。同时,在派生类的构造函数中,也可以显式地调用基类的构造函数,并传递相应的参数。

2023-08-06 11:29:41 127

原创 2021-02-14

一行脚本统计出开源项目中的所有头文件grep -irn "#include*" ./|awk '{print $2}'|sort -u

2021-02-14 20:09:28 108

原创 搭建vim开发环境

搭建vim开发环境一、安装llvm+clang工具这里通过apt进行自动化安装时,llvm和clang工具不会被全部安装,存在很多问题。所以一定要手动编译源码安装。安装过程分成三步:拉取llvm及clang源码、配置及编译、安装拉取llvm及clang源码llvm是开源编译框架,clang是llvm的子项目。在github上有llvm工程可以拉取,同时拉取子模块,就一步到位了,省去指定各个部分的目录。cd ~/Downloadgit clone --recursive https://gith

2020-08-23 21:15:57 519

原创 C语言实现快速排序算法

快速排序C语言实现与分析快速排序是C.A.R.Hoare于1962年发明的。算法的基本思想是:递归。对于一个给定的数组,从中任意选取一个元素,以这个元素为界,将其余元素划分为两个子集,一个子集要求全部小于这个元素,另一个子集要求全部大于或等于这个元素。对这两个子集递归执行这个过程,当某个子集中的元素个数小于2时,终止递归。1.算法分析递归思想在C语言程序设计中,比较独特,并不推荐...

2019-12-01 19:59:14 605

原创 C语言常用类型转换函数实现

常用c语言类型转换1 字符串转换为整型数1.1 分析说明一串数字以字符串的形式表示,并在不同接口间传递,是编程中很常见的。通常情况下,字符串表示的数字,可以直观的看到,但计算机并不这么理解,这只是方便人们直观的看。所以可以使用字符串表示的数字作为输入,当计算机使用它进行运算时,需要转化为实际的数字。1.2 函数实现int atoi(char *s){ int i, n;...

2019-11-24 21:00:17 746

原创 vim 支持markdown 浏览器实时预览功能ubuntu

1.vim-instant-markdown插件该插件支持vim编辑markdown文件时实时预览,不需要手动做任何事情!使用vim打开一个xxx.md文件,浏览器会自动打开一个预览网页,在编辑这个文件的过程中,浏览器会自动更新,并不用保存该文档。2 安装vim-instant-markdown2.1 安装node.jscurl -sL https://deb.nodesource.co...

2019-11-24 13:38:30 1710

转载 浅谈可重入函数与不可重入函数【转】

来自:https://blog.csdn.net/lianghe_work/article/details/476119...

2019-07-12 14:51:56 200

转载 转 linux内存屏障浅析

                                 &...

2019-07-12 14:25:41 99

原创 stm32 史上最简单得GPIO设置

stm32f4 GPIO寄存器设置 说起GPIO设置,是大部分人学单片机得第一步,常常也是最后一步,哈哈。stm32 库函数的GPIO采用结构体实现,洋洋洒洒,让人看不到底。针对库函数和寄存器编程方法的选择,我是这么理解的,如果你想系统学习嵌入式,我劝你放下库函数,拿起寄存器。如果你在快速开发,只是做个应用,那么我劝你用库函数就足够了,本文旨在从零开始,打地基,所以用一用寄存器一砖一瓦吧。本文...

2019-03-12 20:18:07 2267

原创 stm32时钟选择与配置HSL HSE PLL

1. stm32时钟源分析stm32f4有四个时钟源可供选择,分别是:HSE(外部高速),HSI(内部高速), LSE(外部低速), LSL(内部低速)。1.1 外部时钟源一般由外挂晶振产生LSE为32.767KHz晶振输入。HSE为8MHz或16MHz,实验用的是16MHz1.2 内部时钟源一般为内部RC震荡电路LSI 为内部32.767KHz的RC电路HSI 为内部1...

2019-03-07 21:29:37 7451 1

原创 从零单排嵌入式__stm32硬件基础

从零单排嵌入式----stm32硬件基础0.引言   stm32是一款主流的单片机,采用ARM内核设计,由ST公司集成外围器件,设计而成CPU,目前手头有一款stm32f401ret6单片机,后面就使用它来做实验。学习过程主要参考以下三个文档进行:  文档1:Cotex-M4内核原理文档2:stm32f401系列datasheet文档3:stm32f401系列产品...

2019-03-03 17:16:07 438 1

原创 从零单排嵌入式

从零单排嵌入式嵌入式系统是一个广泛而复杂的概念,是一个硬件与软件的综合体。其领域内知识量之丰富,信息量之大可谓林林总总,洋洋洒洒,任何一块内容都能作为一个专题,甚至一个领域来钻研。入门就很难,学精通了就更不容易了。  搞了很久的嵌入式,从单片机裸机,实时操作系统移植应用到linux系统移植应用,犹如爬山,彼山真比此山高,尘埃落定后,蓦然回首还真想把这一路的风景美好记录下来,与后面人共勉。  ...

2019-03-03 11:15:13 156

转载 keil中串口重定向问题

重定向是指用户可以自己重写C语言的库函数,当连接器检查到用户编写了与C语言库函数相同名字的函数时,优先采用用户编写的函数,这样就可以对库函数进行修改了。若要printf( )函数工作,需要把printf( )函数重新定向到串口函数。为了实现重定向 printf( ) 函数,需要重写fputc( )这个C标准库函数,因为printf()在C标准库函数中实质是一个宏,最终是调用了fputc( ...

2018-08-17 09:45:01 1537

转载 docx转doc时,防止公式被转成图片的解决办法

【转载】docx转doc时,防止公式被转成图片的解决办法   编辑社回复需要doc(Word 97-2003)格式的文档,可是将docx(Word 2007+)另存为doc格式时,发现公式被转成了图片。其实,最简单的办法就是,打个电话过去给编辑社:“大爷,拜托您用高版本的Word行吗?” 但是,我是不会这么干的。多番查阅资料,找到原因,并亲身实验找到一个可行的解决办法,也许还有更容易的办法。...

2018-05-04 11:54:14 28035 1

原创 浅析memmove函数之内存重叠

话说上一节说到memcpy函数实现没有考虑内存重叠问题,难道C库函数故意留一个bug吗?当然不是了,memmove函数就弥补了这个不足哦,是不是以前一直觉得这两个函数没啥区别呢,实际上区别大了去了,下面详细道来。   老话常谈,C语言中操作内存的最小单元当属字节,假如100个字节的内存需要搬运,恰巧的是目的内存的100字节中,包含了源地址中的50个,假如依旧按照memcpy方式来的话,保证那

2018-02-07 11:07:44 875

原创 浅析memcpy内存拷贝函数

浅析memcpy函数原型   C语言程序员钟爱memcpy函数,面试时考官总会让你写一个memcpy函数,笔试时候也总有这个题目,那这究竟是为什么呢?要想知道这个答案,还得从头说起。   话说C语言诞生之初,便与硬件有着天然的联系,使我们不得不深入基层,了解内存,操作内存。就如为将者需熟读兵书、通晓天文、地理一样,我们要搞清各种元素的内存形态、位置及相应的操作方法,熟悉内存操

2018-02-06 17:09:28 2555

转载 GCC编译选型,可随时查询

gcc 提供了大量的警告选项,对代码中可能存在的问题提出警 告,通常可以使用-Wall来开启以下警告:           -Waddress -Warray-bounds (only with -O2) -Wc++0x-compat            -Wchar-subscripts -Wimplicit-int -Wimplicit-function-declarat

2017-02-20 19:54:27 588

转载 Makefile中常见预定义变量



2017-02-20 19:49:27 1166

转载 Makefile中$$的使用

             Makefile中使用$$的使用 2008-07-16 11:24:01分类: Makefile中使用$$的使用    在makefile中,会经常使用shell命令,也经常见到$var 和 $$var的情况,有什么区别呢,区别大了。不要认为在makefile的规则的命令行中使用$var就是将makefile的变量和shel

2017-02-20 19:43:24 331

转载 Makefile中= := += ?=的区别

Makefile 中:= ?= += =的区别在Makefile中我们经常看到 = := ?= +=这几个赋值运算符,那么他们有什么区别呢?我们来做个简单的实验新建一个Makefile,内容为:ifdef DEFINE_VRE    VRE = “Hello World!”elseendififeq ($(OPT),define)    VRE

2017-02-20 19:39:42 200

转载 linux下libusb的安装与测试

    linux下libusb的安装与测试2013-05-14 15:06 10016人阅读 评论(1)收藏举报本文章已收录于:分类: Libusb 版权声明:本文为博主原创文章,未经博主允许不得转载。@2013/5/140.libusb的介绍:参考[1]1.环境:vmware_fedora_

2017-02-20 15:14:23 7960

原创 stm32 中断嵌套NVIC的理解

Stm32中断NVIC管理理解 1、中断服务函数入口名称在startup_stm32f10x_hd.s文件中。2、  中断结构参数NVIC_InitStructure.NVIC_IRQChannel的值在stm32f10x.h文件中查找。3、中断服务函数名称必须按照startup_stm32f10x_hd.s文件中中断向量表的名称进行编写,中断服务函数可以放在任意一个文件夹中,与存

2015-03-12 16:45:40 5142

转载 Stm32RS232串口通信——中断接收发送数据

main.c配置:[cpp] view plaincopyprint?/* *说明: *PA0:KEY1;PA1:KEY2; *PA2:LED1;PA3:LED2; *PA9:USART1_TX;PA10:USART1_RX */  #include "stm32f10x.h"  #include "stm32

2015-03-12 10:07:43 3501

原创 stm32 GPIO口配置操作

stm32里面最基本的思路就是使用外设相应寄存器之前,必须开启控制对应寄存器的时钟,读者可到技术手册中查询相应的时钟控制的相应的寄存器。           这里首先开启stm32普通io口的时钟。             GPIO 作为通用输入输出口使用时,当有外部中断设置时才需要开启AFIO时钟,否则不需要开启AFIO 时钟。          然后就是进行gpio结构体的初始化设

2015-03-12 09:36:05 1397

转载 stm32 复用时钟开启情况

首先为什么要开启时钟?答:因为要对寄存器进行读写!而在STM32中对寄存器的读写都是要打开寄存器对应的时钟才可以的【就像人一样,有了跳动的脉搏手臂才能有能量才能进行各种动作】。然后就什么时候AFIO时钟开启(所有时钟都是这样)就清楚了:当需要对“AFIO时钟管理的寄存器”进行读写时AFIO时钟打开!当然不对“AFIO时钟管理的寄存器”读写时也可以打开AFIO时钟,此时只是白白增加能耗、写无

2015-03-12 09:23:52 4893 4

转载 STM32时钟系统

STM32时钟系统2014-01-1614:31:02分类:嵌入式众所周知,时钟系统是CPU的脉搏,就像人的心跳一样。所以时钟系统的重要性就不言而喻了。STM32的时钟系统比较复杂,不像简单的51单片机一个系统时钟就可以解决一切。于是有人要问,采用一个系统时钟不是很简单吗?为什么STM32要有多个时钟源呢?因为首先STM32本身非常复杂,外设非常的多,但是并不是所有外设都需要系统时钟这么高

2015-03-12 09:10:33 784

ucos的vs2012版本

ucos源码在windows下vs2012版本的开发,可以完美运行,

2018-10-29

PID算法演示软件 单片机PID算法程序

本软件适合PID初学者对PID程序的理解和模拟,对系统响应等认识!PID算法调试工具、单片机PID算法程序

2015-07-20

OK6410学习指南

ok6410学习指南,介绍了ok6410系列开发板的使用,以及linux系统在开发板上的安装步骤。

2014-03-29

st-link基于keil的驱动程序

st-link是最新的st公司仿真器,这里包扩了它的仿真器驱动

2013-11-04

1752单片机程序

1752快速入门程序历程,包括了所有模块初始化程序

2013-10-11

空空如也

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

TA关注的人

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