自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

(嵌入式)修行悟道

写博客为了总结知识点;高质量程序设计和实现;底层 框架和算法(ARM+linux+Android);持续而缓慢的学习,才能长久的成长;注重实用性

  • 博客(382)
  • 资源 (6)
  • 论坛 (6)
  • 收藏
  • 关注

原创 博客总目录

根据工作经验将博客分层,主要分几层:一.基础研究 主要是C C++ 设计模式 重构二.中间件 造轮子和优化轮子(把封装好的组件、库,叫做轮子)三.linux+Android底层(主要学习框架) UART I2C USB框架和驱动,Android camera等四.硬件 懂原理图...

2020-05-21 10:04:19 415

转载 C++23种设计模式

C++设计模式——简单工厂模式C++设计模式——工厂方法模式C++设计模式——抽象工厂模式C++设计模式——单例模式C++设计模式——建造者模式C++设计模式——原型模式C++设计模式——适配器模式C++设计模式——桥接模式C++设计模式——组合模式C++设计模式——装饰模式C++设计模式——外观模式C++设计模式——享元模式C++设计模式——代理模...

2019-09-09 11:43:22 124

转载 OS—printf

hello world程序绝对经典的让人落泪,这是很多人的第一个程序。这个程序在Brian Kernighan和Dennis M. Ritchie合著的《The C Programme Language》中使用而广泛流行。该程序也体现了两位作者心向世界的博大情怀。         本人编程也是从hello world程序开始的,但是我很多人写的hello world程序都需要库和操作系统的支持

2016-08-25 08:43:45 605

原创 Uboot到Kernel到文件系统(Cortex_A9)移植详细文档

处理器:Exynos4412 Cortex_A9 四核一: 4412 uboot 目录:uboot基本配置编译make xxx_config编译结果如上图。Uboot启动第一阶段分析:1. cpu/arm_cortexa9/start.Shttp://blog.chinaunix.net/uid-29589379-id-5568665.html

2016-05-18 09:34:41 2846

转载 【5G模组】MH5000-31快速实现拨号打电话(First call)

拿到开发板的小白同学们。大家一定很想马上通电,然后打通电话试试这个5G模组的功能。废话不多说,先晒晒我的工作台和开发板,吼吼!!图一 MH5000开发板饶了一个大圈子,言归正传。先安装驱动然后在连接串口,这个大家都会吧?都在华为提供的材料里面有说明。基础的这里就不做介绍了SIM卡别忘了插!!然后开始敲命令:(黑色字体命令,蓝色字体是打印)ATIManufacturer: Huawei Technologies Co., Ltd.Model: MH5000-31Revision: 11

2021-01-19 12:14:56 31

转载 瑞芯微电子RockChip(RK3588)

RK3588 RK3566 RK3530等芯片来袭,2020年瑞芯微旗下SoC一览2019年就要结束了,来年的主角也已经到位,在此跟大家分享一下瑞芯微在2020年推出的RK35XX系列的新一代通用型SoC:RK3588、RK3566和RK3530,以及其应用场景,方便行业定制项目选型。在此附上一张瑞芯微的产品路线图,以供大家参考。瑞芯微旗下SoC路线图从上面这张图我们可以清晰的看出,在2020年瑞芯微推出的产品主要是面向物联网人工智能/机器视觉和机顶盒领域。鉴于在前不久瑞芯微刚发布了RK2108和R

2021-01-18 22:25:24 30

转载 移动通讯的演化史

移动通讯的演化史移动通信参考资料移动通信摘要 移动通信的发展历程以及物联网的展望。一、移动通信的发展史从人类社会诞生以来,更加高效快捷的通讯就成为人类矢志不渝的追求。中国古代有飞鸽传书、烽火狼烟方式传递信息,这些传递信息的方式存在一定局限性。1844年,美国人莫尔斯发明了莫尔斯电码,并在电报机上传递了第一条电报,开创了人类使用“电”来传递信息的先河。1864年麦克斯韦从理论上证明了电磁波的存在,1876年赫兹用实验证实了电磁波的存在,1896年意大利人马可尼第一次用电磁波进行了长距离通讯实验,从

2021-01-18 13:26:55 32 2

转载 海思芯片系列

海思全系列110种芯片-选型及特征参考说明1.华为 监控设备 hi3516型号-特征华为 监控设备 hi3518型号-特征华为 监控设备 hi3519型号-特征华为 监控设备 hi3520型号-特征华为 监控设备 hi3521型号-特征华为 监控设备 hi3531型号-特征华为 监控设备 Hi3536型号-特征2.华为 MobileCam Hi3556型号-特征华为 MobileCam HI3559型号-特征3.华为 机顶盒华为 机顶盒 Hi3716型号-特征华为 显示盒 Hi3751型号-特征华为 机顶盒

2021-01-17 14:09:26 49

原创 驱动学习总结

驱动学习总结1.驱动框架总结2.platfrom驱动1.驱动框架总结驱动模型:1.入口函数退出函数2. 注册进内核( 链表 )3. 构造file_operation4. 实现file_operation中函数接口(函数指针,回调函数)APP层: open read/write ioctl驱动层 : drv_opendrv_read / drv_writedrv_ioctl实例分析:韦东山第一个程序#include <linux/module.h>#include &

2021-01-14 17:23:54 18

转载 高性能服务器-Unix环境

epoll1.epoll1.epollepoll是怎么实现的?Linux epoll机制是通过红黑树和双向链表实现的。 首先通过epoll_create()系统调用在内核中创建一个eventpoll类型的句柄,其中包括红黑树根节点和双向链表头节点。然后通过epoll_ctl()系统调用,向epoll对象的红黑树结构中添加、删除、修改感兴趣的事件,返回0标识成功,返回-1表示失败。最后通过epoll_wait()系统调用判断双向链表是否为空,如果为空则阻塞。当文件描述符状态改变,fd上的回调函数被调用

2021-01-14 13:25:16 47

原创 2021CSDN前20博客分析

2021CSDN前20博客分析1.各博主擅长领域2.分析1.从上面的排名前20的专家中可以看出,大部分擅长的领域还是偏向JAVA Android Python AI HTML 后台 CC++ 嵌入式 图像等2.主要是前面5个居多,然而嵌入式 音视频偏向很少。分析主要原因是:1.入门难 2.SDK提供完善 3.涉及领域偏向框架,框架设计完成,改动性小,没有很大的突破空间 4.跟芯片平台有很大关系。众多原因限制了嵌入式的发展1.各博主擅长领域2.分析1.从上面的排名前20的专家中可以看出,大

2021-01-14 10:32:12 11

转载 Cmake知识-编写CMakeLists.txt文件编译

@toc1.CMake编译原理CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。因此CMake的编译基本就两个步骤:1. cmake2. makecmake 指向CMakeLists.txt所在的目录,例如cmake … 表示CMake

2021-01-12 22:03:34 28

转载 硬件仿真软件

微电子及集成电路技术发展日新月异,离不开EDA电子电路仿真软件的支持。每天不知有多少电路设计及验证者,使用着各种电路仿真软件工具。俗话说,工欲善其事必先利其器,如何挑选合适的电路仿真软件工具?是决定工作效率的一个关键。对于市场上各类电路仿真软件工具,工程师至少要做到知己知彼,什么样的电路仿真软件工具适合什么样的电路设计?各种电路仿真软件工具的优点及不足?本文为大家整理了常用的几款电路仿真软件工具,并对这些电路仿真软件工具的优缺点做了简单比较。一、CadenceCadence 公司是老牌的EDA工具提供商

2021-01-10 22:59:21 10

转载 Proteus使用教程并仿真51程序——LED流水灯

Proteus使用教程并仿真51程序——LED流水灯本文章主要讲述Proteus软件的知识、如何安装、如何使用,熟悉Proteus电路仿真软件,并完成一个51程序设计和仿真。一、Proteus简介Proteus是英国著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。它是目前比较好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。

2021-01-10 22:38:41 92

原创 USB鼠标输入驱动

USB鼠标输入驱动1.usbmouse_as_key.c2.Makefile1.usbmouse_as_key.c/* * drivers\hid\usbhid\usbmouse.c */#include <linux/kernel.h>#include <linux/slab.h>#include <linux/module.h>#include <linux/init.h>#include <linux/usb/input.h&

2021-01-08 09:46:26 6

原创 ts_drv(触摸屏)

ts_drv1.ts_drv2.Makefile1.ts_drv#include <linux/errno.h>#include <linux/kernel.h>#include <linux/module.h>#include <linux/slab.h>#include <linux/input.h>#include <linux/init.h>#include <linux/serio.h>#incl

2021-01-07 23:22:52 6

原创 四.1LCD

LCD1.drv2.Makefile1.drv#include <linux/module.h>#include <linux/kernel.h>#include <linux/errno.h>#include <linux/string.h>#include <linux/mm.h>#include <linux/slab.h>#include <linux/delay.h>#include <li

2021-01-07 22:58:05 10

原创 三.1platform_device_driver

平台设备驱动1.优点2.led_dev.c3.led_drv.cMakefileled_test1.优点优点:在之前的基础上,加了一层框架模型,将寄存器和驱动分离,这样的好处是可以适配更多的驱动,方便扩展。2.led_dev.c#include <linux/module.h>#include <linux/version.h>#include <linux/init.h>#include <linux/kernel.h>#include

2021-01-07 17:26:06 11

原创 7 buttons 定时器消抖

buttons 定时器消抖button.cMakefiletest_buttonbutton.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <linux/irq.h>#include <asm/uaccess

2021-01-07 16:51:23 13

原创 6.six_drv 互斥锁

six_drv 互斥锁sixthdrv.cMakefilesixthdrvtest.csixthdrv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <linux/irq.h>#include <asm/ua

2021-01-07 16:46:59 5

原创 5.fifthdrv.c同步

同步1.fifthdrv.c2.Makefile3.fifthdrvtest.c1.fifthdrv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <linux/irq.h>#include <asm/uac

2021-01-07 16:44:28 7

原创 4.forth_drv 按键(poll检测)

@toc1.drv2.Makefile3.app

2021-01-07 11:49:28 8

原创 3.third_drv按键驱动

third_drv按键驱动1.third_drv.c2.Makefile3.thirddrvtest.c1.third_drv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <linux/irq.h>#includ

2021-01-07 11:41:29 6

原创 2. second_drv read(buttons)

读按键状态1.read1.read//second_drv.c#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/delay.h>#include <asm/uaccess.h>#include <asm/irq.h>#include &l

2021-01-06 16:15:02 9

转载 C++ 20标准

C++20 新特性1.C++20 新特性2.C++20新特性个人总结1.C++20 新特性C++ 之父 Bjarne Stroustrup 就表示:“C++ 20是自C++11以来最大的发行版,它将是C++发展史上的里程碑。C++20 引入了许多新特性,其中包括:模块 (Modules)协程 (Coroutines)范围 (Ranges)概念与约束 (Constraints and concepts)指定初始化 (designated initializers)操作符 <=

2021-01-05 19:33:40 77

转载 解决SDL/SDL.h: No such file or directory的方法

解决SDL/SDL.h: No such file or directory的方法一、先安装一些依赖包一、先安装一些依赖包先简单再介绍一下SDL:SDL是Simple DirectMedia Layer(简易直控媒体层)的缩写。它是一个跨平台的多媒体库,以用于直接控制底层的多媒体硬件的接口。主要用在开发游戏上!Ubuntu的新得立已经包含SDL库,所以通过几个简单的命令就可以安装,比windows还傻瓜!sudo apt-get install libsdl1.2-dev(比较大,10M左右)附加

2021-01-05 16:18:44 105

转载 视频驱动V4L2子系统驱动架构-框架

视频驱动V4L2子系统驱动架构1.V4L2驱动框架2.框架分析3.V4L2 core介绍1.V4L2驱动框架v4l2驱动架构如图所示,v4l2也就是video for linux two,那么也就是说还有One了,v4l2前面还有v4l图中芯片模块对应Soc的各个子模块,video_device结构体主要用来控制Soc的video模块,v4l2_device会包含多个v4l2_subdev ,每个v4l2_subdev 用来控制各自的子模块,某些驱动不需要v4l2_subdev ,依靠video模块就

2021-01-04 17:16:08 31

转载 外观模式

外观模式1.简述模式结构1.简述外观模式(Facade Pattern)又称为门面模式,属于结构型模式。Façade 为子系统中的一组接口提供了一个统一的高层接口,该接口使得子系统更加容易使用。模式结构UML 结构图:外观(Facade):模式的核心,被 Client 调用,知晓相关子系统的功能和责任。在正常情况下,它将所有从 Client 发来的请求委派到相应的子系统去,让子系统处理。子系统(SubSystem):可以同时有一个或者多个子系统,子系统可以是一个单独的类或类的集合。每个子系统都

2021-01-04 09:52:42 44

原创 硬件CPU最基础版

CPU最小硬件1.CPU 最小硬件2.继电器是如何成为CPU的1.CPU 最小硬件8位CPU设计(1) 门电路和锁存器、触发器2.继电器是如何成为CPU的继电器是如何成为CPU的继电器是如何成为CPU的-硬件电路

2021-01-03 21:48:14 9

原创 linux内核框架图

linux内核架构图1.linux架构图2.高清图1.linux架构图2.高清图官网高清图

2020-12-31 17:31:44 15

原创 x86架构操作系统内核的实现

@toc1.x86架构操作系统内核的实现x86架构操作系统内核的实现

2020-12-31 08:55:34 30

原创 Verilog

verilog1.Verilog1.VerilogVerilog学习

2020-12-30 22:18:29 13

原创 librtmp开发博客参考

librtmp参考博客1.librtmp专家博客1.librtmp专家博客RTMP推流方案总结rtmp服务器以及rtmp推流/拉流/转发最简单的基于librtmp的示例:发布H.264(H.264通过RTMP发布)

2020-12-30 13:03:04 15

转载 移植librtmp

移植librtmp一.openssl交叉编译二.zlib交叉编译三.rtmpdump 交叉编译一.openssl交叉编译1.下载https://www.openssl.org/source/版本不要太高,刚开始版本高了,有些函数取消了,链接不上使用1.0.1f即可2.编译成共享库./config no-asm shared --prefix=/usr/local/arm/openssl3.修改MakefileCROSS_COMPILE=arm-none-linux-gnueabi-4.m

2020-12-30 10:42:19 68

原创 RISC-V

瓜大三哥 蜂鸟E203系列蜂鸟E203系列——RISC-V资料芯来科技官网RISC-V MCU

2020-12-30 09:50:35 16

转载 三星半导体发展史

本文摘自《手机风暴》(Mobile Unleashed),文章详细介绍了三星半导体的历史。原文详见:https://www.semiwiki.com/forum/content/7994-detailed-history-samsung-semiconductor.html大型集团是专一求精的对立面,而三星则是典型的集团化大财阀。1938年,三星从不起眼的食品出口商起家,经历了两场大战的动荡和余波,同时实现了多元化和扩张。其早期业务包括制糖、建筑、纺织、保险、零售,以及其他主要以Cheil(三星集团的子

2020-12-28 10:00:57 366

转载 理解 Linux 网络栈:Linux 网络协议栈简单总结分析

网路协议栈

2020-12-27 22:35:16 15

原创 工具

CLion【1】[C/C++ IDE] CLion 配置使用教程【2】Windows上CLion配置和使用教程

2020-12-27 22:13:51 18

转载 用万字给面试官讲清楚了hello world

少点代码,多点头发本文已经收录至我的GitHub,欢迎大家踊跃star 和 issues。https://github.com/midou-tech/articles面试官超级喜欢问hello world问题 特别是校招,我校招碰到过3次其实很多看起来顺其自然简单的东西,背后是一套复杂的学问记得很清楚第一次面试阿里巴巴的时候,面试官上来让我写一个hello world程序当时我真的一面黑人问号的确认了三遍,面试官依旧淡定的说 是的写完就让我聊hello world,一个hello world

2020-12-27 20:49:58 40

原创 C语言打印“Hello World!“的N种方法

helloworld打印的N种方法1.instance analysis1.instance analysis#include <stdio.h>#include<stdlib.h>void float_helloworld(){ float a[3] = { 1143139122437582505939828736.0, 76482007234779498639230238720.0, 9.222452464e-39 }; printf("%d\n",

2020-12-27 20:06:50 63

解析神秘H264格式-从开始1-6帧.zip

用二进制工具打开H264文件,查看头部数据格式,从数据上看解析神秘的H264,了解协议的组成格式和快速的上手

2020-07-22

Z01068C语言数值算法程序大全(第二版).pdf

宝贵的资源,本书一般可买200多,可见很有价值,有缘人好好研究一下。

2019-05-28

C#入门经典(第7版).pdf

很有含金量的一本书,需要多次阅读,多次写代码,一点一点领悟!

2019-05-27

波分复用技术

波分复用技术,随着移动互联网的发展,波分复用运用越来越广。

2019-01-15

实战攻略与高速pcb

PADS是一款制作PCB板的软件。PADS包括PADS Logic、PADS Layout和PADS Router。 PADSLayout(PowerPCB)提供了与其他PCB设计软件、CAM加工软件、机械设计软件的接口(如下图所示),方便了不同设计环境下的数据转换和传递工作。兼容Protel设计 PADS Layout(PowerPCB)具备Protel设计转换器,可与Protel进行PCB设计和封装库的双向数据转换。 支持OrCAD原理图网表

2018-05-03

4412英文资料详解

4412英文芯片详解,要有一定的英语基础,熟悉ARM结构。

2015-10-26

空空如也

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

TA关注的人 TA的粉丝

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