- 博客(13)
- 收藏
- 关注
原创 Linux的iic OLED设备驱动
上文介绍了oled屏幕在stm32设备上的驱动,本文将介绍oled屏幕在linux设备上的驱动。iic在linux上驱动主要涉及device设备、driver驱动、i2c_client、i2c_adapter几部分。(1)i2c_clientLinux内核使用i2c_client来描述一个挂载在I2C总线上的I2C设备。(2)i2c_driverLinux内核使用i2c_driver来描述一个IIC设备的驱动程序。每个i2c_client对应一个i2c_driver。(...
2022-04-30 15:48:39
1655
原创 C++ 容器STL
参考连接:史上最全的各种C++ STL容器全解析 - Seaway-Fu - 博客园 (cnblogs.com)C++中的容器类包括“顺序存储结构”和“关联存储结构”,前者包括vector,list,deque等;后者包括set,map,multiset,multimap等。 若需要存储的元素数在编译器间就可以确定,可以使用数组来存储,否则,就需要用到容器类了。容器类是一种对特定代码重用问题的良好解决方案;容器可以自行扩展,一般在解决问题时,我们常常不知道我们需要存储...
2022-03-12 15:07:19
1285
原创 C++三大特性之多态
多态是在不同继承关系的类对象,去调用同一个函数,产生了不同的行为。虚函数virtual:关键字只用在类定义里面的函数声明中,写函数体时不用。class Base { virtual int Fun() ; // 虚函数};int Base::Fun() // virtual 字段不用在函数体时定义{ }多态的表现形式:通过基类指针调用基类和派生类的同名【虚函数】时1、若该指针指向一个基类的对象,那么被调用时 基类的虚函数。2、若该指针指向一个派生类的对象,那么被调用的
2022-03-11 15:52:08
3741
原创 C++三大特性之封装
类和对象的关系就是一个简单的封装封装的意义:将属性和行为作为整体,表现生活中的事务将属性和行为加以权限控制1、设计类的时候,将属性和行为写在一起,表现事物;class 类名{访问权限:属性和行为}2、把属性和行为放在不同的权限下,加以控制。 public 公共权限,成员可以被类内访问,也可以类外访问 protected 保护权限 成员可以被类内访问,不可被类外访问 private私有权限,成员可以被类内访问,不可被类外访问 stru
2022-03-11 14:14:18
595
原创 C++三大特性之继承
C++具有三大特性,继承、封装、多态。继承:一个对象直接使用了另一个对象的属性和方法。优点:(1)减少重复的代码(2)继承是多态的前提(3)继承增加了类的耦合性Struct是子类,也称派生类, public为继承方式,Person为父类,也成为基类class Student:public Person{public: };继承方式也分三类:public继承、protected继承、private继承基类的private成员在派生类中是不能被访问的
2022-03-11 13:54:37
1404
原创 C++笔记02 重载operator
#include <iostream>using namespace std;class myinteger{ friend ostream& operator<<(ostream &out,myinteger myint);//重构<<运算符public: myinteger() { m_Num = 0; } myinteger &operator++() //重构++i,++前缀运算符 { .
2022-01-25 16:04:27
651
原创 C++笔记01 友元
当一个函数或者类A的函数想要访问类B的私有/保护成员的话,需要把类B的成员放到公共区域中,这样会违背当初的意愿。友元可以使函数和类A直接访问类B的私有/保护成员。友元的特征:(1) 友元关系不能被继承,就像父亲的朋友未必是儿子的朋友。 (2) 友元关系是单向的,不具有交换性。若类B是类A的友元,类A不一定是类B的友元,要看在类中是否有相应的声明。 (3) 友元关系不具有传递性。若类B是类A的友元,类C是B的友元,类C不一...
2022-01-25 14:26:04
508
原创 万能Ubuntu连不上网解决方法,初学者不要挣扎了
万能Ubuntu连不上网解决方法,初学者不要挣扎了Ubuntu连不上网Ubuntu连不上网最近在学习S5pv210板子开发,在和板子连接时有可能用到NFS协议来完成虚拟机,主机和开发板的搭建链接时修改虚拟机的IP地址,但是在之后的需要虚拟机联网,我试过网上的一些其他方法都没有效果,于是采取了最直接的方法,对网络恢复默认。因此在这次告诫一下和我一样的初学者,不要做无用功了,直接恢复默认方便快捷。步骤一:点击虚拟网络编译器步骤二:点击右下角的更改设置:步骤三:点击左下角的huan’yuan默认设置
2021-08-08 00:49:40
261
原创 proteus基于51单片机的红绿灯控制设计
proteus 基于51单片机的红绿灯项目 用最简单的语句来实现一个小型51单片机项目的实现,适用于初学者。 包含模块:数字显示和倒计时模块、红绿灯模块。数字显示模块:void delay_ms(uint x){ uint i,j; for(i=x;i>0;i--) for(j=110;j>0;j--);}void displayns5(){ int i,k; for(i=4;i>=0;i--) { for(k=0;k<=5;k++)
2021-07-09 14:14:44
5245
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人