自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (16)
  • 收藏
  • 关注

原创 C++ 06 多态

/*一、多态性的概念polymorphism 多态性是面向对象程序设计的一个重要特征。一种语言如果只支持类而不支持多态,只能说是基于对象的,不能被称为面向对象的。 1、多态,指一个事物有多种形态。C++中,多态性是指具有不同功能的函数可以用同一个函数名来调用。 2、表述:向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(方法),用各自的方式去响应共同的消息。 消息,指调用函数;不同的行为是指不同的实现。#如函数的重载,运算符的重载都是多态现象。如学校校长向社会发布一个消息——开学.

2021-08-22 12:12:38 302

原创 C语言13 指针与数组2=数组名的本质+数组名作首地址+数组做函数参数+sizeof指针

一、数组名的本质(1)数组名指代一种数据结构,这种数据结构就是数组;例如:char str[10];cout << sizeof(str) << endl;输出结果为10,str指代数据结构char[10]。(2)数组名可以转换为指向其指代实体的指针,而且是一个指针常量,不能作自增、自减等操作,不能被修改;char str[10];str++; //编译出错,提示str不是左值 (3)数组名作为函数形参时,沦为普通指针。Windows NT .

2021-08-07 21:15:05 447

原创 C++ 04运算符重载

//#define _NO_OVERLOADING_ADD_COMPLEX_ //不用重载,使用函数//#define _OVERLOADING_ADD_COMPLEX_ //复数加号重载//#define _OVERLOADING_ADD_COMPLEX_FRIEND //友元函数作为重载函数//#define __OVERLOADING_TWO_OPERATOR__ //重载双目运算符//#define __OVERL...

2021-08-07 09:21:00 220

原创 C语言12 指针基本操作2+指针与数组

===================数组和指针的基本关系: 数组大小和起始地址指针1、C语言只有一维数组,而且其大小必须在编译期间确定下来。 但是其组元素可以是任何类型,如另外的数组。因此可以构建多维数组。2、对一个数组,只可确定其大小,以及获得指向组下标为0的元素的指针。 其他的关于数组的操作,如组下标等,也是经由指针进行的,二者是等价的。3、int calender[12][31]; sizeof(calender) = 12*31*4; 除了sizeof...

2021-08-06 16:03:36 273

原创 C++编程原则

1、先搭框架,逐步扩充,由简到繁,最后完善。 边编程,边调试,边扩充。先编写出最简单的程序框架,成一个可供运行的程序。不要企图在一开始就解决所有的细节。类是可扩充的,可以一步步地扩充它的功能。直接写好程序,每一步都要调试,调试通过了前面一步在做下一步,步步为营。2、类的设计和主函数的精简。 面向对象的程序设计中,最关键的工作是类的设计,所有的数据和数据的操作都是在类中完成。只要把类定义好,编程工作就简单了。 主函数精简,只是调用对象的成员函数,完成相关操作。大多数情况下...

2021-08-06 10:14:43 156

原创 new concept 3 = 09Flying cats

Cats never fail to fascinate human beings. They can be friendly and affectionate towards humans, but they lead mysterious lives of their own as well. They never become submissive like dogs and horses. As a result, humans have learned to respect feline inde

2021-08-06 09:36:05 103

原创 C语言11 内存指针操作+函数指针+typedef

///////////////////////////////////////////指针访问内存1、内存地址理解{ unsigned char *p1; unsigned long *p2; p1=(unsigned char *)0x801000; p2=(unsigned long *)0x810000;}请问p1+5=? ;p2+5=? ;答:p1+5=0x801005;p2+5=0x810014;在32位系统中,字...

2021-08-05 16:43:03 906

原创 C语言10 指针基本操作+引用+指针分配内存GetMemory

1、一个32位的机器,该机器的指针是多少位?可以访问多大的地址空间?答:32bit 2^32 = 4G 地址总线宽度决定了CPU可以访问的物理地址空间.简单地说就是CPU能够使用多大容量的内存.对于386以上的微机系统.地址线的宽度为32位.最多可以直接访问4096MB (4GB)的物理空间。指针即是地址值,地址的编号。指针是多少位只要看地址总线的位数就行了。80386以后的机子都是32的数据总线。所以指针的位数就是4个字节了。8位处理器、16位处理器、32位处理器和64位处理器,...

2021-08-05 16:33:51 275

原创 C语言08 flash存储分配+程序运行内存分配

一、从stm32引入理解1、MDK编译log:Program Size: Code=72072 RO-data=6864 RW-data=1316 ZI-data=8684Code是存储程序代码的;(删掉代码中未使用的函数等以节省flash空间)RO-data 是存储const常量和已初始化的字符串等;(类比于文字常量区)RW-data 是存储可读写的初始化值不为0的全局变量和静态变量;(类比于其他平台的data段,数据保持在bin文件中)ZI-data是存储未初始化或...

2021-08-04 11:14:12 1708

原创 C语言09 static使用+全局变量和静态变量

1、关键字static有什么用途?1)设置变量的存储域2)限制变量的作用域3)限制函数的作用域1】静态局部变量:在函数体内,被声明为静态的变量在函数被调用过程中维持其值不变,其值在下次调用时仍维持上次的值。(不被释放,而且只要赋一次初始值,如果没有赋值的话会自动为0.) (存储方式-生存期的改变)2】静态全局变量:被声明为静态的全局变量可以被模块内所有函数访问,但不能被模块外其它函数访问。(限制作用域)3】静态函数:被声明为静态的函数只可被这一模块内的其它函数调用。(限制作用域)

2021-08-03 22:42:08 1092

原创 C语言07 预编译+define

一、理论1、什么是预编译,何时需要预编译?答: 预编译又叫预处理,指程序编译前的代码文本处理工作。主要指用#表示的预编译指令,有三种:编译器编译前拷贝#include包含的代码,#define宏定义的替换,条件编译等等。何时需要预编译?1)总是使用不经常改动的大型代码体。2)程序由多个模块组成,所有模块都使用一组标准的包含文件和相同的编译选项。在这种情况下,可以将所有包含文件预编译为一个预编译头。2、为什么标准头文件都有类似以下的结构?#ifndef __INCvx

2021-08-02 17:41:30 671

原创 C语言06 const详解+const 和define的区别

1、C语言的关键字const的含义和用途。含义:const是只读的意思,被const修饰的东西都受到强制保护,只允许访问不允许被改变,可以预防意外的变动,能提高程序的健壮性。通过给编译器特定的附加信息,可以使编译器保护那些不希望被改变的参数,防止其被无意的代码修改。用途:(1)可以定义 const 常量。(2)可以修饰指针。(3)可以修饰函数的参数、返回值,甚至函数的定义体。2、const 用法:限定变量和指针(1)const int a;(2)int const .

2021-08-01 20:13:13 244 1

原创 C语言05 联合体和大小端

大端模式,是指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地址中,这样的存储模式有点儿类似于把数据当作字符串顺序处理:地址由小向大增加,而数据从高位往低位放;这和我们的阅读习惯一致。小端模式,是指数据的高字节保存在内存的高地址中,而数据的低字节保存在内存的低地址中,这种存储模式将地址的高低和数据位权有效地结合起来,高地址部分权值高,低地址部分权值低。=== === ====== === ====== === ===1、请写一个C函数,若处理器是Big_endian的,则返...

2021-07-25 22:28:15 252

原创 C语言04 volatile的使用

1、关键字volatile的含意? 一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。 优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。举例如下:1)并行设备的硬件寄存器(如:状态寄存器)。2).一个中断服务子程序中会访问到的非自动变量(可能被突然调用)。3).多线程应用中被几个任务共享的变量(使用互斥锁)。2、一个变量可以既是const还可以是volatile吗?...

2021-07-25 10:26:41 89

原创 C语言03 位操作

1、置位和清零 嵌入式系统总是要对变量或寄存器进行位操作。给一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。#define BIT3 (0x1<<3)static int a;void set_bit3(void){ a |= BIT3;}void clear_bit3(void){ a &= ~BIT3;}2、移位和取值有一个16位的整数,...

2021-07-24 18:01:17 614

原创 C语言02 自加自减 i++

1、自增运算符的右结合性。2、请写出下列代码的输出内容   #include <stdio.h>int main(void)   {    int a,b,c,d;  a=10;    b=a++;  c=++a;     d=10*a++;    printf("b,c,d:%d,%d,%d",b,c,d);    return 0;   }   10,12,1203、PC上VS运行结果:int j=1;cout&lt..

2021-07-23 23:05:12 188

原创 C++ 03从简单程序引入2

//#define CLASS_STUDENT//#define CLASS_TIME1//#define CLASS_TIME2#define CLASS_TIME3#ifdef CLASS_TIME3#include <iostream>using namespace std;class Time{public: void set_time(); void show_time();private: int hour; int minute; int..

2021-05-04 11:53:04 172

原创 C++ 02从简单程序引入1

//#define BASIC1_COUT#define BASIC1_CIN#ifdef BASIC1#include <iostream> //iostream代表输入输出流 //C的头文件要加.h后缀,C++的头文件可加可不加。using namespace std; //“使用命名空间std”。 //C++标准库中的类和函数是在std中声明的,程序如需要用到标准库(cout)要用此语句做声明。int main() //标准C++规定,..

2021-04-18 18:00:25 123

原创 C++01简介

1、计算机工作由什么控制? 程序2、程序是什么? 指令的集合3、指令是什么? 计算机可以识别的命令4、编程语言是什么? 软件工程师用来编写程序的指令集5、机器语言是什么? 计算机硬件系统可以识别的二进制指令集组成的语言,01016、汇编语言是什么? 将机器指令映射为易懂的助记符,如ADD等。7、高级程序语言的特征? 屏蔽了机器的细节,提高语言的抽象层次。8、面向对象的语言的特点:对象-类-重用1]将客观事物看作具有属性和行为的对象;2]通过抽象找出同一类对象的共...

2021-04-18 16:46:25 174

原创 ARM9 2440裸机驱动03 KEY轮询和中断两种方法+按键去抖动去重复+gpio红外去抖

==========摘要===========1、按键轮询:寄存器:rGPGCON; rGPGUP;rGPGDAT函数列表:key_init; key_poll;get_value;2、按键中断:(1)函数列表:key_init; key_irq; get_value;中断配置流程:=>按键本身gpio配置EINT mode(rGPGCON);=>EXTINT使能中断脚配置对应的gpio=>EINTMASK外部中断掩码寄存器配置对应的gpio=&

2021-03-07 10:17:44 554

原创 ARM9 2440裸机驱动01 LED+GPIO

======简要======1、主线程: while 和 DELAY_MS2、文件归类和头文件3、编程规范:统一格式4、编程规范:函数布局-初始化和功能接口5、编程规范:寄存器操作 volatile6、单个LED的闪烁操作======================1、主线程里面main函数: 必须有一个while(1);2、最简便的延时程序,使用cpu本身的for:void Delay_MS( unsigned int time){ unsigned int.

2021-03-05 22:54:02 116

原创 new concept 3=08 A famous monastery

Lesson 8A famous monastery著名的修道院 The Great St. Bernard Pass connects Switzerland to Italy. At 2,470 metres, it is the highest mountain pass in Europe. The famous monastery of St. Bernard, whi...

2019-08-06 11:36:32 501

原创 linux 5 存储结构与磁盘划分

一、一切从 / 开始linux中一切都是文件,目录、字符设备、块设备、套接字、打印机都被抽象成文件。linux中的一切文件都是从“根/”目录开始的,并按照文件系统层次化标准FHS采用树形结构来存放文件。FHS是存储文件时需要遵守的规则,但对用户只是道德上的约束并没有在技术上限制。FHS, filesystem hierarchy standard,文件系统层次化标准。----...

2019-04-23 17:12:41 192

原创 new concept 3=07 Mutilated ladies

Mutilated ladies残钞鉴别组 Has it ever happened to you? Have you ever put your trousers in the washing machine and then remembered there was a large bank note in your back pocket? When you rescued y...

2019-04-20 17:02:39 739

原创 C语言01 编程疑难

1、限定整数b在整数a和整数c之间:if(a<b<c)错;应该是 if((a<b) && (b<c))@a<b<c在c语言中的解释是,a<b先会返回一个值,如果a<b为真则返回1,为假返回0,然后再进行1<c或0<c的运算。2、结构体定义技巧32位MCU,地址总线和数据总线都是32位,以32位为单位存储。...

2019-04-19 23:00:49 177

原创 linux 04 用户身份与文件权限

一、用户身份与管理能力1、root相关: root管理员相当于超级用户,拥有最高的系统所有权。推荐使用root操作,避免难以判断是系统自身的问题,还是因为权限不足导致的。2、root之所以是操作管理员,因为其UID为0。UID相当于身份证号,具有唯一性,通过UID来判断用户身份。#iduid=0(root) gid=0(root) groups=0(root)3、用户身...

2019-04-19 09:19:20 225

原创 linux 03 vim编辑器和shell命令脚本

一、VIM文本编辑器1、三种工作模式:命令行模式、末行模式和编辑模式进入vim:vim xxx.sh[1]命令行模式:控制光标移动,可用快捷方式对文本进行复制、粘贴、删除和查找。[2]输入模式:正常文本输入。[3]末行模式:保存或退出文档,以及设置编辑环境。一进入vim,进入的是命令模式。需要切换到输入模式,进行文本编辑,编辑后要先返回命令模式,进行文档保存或退...

2019-04-14 15:09:24 272

原创 linux 02 管道符+重定向+环境变量

////////////////////1、tee命令作用:将命令的执行结果输出到终端,同时又将输出的内容写入文件。格式:#ping www.baidu.com | tee output.txt //只有标准输出和写入文件#make -j12 2>&1 | tee build.log //标准输出和错误输出,都写入文件(1)追加到文件而不是覆盖: tee -a...

2019-03-26 14:46:42 185

原创 短诗整理5—景物+记事

=======================山村1、 山村咏怀宋代:邵雍一去二三里,烟村四五家。亭台六七座,八九十枝花。2、村居清代:高鼎草长莺ying飞二月天,拂堤di杨柳醉春烟。儿童散学归来早,忙趁东风放纸鸢yuan。3、所见清代:袁枚牧童骑黄牛,歌声振林樾。意欲捕鸣蝉,忽然闭口立。============================小...

2019-03-09 21:53:21 149

原创 linux 01 常用命令整理

///////////////////////////////////////系统查询0、帮助命令 man#man + 查看的命令========================1、查看内核和系统版本(1)查看系统内核名称,主机名,内核版本号等#uname -a#uname -r ( 内核版本号)(2)查看内核版本号#cat /proc/version...

2019-03-02 00:07:12 683

原创 new concept 3=06--Smash-and-grab

Smash-and-grab砸橱窗抢劫Listen to the tape then answer the question below.听录音,然后回答以下问题。How did Mr. Taylor try to stop the thieves?The expensive shops in a famous arcade near Piccadilly were ju...

2019-03-01 22:56:20 408

原创 linux & android环境搭建=virtualbox+ubuntu

@起因:编译从服务器下载的rk3288,报错缺少命令,apt-get install 安装失败,更新软件源后输入命令:sudo apt-get update sudo apt-get upgrade -y sudo apt-get dist-upgrade重启虚拟机后报错导致系统崩溃!进入ubuntu后桌面都不能启动,系统内的数据全部作废,只有重装。幸好git系统强大,重要的数据基本全...

2019-02-19 22:51:43 407

原创 new concept 3=05 The facts

The facts 确切数字Editors of newspapers and magazines often go to extremes to provide their reader with unimportant facts and statistics.Last year a journalist had been instructed by a well-known ...

2019-02-07 23:54:45 452

原创 new concept 3=04 The double life of Alfred Bloggs

The double life of Alfred BloggsThese days, people who do manual work often receive far more money than clerks who work in offices. People who work in offices are frequently referred to as 'white co...

2019-01-28 11:28:53 965

原创 短诗整理4—亲情+思乡+别离

1 ============================ 游子吟 孟郊 慈母手中线,游子身上衣。临行密密缝,意恐迟迟归。谁言寸草心,报得三春晖。2 ============================ 静夜思 李白床前明月光,疑是地上...

2019-01-11 23:15:13 262

原创 new concept 3=03 An unknown goddess

Lesson 3An unknown goddess无名女神Listen to the tape then answer the question below.听录音,然后回答以下问题。How did the archaeologists know that the statue was a goddess? Some time ago, an interest...

2019-01-05 13:54:04 24020 1

原创 sublime Text简单使用

1、搜索文件名和函数【1】全局搜索文件:可模糊搜索ctrl+p =&gt; 输入文件名【2】搜索当前文件的函数:ctrl+p=&gt;@ ==&gt;搜索栏下拉列出当前文件所有函数。再点击,或者切换到ctrl+f可以查当前文件调用的多处地方。【3】全局搜索目标函数:菜单栏Find==&gt;在文件中查找:工具最底层2、sublime text 3如何使用快捷键跳转到...

2018-12-21 11:24:41 168

原创 SPI和读写串行FLASH(基于STMF103X)

================学习方法:【1】对比SPI 和I2C【2】对比FLASH读写和EEPROM读写================/////////////////////////////////基本特性1、什么是SPI,SPI基本特点? (特点才能表明SPI)SPI协议是(Serial Peripheral Interface),即串行外围设备接口。[1]...

2018-12-16 22:58:25 1092

原创 I2C和读写EEPROM(基于STM32F10X)

//////////////////////////////////// I2C基本原理1、什么是I2C?有什么特点?传输速度多少?[1]I2C:是一种通讯协议,全称inter-integrated circuit。[2]特点:引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。(不需外设即可实现)...

2018-12-16 22:46:29 427

原创 STM32单片机基本知识

1、MCU容量分类小容量产品是指闪存存储器nandflash容量在16K 至32K 字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。中容量产品是指闪存存储器容量在64K 至128K字节之间的STM32F101xx、STM32F102xx和STM32F103xx微控制器。大容量产品是指闪存存储器容量在256K至512K字节之间的STM32F101...

2018-12-14 14:32:05 17660

Keil_IDE中配置GD32开发环境.pdf

ARM 公司当前已经为 GD 制作了相关的插件,可以直接在 4.x和5.x系列的软件上安装使用。安装 MDK 的补丁 MDK-ARM_AddOn_GD32Fxxx然后再去安装 Keil.GD32F1xx_DFP.1.0.1 for5.x 的补丁,安装完成后就能够直接选到 GD的型号了。

2020-04-05

HG7881CP_电机控制驱动芯片.pdf

HG7881C是为控制和驱动直流电机设计的功率放大专用集成电路器件。芯片有两个输出端能直接驱动电机的正反向运动,具有较大的电流驱动能力,同时具有较低的输出饱和压降与静态电流。

2020-04-05

sokit-1.3-win32-chs.rar

sokit是一款小巧易用的TCP/UDP调试工具,软件界面美观,操作简便,拥有服务器、客户端以及转发器三种模式,可以用来接收,发送或转发TCP/UDP数据包,并能查看数据发送是否正确。软件支持收发日志文件、支持新建server client,支持快捷键操作。

2020-04-05

nRFgo_Studio_v1_3_1_install.exe

nrf24le1开发相关工具,是一个官方的编译器,可以在线调试,十分方便 (nrf24le1 development tools, is an official compiler, debugging, very convenient)

2020-04-05

JLink_Windows_V662.exe

JLINK JTAG下载器官方发布的新版本。 Powerful C/C++ IDE available for Windows/Linux/Mac OS X

2020-04-05

DialogBlocks-5.12-Setup.exe

基于wx库开发而成,功能非常全面的资源编辑器,可以创建可调整大小的可移植对话框,创建复杂的向导和属性表对话框,创建与菜单栏和工具栏完整的框架,创建基于wxAUI的布局与对接等等。另外DialogBlocks兼容性非常好,通过软件生成的对话框,向导和框架,可以在Windows、Linux、Mac或其他支持wxWidgets的平台上开发使用。

2020-04-05

PL2303-USB转串口驱动.zip

PL-2303USB-to-Serialdriver驱动能够实现串口驱动服务,更好的进行串口的各项调节,进行调试或者监控串口数据。

2020-04-05

CommX.exe(好用的串口调试助手)

仙桃串口调试助手,可以自动识别串口,能设置校验、数据位和停止位,能以ASCII码或十六进制接收或发送任何数据或字符,可以任意设定自动发送周期等等。

2020-04-05

SecureCRTPortable_6.7.4.rar

SecureCRT是一款方便的并支持SSH2、SSH1、Telnet、Telnet/SSH、Relogin、Serial、TAPI、RAW协议的终端模拟器,可方便地管理多个SSH对话。

2020-04-05

OV5648_CSP3_DS_1.1_WPI.PDF

OV5648是一种低电压、高性能、500万像素的CMOS图像传感器,采用OmniBSI技术提供2592x1944视频输出。它通过串行摄像机控制总线提供多分辨率原始图像。

2020-04-05

CM32181-Capella.pdf

CM3218/CM32181/CM32131是台湾Capella(凌耀)公司推出了一款带中断功能的高灵敏度IIC接口环境光传感器(ALS)。它将物理量(光照强度)转化为数字量(0-65535 steps)的ADC器件,一般用来自动调节LCD背光亮度。

2020-01-31

gcc-arm-none-eabi-4_9-2015q3-20150921-linux.tar.bz2

gcc-arm-none-eabi是GNU项目下的软件,是一个面向裸机arm的编译器,这个工具是用于linux编译环境的工具。

2020-01-03

gcc-arm-none-eabi-4_9-2015q3-20150921-win32.zip

gcc-arm-none-eabi是GNU项目下的软件,是一个面向裸机arm的编译器,这个软件是windows下的工具链。

2020-01-03

BMG160三轴陀螺仪规格书

BMG160是一个尺度数字硬件角速率传感器的测量范围高达2000°/ s和数字消费电子应用程序解决16位。BMG160允许低噪声测量角率3垂直轴,设计用于手机、手持设备、计算机外围设备、人机接口、虚拟现实功能,远程和游戏控制器。 占用空间小的只有3 x 3毫米2班上BMG160是独一无二的低噪声的消费电子陀螺仪。零利率抵消和偏移量稳定的温度BMG160是杰出的。

2019-03-01

光感规格书LTR-303ALS(MTK和RK等平台)

光感LTR-303ALS(MTK和RK等平台)规格书:The LTR-303ALS-01 is a low voltage I 2 C digital light sensor [ALS] in a low cost miniature chipled lead-free surface mount package. This sensor converts light intensity to a digital output signal capable of direct I 2 C interface. It provides a linear response over a wide dynamic range from 0.01 lux to 64k lux and is well suited to applications under high ambient brightness.

2018-09-26

jsoncpp-1.6.5

jsoncpp是C++程序用来解析json的开源库,支持c++11,目前该项目已经迁移到GitHub上面。这个资源是jsoncpp-1.6.5.tar.gz,亲测能用。

2018-06-22

空空如也

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

TA关注的人

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