自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 收藏
  • 关注

原创 设计模式(023)行为型之中介者模式

中介者模式是一种行为型设计模式,用于减少对象之间的直接通信,而是通过一个中介对象来进行间接通信。这种模式有助于减少对象之间的耦合,使得系统更易于维护和扩展。

2024-04-16 23:22:30 630

原创 设计模式(022)行为型之解释器模式

解释器模式是一种行为型设计模式,用于定义一种语言的文法,并且在该语言中解释句子的意义。这种模式通常用于实现编程语言解释器、正则表达式引擎等场景。

2024-04-16 23:02:33 620

原创 设计模式(021)行为型之访问者模式

问者模式是一种行为型设计模式,它可以在不修改现有代码结构的情况下,为复杂的对象结构添加新的操作。该模式将数据结构和数据操作进行分离,使得数据结构可以独立于操作进行变化,同时也可以在不改变操作的前提下增加新的操作。

2024-04-16 22:47:04 504

原创 设计模式(020)行为型之备忘录模式

备忘录模式是一种行为型设计模式,用于在不破坏封装性的前提下捕获一个对象的内部状态,并在该对象之外保存这个状态,以便之后可以将该对象恢复到之前的状态。这种模式通常用于需要记录对象状态历史、撤销操作或实现“回到过去”功能的场景。

2024-04-16 22:25:04 576

原创 设计模式(019)行为型之状态模式

状态模式是一种行为型设计模式,它允许对象在内部状态发生变化时改变它的行为,使得对象在不同状态下有不同的行为表现,而且可以方便地添加新的状态而不必修改已有的代码。

2024-04-16 22:04:37 532

原创 从51到ARM裸机开发实验(009)LPC2138 中断实验

LPC2138 中断实验

2024-04-15 18:44:04 999

原创 设计模式(018)行为型之策略模式

策略模式是一种行为设计模式,它定义了一系列算法,将每个算法封装成一个对象,并使它们可以互换。策略模式使得算法的变化可以独立于使用算法的客户端。核心思想是将算法的定义与使用分离,使得算法可以独立于客户端进行变化、扩展和替换。

2024-04-10 23:05:56 537

原创 设计模式(017)行为型之责任链模式

责任链模式的核心思想是将请求发送者与接收者解耦,让多个对象都有机会处理请求,从而避免了请求发送者与接收者之间的直接耦合关系

2024-04-10 22:52:01 424

原创 设计模式(016)行为型之命令模式

命令模式的核心思想是将请求的发送者与请求的接收者解耦,通过命令对象将二者进行绑定。这样可以实现对请求的封装、记录、排队和撤销操作等功能

2024-04-10 22:35:40 386

原创 设计模式(015)行为型之模板方法模式

模板方法模式,它定义了一个算法的骨架,将一些步骤延迟到子类中实现。这个模式允许子类重新定义算法的某些步骤,而不改变算法的结构。通常,模板方法由一个抽象类实现,其中包含算法的基本步骤,并且这些步骤可以是抽象的或具体的。子类继承这个抽象类并重写其中的特定方法,从而定制算法的行为。这种模式常用于实现一个通用的算法框架,以便不同的子类可以根据自身需求实现算法的具体步骤。

2024-04-10 22:12:21 389

原创 设计模式(014)行为型之迭代器模式

迭代器模式,用于提供一种方法来顺序访问一个聚合对象中的各个元素,而又不需暴露该对象的内部表示。它将遍历和聚合分离开来,使得可以独立地改变遍历方法而不影响聚合对象。这种模式通常包括一个迭代器接口定义和一个聚合对象接口定义,以及相应的迭代器和聚合对象的实现类。

2024-04-10 21:56:31 273

原创 设计模式(013)行为型之观察者模式

观察者模式是一种常见的软件设计模式,用于实现对象之间的一对多依赖关系。在观察者模式中,一个对象(称为主题或可观察对象)维护一个依赖列表,即一组观察者对象。当主题对象的状态发生变化时,它会自动通知所有观察者,使它们能够自动更新。

2024-04-10 21:36:45 607

原创 一文读懂CAN总线通信和CANoe开发

CAN、CANoe

2024-04-08 23:33:26 1433

原创 汽车整车组成和设计开发流程

汽车整车设计开发/汽车设计开发/整车设计开发整车集成、开发流程、平台化开发、总体设计、总布置设计、造型设计、底盘设计、电子电器设计、车身设计、内外饰设计、热系统设计、尺寸工程、法规设计、整车试制、整车试验验证

2024-03-24 22:55:42 923

原创 汽车电子开发概念解析

汽车电子电气架构、ECU、车载网络、诊断、标定、网关、汽车安全、HPC、TBOX、ADAS、AUTOSAR

2024-03-03 23:53:35 851

原创 从51到ARM裸机开发实验(008)STM32F401VE 中断实验

从51到ARM裸机开发实验(008)STM32F401VE 中断实验

2024-01-08 11:03:51 887

原创 设计模式(012)结构型之代理模式

代理模式是通过创建一个代理对象,来控制对另一个对象的访问。代理对象和被代理对象实现了相同的接口,因此对客户端而言,它们是可以互换的。客户端通过调用代理对象的方法来访问被代理对象,代理对象可以在调用被代理对象之前或之后执行一些额外的操作,比如记录日志、实现缓存等。

2023-05-09 22:28:10 92

原创 设计模式(011)结构型之享元模式

享元模式的主要目的是在不增加内存消耗的前提下,尽可能地减少系统中的对象数量。该模式将对象分为两种类型:内部状态和外部状态。内部状态是可以共享的,它不会随着对象的不同而改变,而外部状态是不可以共享的,它会随着对象的不同而改变。

2023-05-09 16:28:08 81

原创 设计模式(010)结构型之外观模式

外观模式(Facade Pattern)是一种常用的设计模式,它提供了一个简单的接口,隐藏了系统的复杂性,使得外部客户端可以更加方便地使用系统的功能。外观模式属于结构型设计模式,其目的在于通过提供一个高层次的接口来简化复杂系统的使用。

2023-05-09 15:03:34 81

原创 设计模式(009)结构型之装饰器模式

装饰器模式(Decorator Pattern)允许在运行时动态地向对象添加功能,而无需修改其源代码。在该模式中,有一个被装饰的对象(Component),它定义了一些基本的操作。装饰器(Decorator)对象是对这个基本对象的一个包装,可以在不改变其接口的情况下,为其添加新的行为或修改现有的行为。

2023-05-09 11:48:55 49

原创 从51到ARM裸机开发实验(007) AT89C51 中断实验

AT89C51中断实验,包括外部中断和定时器中断。

2023-05-07 18:20:35 810

原创 设计模式(008)结构型之组合模式

组合模式将对象组合成树形结构来表现“整体/部分”的层次结构,并且可以像处理单个对象一样处理整个树形结构。当需求场景是体现部分与整体层次的结构时;或者你希望用户可以忽略组合对象与单个对象的不同,而统一的使用组合结构中的所有对象时,就应该考虑用组合模式了。组合模式包含以下几个角色:定义组合中所有对象的通用接口,可以是抽象类或者接口,包含了一些基本操作方法,如添加子节点、删除子节点、获取子节点等。组合中的叶子节点,表示最基本的单个对象。组合中的容器节点,包含了一组子节点,可以是叶子节点或者其他容器节点。

2023-04-20 20:00:34 38

原创 设计模式(007)结构型之桥接模式

桥接模式将一个抽象与其实现分离,以便两者可以独立地变化。它通过将实现细节委托给一个抽象接口来解耦实现和抽象。这种模式的主要思想是通过将对象的实现细节封装在一个独立的类层次结构中,从而实现对象间的松耦合。

2023-04-20 16:51:17 36

原创 设计模式(006)结构型之适配器模式

适配器模式将一个类的接口转换成客户端所期望的另一个接口,使得原本不兼容的接口能够协同工作。适配器模式主要由三个角色组成:适配器(Adapter)、目标(Target)和被适配者(Adaptee)

2023-04-20 15:47:37 41

原创 从51到ARM裸机开发实验(006)Exynos4412 GPIO实验

本次实验基于Tiny4412开发板,开发板上有四个可编程控制的LED、四个按键。来实现这样一种场景:每个按键控制一盏LED,每按一次则对应的LED状态发生改变,按一次开灯,再按一次关灯。核心控制为三星的Exynos4412芯片。设计Linux虚拟机、芯片启动分析、交叉编译等技术。

2023-04-19 23:53:06 886 1

原创 设计模式(005)创建型之原型模式

原型模式是在运行时创建一个基于现有对象的克隆。这意味着可以复制一个对象,而无需显式地指定其类。这对于创建相似对象的情况非常有用,尤其是在对象的创建过程比较昂贵或复杂的情况下。

2023-04-16 13:52:38 41

原创 设计模式(004)创建型之建造者模式

建造者模式(BuilderPattern)是一种创建型设计模式,用于将一个复杂对象的构建过程和其表示分离开来,从而使同样的构建过程可以创建不同的表示。Builder模式主要包括Builder,Director,Product三个角色。

2023-04-16 12:54:54 37

原创 设计模式(003)创建型之单例模式

单例模式是一种设计模式,用于确保一个类仅有一个实例,并提供全局访问点。该模式适用于需要全局唯一实例的场景,如数据库连接、日志记录器等。实现单例模式的方法有多种,分为饿汉式和懒汉式。

2023-04-16 10:53:02 46

原创 从51到ARM裸机开发实验(005)LPC2138 GPIO实验

实现这样一种场景:四个按键作为开关、四个LED作为响应,每个开关控制一盏灯,按一次开灯,再按一次关灯。再接入一个蜂鸣和另外两个按键作为音量加和音量减,音量加每按一次蜂鸣器音量增加5%,音量减每按一次音量减少5%。这次将MCU替换成LPC2138芯片,LPC2138是飞利浦公司推出的基于ARM7TDMI-S内核的微控制器,属ARMv4架构。与STM32同属ARM系列,其编程方式也与STM32类似。

2023-04-15 19:12:17 832

原创 设计模式(002)创建型之抽象工厂模式

抽象工厂模式

2023-04-13 23:58:37 45

原创 从51到ARM裸机开发实验(004)STM32F401VE GPIO实验

仿照“从51到ARM裸机开发实验(003) AT89C51 GPIO实验”,同样实现这样一种场景:四个按键作为开关、四个LED作为响应,每个开关控制一盏灯,按一次开灯,再按一次关灯。再接入一个蜂鸣和另外两个按键作为音量加和音量减,音量加每按一次蜂鸣器音量增加5%,音量减每按一次音量减少5%。这次将MCU替换成STM32F401VE芯片,属于ARM-Cortex 系列,为Cortex-M4内核。虽然实现相同的场景,但是开发配置和编码方式却大不一样。

2023-04-13 21:59:13 1076

原创 设计模式(001)创建型之工厂模式

简单工厂模式适用于对象类型比较少,且不太需要扩展的场景,而工厂方法模式适用于对象类型比较多,且需要扩展的场景。简单工厂模式最大的优点在于工厂类中包含了必要的判断逻辑,根据客户端的选择条件动态实例化相关的类,对于客户端来说,祛除了与具体产品的依赖。而工厂方法模式是把简单工厂的内部逻辑判断移到了客户端代码来实现。简单工厂模式想加功能(如计算平方、开方)需要改工厂类,工厂方法模式则是增加工厂类,改客户端。

2023-04-07 17:01:19 44

原创 设计模式概览(23种设计模式+六大原则)

设计模式概览:23种设计模式、设计模式六大原则

2023-04-05 23:15:32 1281

原创 从51到ARM裸机开发实验(003) AT89C51 GPIO实验

AT89C51基本I/O实验。包括protues仿真电路图设计、最小系统板、单片机软件架构设计、Keil5的使用、单片机IO驱动设计、应用程序设计

2023-04-05 20:21:20 1314

原创 从51到ARM裸机开发实验(002) Keil5的安装与配置

Keil5的安装与配置,从C51~ARM9全系支持。C51和MDK环境共存、注册、支持包安装全部步骤。

2023-04-03 22:02:43 1802 1

原创 从51到ARM裸机开发实验(001) 单片机分类介绍

从51到ARM单片机分类介绍

2023-03-31 23:01:08 323

原创 Proteus使用详解

Proteus使用详解:什么是Protues?为什么要使用Protues?Protues的元件库有哪些?如何快捷操作Protues?

2023-03-31 20:24:00 13416 5

原创 一次因pthread_create导致的内存泄漏排查与解决

一次因pthread_create导致的内存泄漏排查与解决

2023-03-30 23:21:01 595

原创 操作系统概念及常见的操作系统

操作系统概念及常见的操作系统

2023-03-29 23:34:46 3119

原创 电子设计之硬件初探

电子设计之硬件初探

2023-03-29 21:40:14 104

从51到ARM裸机开发实验(009)LPC2138中断实验仿真电路图和源码

从51到ARM裸机开发实验(009)LPC2138中断实验仿真电路图和源码

2024-04-15

汽车设计开发思维导图.png

汽车设计开发思维导图 包含内容: 整车集成、开发流程、平台化开发、总体设计、总布置设计、造型设计、底盘设计、电子电器设计、车身设计、内外饰设计、热系统设计、尺寸工程、法规设计、整车试制、整车试验验证。 参考资料: 《汽车整车设计与产品开发》 吴礼军主编 ISBN: 9787111691228 可认为是此书的读书笔记。 适用人群: ① 适合想了解汽车整车开发的人员 ② 适合从事汽车某专业开发的,想要既知树木又见森林的人员 ③ 适合从事汽车某专业开发的,想要了解自己负责模块环境件/对手件的人员 ④ 适合与供应商对接,需要了解汽车事物全貌的人员 ⑤ 适合整车集成项目经理

2024-03-22

STM32 Cortex-M4 MCUs and MPUs programming manual

STM32 Cortex-M4 MCUs and MPUs programming manual

2024-01-08

从51到ARM裸机开发实验(008)STM32中断实验仿真电路图和源码

从51到ARM裸机开发实验(008)STM32中断实验仿真电路图和源码

2024-01-08

从51到ARM裸机开发实验(007) AT89C51 中断实验仿真电路图和源码

从51到ARM裸机开发实验(007) AT89C51 中断实验仿真电路图和源码

2023-05-07

从51到ARM裸机开发实验(006)Exynos4412 GPIO实验源码(基于Tiny4412开发板)

从51到ARM裸机开发实验(006)Exynos4412 GPIO实验源码(基于Tiny4412开发板)

2023-04-19

Exynos4412裸机开发参考资料和必备资源

Exynos4412裸机开发(基于Tiny4412开发板)参考资料和必备资源。 交叉编译工具:arm-linux-gcc-4.5.1-v6-vfp-20120301.tgz Uboot源码和SD卡烧写工具:uboot_tiny4412-20130729.tgz Exynos4412芯片手册:Exynos4412_Datasheet.pdf Exynos4412芯片启动流程:Exynos4412_iROM.pdf 核心板电路图:核心板_Tiny4412-1306-Schematic.pdf 底板电路图:底板_Tiny4412SDK-1506-Schematic.pdf Tiny4412 Android硬件开发指南.pdf Tiny4412用户手册.pdf

2023-04-19

从51到ARM裸机开发实验(005)LPC2138 GPIO实验仿真电路图和源码

从51到ARM裸机开发实验(005)LPC2138 GPIO实验仿真电路图和源码

2023-04-15

Keil上使用的ARMCC编译器 ARMCompiler-506-Windows-x86-b960

Keil上使用的ARMCC编译器 ARMCompiler_506_Windows_x86_b960 支持以下ARM内核: Armv7-A Armv7-R Armv7-M Armv6-M Armv5 Armv4

2023-04-14

从51到ARM裸机开发实验(004)STM32F401VE GPIO实验仿真电路图和源码

从51到ARM裸机开发实验(004)STM32F401VE GPIO实验仿真电路图和源码

2023-04-13

STM32F4xx开发参考资料

STM32F4xx开发参考资料,包含: RM0368 Reference manual STM32F401xB/C and STM32F401xD/E RM0383 Reference manual STM32F411xC/E STM32F4xx中文参考手册 STM32中文参考手册_V10 STM32F4开发指南-寄存器版本_V1.0

2023-04-13

从51到ARM裸机开发试验(003) AT89C51基本I/O试验仿真电路图和源码

从51到ARM裸机开发试验(003) AT89C51基本I/O试验仿真电路图和源码

2023-04-05

博客“从51到ARM裸机开发试验”MCU芯片手册

博客“从51到ARM裸机开发试验”MCU芯片手册 包含: AT89C51 中文手册 LPC111X Datasheet LPC2131/2132/2138 中文手册 STM32F103x6/STM32F103x8/STM32F103xB DataSheet STM32F401xD STM32F401xE DataSheet Exynos4412 Datasheet

2023-04-03

STM32F103R6 Datasheet

STM32F103R6 Datasheet

2023-03-31

QT Create 5.5.0

用这个编写C/C++代码很爽~~~ Qt 是一个跨平台应用程序和 UI 开发框架。使用 Qt 您只需一次性开发应用程序,无须重新编写源代码,便可跨不同桌面和嵌入式操作系统部署这些应用程序。 Qt Creator 是全新的跨平台 QtIDE(集成开发环境),可单独使用,也可与 Qt 库和开发工具组成一套完整的 SDK(软件开发工具包)。 其中包括:高级 C++ 代码编辑器,项目和生成管理工具,集成的上下文相关的帮助系统,图形化调试器,代码管理和浏览工具。 其他几个可开发C/C++的IDE: CodeBlocks:用着很爽,初始配置较为繁琐,需要装一些插件。熟悉CodeBlocks的可以使用。Microsoft Visual Studio: 微软官方开发软件,但软件太大太重。(根据不同版本,安装完成后几个G~几十G不等)。Visual C++:微软官方开发工具,对于目前的开发来说略显过时。(界面不好看,代码自动补全需要另装插件等)

2023-03-29

空空如也

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

TA关注的人

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