自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 问答 (1)
  • 收藏
  • 关注

原创 记录valgrind的一个抽象问题解决方式

valgrind

2024-07-07 18:25:40 98

原创 Linux驱动学习:字符设备驱动

【代码】Linux驱动学习:字符设备驱动。

2023-10-05 23:32:35 157

原创 Linux驱动学习:Linux文件系统与设备文件

作用一直,都是用于分割命令的,第一个命令是指:匹配。后面的序列,并删除;第二个命令是指:匹配。文件描述了Linux设备号的分配情况。udev的轻量级版本:mdev;:查看系统中包含的设备文件。:获知系统中注册的设备。netlink套接字。android中的是。

2023-10-05 23:31:07 251

原创 Linux驱动学习:Linux内核模块

Linux内核中,导出符号表实质上就是导出函数表,也就是让该文件中的函数能被其它文件引用。

2023-10-02 00:18:40 126

原创 Linux驱动学习:工具链

通常使用GNU工具链编译。下载编译并安装后,运行。

2023-10-02 00:14:27 96

原创 Linux驱动学习:一些编程特点

这个的作用是保证宏定义的使用者能编译错误地使用宏,不对其使用者做任何假设。允许声明函数、变量和类型的特殊属性。要指定一个声明的属性,只需要在声明后添加。使用的非常广泛,但一般只限于错误处理中。等,与对应的标准C库函数功能相同。为属性说明,属性之间以逗号分隔。大部分内建函数是标准C库函数的。而不属于库函数的其他内建函数的。编译器内建版本,比如。可以使用在函数中,用。

2023-10-02 00:12:56 25

原创 Linux驱动学习:Linux内核组成部分

Linux内核主要由进程调度、内存管理、虚拟文件系统、网络接口和进程间通信5个子系统组成。

2023-10-02 00:11:06 32

原创 Linux驱动学习:Kconfig

如以下表示,A只有当,B被选中且C不为n时,才可能出现。的子菜单,而且所有子菜单选项都会基础父菜单的依赖关系。配置选项在菜单树结构中的位置可由两种方法决定。分析依赖关系,生成菜单结构,比如利用。可以是前面描述的如何熟悉,比如。的VGA输出分辨率可以是。之间的配置选项都会成为。除此之外,还可以使用。定义一个选择群,其中。

2023-10-02 00:08:46 65

原创 Linux驱动学习:MakeFile

Makefile基础

2023-10-02 00:06:51 123

原创 stm32——SPI入门学习

SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工同步的通信总 线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提 供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议,比如 AT91RM9200。

2023-08-05 00:08:50 463

原创 wiringPi库的交叉编译

一般步骤为下载对应的库,一般都是git clone 地址设定交叉编译器a. 第一种就是设置CC与CROSS_PREFIX:这种一般是基于./buildb. 第二种就是设置 --host与CC:其中–host就是指定将要运行的平台——这种一般是基于./configurec. 具体就需要查看文档:INSTALL安装。

2023-07-10 23:52:59 130

原创 IO口操控:orangepi zero 2

推荐书籍:unix设计与实现。

2023-06-04 04:32:06 88

原创 交叉编译:orangezero2

已经上传到了csdn,0积分下载。交叉编译器、交叉编译工具链。

2023-05-25 14:59:58 133

原创 orangepizero2的Linux内核驱动编译等过程

其实手册中已经给出了具体的详细过程,但博主不太懂Makefile,同时香橙派官方提供的./build总是会编译全部,并且不会显示错误信息。所以这里就自己先把自己摸索的正确过程写出来:其实类似于树莓派。

2023-05-25 13:23:20 996

原创 wifi模块:esp8266-01s

查询手册以及通过安信可的串口调试可以得到如下示例。

2023-05-16 22:13:57 225

原创 单片机串口

可以是16位也可以是32位,但最高位是用于接收完成标志,第二位是接收到0x0D标志。会改变gState的状态,所以用while等待Transmit发送完毕。

2023-05-12 11:35:25 113

原创 智能垃圾桶项目:Linux环境下

这一个项目让我发现了非常多的问题,比如上面提到的使用条件变量时,要注意mutex必须要被及时获取到。然后项目中有许多的优化点,比如写入文件和写入数据库的时候,会发现写入的数据不对。

2023-05-09 01:46:17 307

原创 udev设备管理工具

udev是一个设备管理工具,udev以守护进程的形式运行,通过侦听内核发出来的uevent来管理/dev目录下的设备文件。udev在用户空间运行,而不在内核空间 运行。它能够根据系统中的硬 件设备的状态动态更新设备文件,包括设备文件的创建,删除等。设备文件通常放在/dev目录 下。使用udev后,在/dev目录下就只包含系统中真正存在的设备。

2023-05-04 20:59:55 130

原创 IIC协议——ARMLinux的学习和stm32、51的复习

注意图内,每次翻转SDA时,SCL=0,因为如果在SCL=1时,SDA进行翻转,那么可能会让从设备误认为主设备在发送开始/结束信号。

2023-05-04 20:59:13 127

原创 orangPi下:蜂鸣器、超声波和舵机学习

【代码】orangPi下:蜂鸣器、超声波和舵机学习。

2023-05-01 05:58:26 56

原创 进程间通信:IPC

IPC的方式通常有管道(包括无名管道和命名管道)、消息队列、信号量、共享存储、Socket、Streams等。其中Socket和Streams支持不同主机上的两个进程IPC信号的名字和编号:以SIG开头,定义在signal.h头文件中,信号名都定义为正整数,具体的信号名称可以使用kill -l来查看信号的名字以及序号,信号是从1开始编号的,不存在0号信号,kill对于0信号有特殊的应用信号的处理:忽略、捕捉和默认动作。

2023-04-27 07:42:01 57

原创 Linux系统编程——进程

程序是静态的概念,磁盘中生成pro文件叫做程序进程是程序的一次运行活动,通俗点意思就是程序跑起来了,系统中就多了一个进程区别就是是否运行了起来每个进程都有一个非负整数表示的唯一ID,叫做pid,类似身份证Pid=0:交换进程,作用是进程调度Pid=1:init进程,作用是系统初始化编程调用getpid()函数获取自身的进程标识符getppid()获取父进程的进程标识符。

2023-04-27 07:39:57 170

原创 Linux系统编程——文件编程

size_t:无符号整数。

2023-04-22 07:46:49 43

原创 单片机——IIC协议

手册是ssd1306。

2023-04-05 14:42:21 390

原创 单片机——DHT11温湿度传感器

即 a→b至少18ms;根据时序图中的部分分析如下。

2023-04-04 02:23:59 349

原创 单片机——LCD1602液晶显示模块

由手册可以知道,RS为寄存器选择,高电平选择数据寄存器,低电平选择指令(地址)寄存器;而写操作,分为写数据和写地址。

2023-04-03 20:33:12 2836

原创 单片机——EC03-DNC4G通信模块初探

先到这里下载相应的用户手册,id=1102下载花生壳软件,借助它,完成内网穿透使用网络调试助手,设置一个TCP服务器。

2023-04-02 23:37:27 190

原创 单片机——wifi模块:esp初探+esp-01s作为服务器

AT指令集是从终端设备(Terminal Equipment,TE)或数据终端设备(Data Terminal Equipment,DTE)向终端适配器(Terminal Adapter,TA)或数据电路终端设备(Data Circuit Terminal Equipment,DCE)发送的。其对所传输的数据包大小有定义:即对于AT指令的发送,除AT两个字符外,最多可以接收1056个 字符的长度(包括最后的空字符)。以设备模式或者双模模式,连接进入自己的路由器网络。时,才进行下一步,否则一直等待。

2023-04-02 02:49:53 1999

原创 单片机——串口初探及串口+中断

注意上面代码中有一行`while(!T1);`这一行是给程序延时的,防止串行数据还没发送完毕时,SBUF就发生了改变,这也是`发送的数据`发生乱序的原因

2023-04-01 00:37:11 380

原创 单片机——感应开关垃圾桶,中断、舵机、超声波测距、完整垃圾桶应用

通过占空比编码模拟信号占空比:一个波形周期内,高电平占据时长的百分比使用的型号为:HC-SR04。

2023-03-30 21:00:31 131

原创 单片机:感应开关垃圾桶——定时器/计数器、寄存器以及简单应用

对于第2,3,4点的解释:一个机器周期内要进行若干步动作,比如:存储器读周期有:送地址、发读命令、检测数据有无准备好、取数据等。根据手册中,我们可以得知关于 TCON中的第5位——TF0(或TF1),如果TF0=1了,那么就代表爆表了,那么此时定时器会向CPU请求中断,知道CPU响应该终端时,才会清0。在一个时钟周期内,CPU仅完成一个最基本的动作。则 应当从第56320个机器周期开始计数,过程:(y+x)= 65536 ,x*1.085μs = 10ms,解出,x = 9216,y=56320。

2023-03-29 00:12:38 146

原创 简易电动车报警——上官一号单片机

【代码】简易电动车报警——上官一号单片机。

2023-03-27 23:45:17 309

原创 第一次点亮单片机的LED灯

【代码】第一次点亮单片机的LED灯。

2023-03-27 12:15:13 40

原创 Linux环境下的C多线程模板

【代码】Linux环境下的C多线程模板。

2023-03-25 23:10:58 29

原创 视图绑定功能

视图绑定。

2023-02-03 00:55:53 243

原创 网络工程——eNSP相关实验

1.vlan端口划分1.1. 创建vlan 2:vlan 21.2. description team11.3. 创建vlan 3:同上1.4. 分配端口:interface Ethernet 0/0/11.5. port link-type access1.6. port default vlan 21.7. 剩余三个端口的分配同上vlan 1为所有端口起始的默认vlan,为了避免错误,一般不直接使用vlan 1配置:一台交换机,4台PC机2.Trun

2021-10-03 16:07:05 767

原创 PT相关实验

1.telnet连接1.1 设置PC端的IP地址1.2 进入交换机1.3 enable(进入系统视图)1.4 configure terminal(进入配置视图)1.5 配置交换机IP:interface vlan 1(进入vlan对应接口1)1.6 ip address 1.1.1.1 255.0.0.0(地址和掩码可改)1.7 启动接口:no shutdown(启动)1.8 退出到系统视图:exit1.9 line vty 0 1

2021-10-03 15:49:41 370

原创 蓝桥杯2018年第九届C++——日志统计,第八题

标题:日志统计小明维护着一个程序员论坛。现在他收集了一份"点赞"日志,日志共有N行。其中每一行的格式是:ts id表示在ts时刻编号id的帖子收到一个"赞"。现在小明想统计有哪些帖子曾经是"热帖"。如果一个帖子曾在任意一个长度为D的时间段内收到不少于K个赞,小明就认为这个帖子曾是"热帖"。具体来说,如果存在某个时刻T满足该帖在[T, T+D)这段时间内(注意是左闭右开区间)收到不少于K个赞,该帖就曾是"热帖"。给定日志,请你帮助小明统计出所有曾是"热帖"的帖子编号。【输入格式】第一行包含三个

2020-10-11 00:35:53 472 1

SPI入门学习流程图,初学者可以结合代码食用

主要是用于SPI学习的,博主学SPI时,基本上封装的代码都是差不多的,然后就画了一张图,表示一下SPI的基础的封装逻辑。结合博文一起食用最佳。Visio打开

2023-08-05

wiringPi库,用学习使用的

适用于学习者,主要是用于给我的文章使用

2023-05-25

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

TA关注的人

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