- 博客(45)
- 资源 (1)
- 收藏
- 关注
原创 CMake的简单使用
本文介绍了如何使用CMake在Ubuntu系统下构建一个最简单C/C++项目,成功编译并运行。此外,介绍了一些CMake下的常见语法。
2024-02-20 22:49:50 1104
原创 智能指针类模板:auto_ptr、unique_ptr、shared_ptr的原理与使用
本文介绍了智能指针类模板的原理与使用,其中主要介绍了auto_ptr、unique_ptr、shared_ptr,它们有各自的特性,适用于不同的场景,同时也各有优点和缺陷。实际使用时要结合其特点进行选择。
2023-06-24 18:01:31 1270
原创 从字符串中读写的方法:c语言中的sscanf、sprintf函数,c++中的I/O流strstream、stringstream
众所周知,c语言中我们常使用的标准输入输出流函数为scanf()、printf(),默认从键盘上输入数据、向屏幕输出数据。此外,c语言中还提供了另一组库函数sscanf()、sprintf()函数,它们的功能与前者相同,只不过输入输出的对象为字符串。这两个函数的原型为除了第一个参数外,其他参数的含义和用法实际上是与scanf()、printf()相同的。下面给举个例子。运行结果为。
2023-06-08 23:57:52 1199
原创 C/C++ leetcode刷题的各种小tips记录
()(括号/函数运算符) [](下标运算符).(成员选择(对象)) ->(成员选择(指针))!(逻辑非) ~(按位取反)+(正) -(负)*(取值运算符) &(取地址运算符)(type)(强制类型转换)>(大于) >=(大于等于)<(小于) <=(小于等于)=(赋值运算符)
2023-06-07 19:27:45 681
原创 浮点数的存储方式和取值范围
本文详细的描述了计算机内有符号整形和浮点数的编码存储方式,介绍了原码、补码、反码、移码的编码方式,和浮点数的IEEE 745编码方式和原理。
2023-06-07 18:56:47 1979
原创 Camera简介(一):摄像头模组CCM的结构和原理简述
本文介绍了镜头模组CCM的结构,镜头模组主要由镜头lens、音圈马达VCM、红外滤光片IR-cut Filter、图像传感器Sensor、柔性印制电路板FPCB五大部分组成,本文依次介绍了每一部分的作用和原理。
2022-08-24 07:55:33 14479 1
原创 串行通信:常见的串行通信接口协议UART、SPI、I2C简介
本文旨在介绍在三种常见的信号传输通信协议——SPI、UART、I2C,介绍三种协议的原理和传输方式,对比各自的特点,总结优缺点和各自的应用环境
2022-07-31 16:40:06 11130 1
原创 MIPI简介(三)——CSI-2的概述与分层方式
本文介绍了MIPI协议中的CSI协议,重点介绍CSI的分层方式、每个层级的功能和用途,此外介绍了CSI的数据帧的格式。
2022-06-17 00:05:05 19258 1
原创 MIPI简介(二)——物理层D-PHY
本文介绍了MIPI中的最常用的物理层协议D-PHY,主要介绍D-PHY的原理、两种模式、硬件结构等等,此外还介绍了通用Lane的结构和数据Lane的工作模式。
2022-06-17 00:03:23 8826 1
原创 Image Sensor原理和常用术语简单介绍
本文介绍了Sensor中常用的概念,Sensor的两种常见分类CCD Sensor和CMOS Sensor,重点介绍了CMOS Sensor的原理和特性。此外介绍了Sensor中常用的概念Gain和Flicker现象。
2022-06-16 23:53:34 4163
原创 VMware Tools和open-vm-tools的安装与使用:解决虚拟机不全屏和无法传输文件的问题
在VMware Workstation软件中新建一个虚拟机,会遇到虚拟机屏幕不能充满整个屏幕问题,主机与虚拟机间不能拖拽文件、剪切板不互通的问题。VMware官方推荐我们安装VMware Tools来解决,但其中会遇到很多坑,本文就是对这些坑的一些总结。...
2022-04-15 19:21:16 18696 3
原创 Linux中的线程创建函数pthread_create函数
Linux系统中用户线程的创建和运行方法,即pthread_create函数的用法,并举了一个简单的实例。
2022-03-24 18:39:30 5333
原创 linux驱动开发(五):ioctl()函数使用实例——地址传参
介绍了Linux系统设备驱动中ioctl接口的进一步使用方法,这一次我们使用ioctl传递复杂的参数,因此只能传递参数的地址,同时借用copy_from_user和copy_to_user两个函数完成用户空间与内核空间之间的数据拷贝。
2022-03-24 17:51:16 5456 1
原创 linux驱动开发(四):ioctl()函数
Linux驱动程序中的ioctl接口,描述了内核空间和用户空间中分别对ioctl接口的定义和用法,介绍了两者间的传输协议,并通过举了一个简单的实例。
2022-03-24 16:18:53 26156 11
原创 Linux内存管理(一):内存管理概述
Linux系统的内存管理基本概念,介绍了虚拟内存、物理内存、逻辑地址、物理地址之间的关系,简单介绍了Linux最基本的虚拟内存管理机制——页式管理机制,简要描述了进程虚拟空间的划分方式和各区域的作用。
2022-03-03 17:02:53 2454 1
原创 Linux kernel保证Cache和DMA的数据一致性
介绍了CPU、内存、Cache、DMA、外设之间的关系,提出了Cache与DMA数据不一致的问题并解释了问题产生的原因,介绍了常用的解决方法,介绍了Linux针对Cache刷新设置的API。
2022-03-03 11:18:49 1826
原创 Linux kernel:多个.c和.h文件编译成一个.ko模块
Linux系统中编写驱动程序,使用多个.c和.h源文件编译得到一个.ko模块,简单举例并编译运行。
2022-02-23 19:46:56 3354
翻译 Practical Pigment Mixing for Digital Painting文献简单翻译
《Practical Pigment Mixing for Digital Painting》文献翻译没获得原文授权,仅供学习和交流使用,侵删
2022-01-27 11:53:14 705
原创 PyTorch:保存函数pytorch.save()和加载函数pytorch.load()的使用
使用Pytorch中的save()函数和load()函数保存和加载模型
2022-01-24 21:05:19 3229
原创 Blender:超详细的甜甜圈制作教程(三)【原教程 油管:Blender Guru】——制作糖粒和面包
根据Blender Guru的甜甜圈教程,一步一步的制作一个甜甜圈。本节使用到的技术主要有:粒子系统、权重绘制、纹理贴图绘制、uv贴图制作。
2022-01-21 23:56:42 2372
原创 Blender:超详细的甜甜圈制作教程(二)【原教程 油管:Blender Guru】——渲染篇
根据Blender Guru的甜甜圈教程,一步一步的制作一个甜甜圈。本节使用到的技术主要有:材质节点。
2022-01-21 22:34:10 2176
原创 Blender:超详细的甜甜圈制作教程(一)【原教程 油管:Blender Guru】——建模篇
根据Blender Guru的甜甜圈教程,一步一步的制作一个甜甜圈。本节使用到的技术主要有:多边形建模、细分修改器、实体化修改器、简单的3D雕刻。
2022-01-21 22:12:01 8920
原创 PyTorch:Torchvision的简单介绍与使用
Torchvision库的介绍。Torchvision库下包括四个常用的包models、datasets、transforms和utils,这篇文章针对每个包进行简单介绍。
2022-01-15 22:09:14 14830
原创 PyTorch:梯度计算之反向传播函数backward()
介绍Pytorch中的DCG机制、backward()函数,并说明backward()函数的参数
2021-12-28 10:36:56 17762 14
原创 PyTorch:批训练下的数据读取机制DataLoader
pytorch中使用TensorDataset将样本集打包成dataset,再由DataLoader分batch加载并训练。
2021-12-28 09:45:28 4322
原创 PyTorch:使用torch.nn.Module模块自定义模型结构
Pytorch下使用torch.nn.Module类构建神经网络的若干种方法
2021-12-28 09:42:10 5552
原创 linux驱动开发(二):Linux字符设备驱动程序(设备号、cdev、设备节点、file_operations)
Linux字符设备驱动的一些原理。
2021-12-23 20:57:01 3439 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人