自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 [51 单片机] --串口编程

当RXD接收到数据时,1位起始位会在移位寄存器最左边,然后紧跟着数据位8位,1位校验位,1位停止位,收到停止位时,将触发RI中断(注意这里是RI不是R1),同时将数据放入SBUF中。串口通讯时,使用定时器1作为稳定的信号发送器,需要将其配置为模式2,同时需要知道,程序中配置的串口是一位一位bit发送的数据,收数据也是一字节收写入到sbuf中的。TH1和TL1,以及SMOD控制着串口的时钟,即产生稳定的波特率,在单片机中,TH1和TL1为定时器的初始化值寄存器,使用稳定的时钟信号是靠定时器产生的。

2025-03-02 17:37:52 713

原创 [51 单片机] --定时器中断

从右到左看,TMOD寄存器GATE经过一个非门,一级INT0外部中断0的引脚绑定到一个>=1的逻辑门上,我们知道不管Gate位取值多少,要启动定时器需要TR0 = 1,从图中的&门可以看出,如果Gate位为1,则取决于INT0引脚的值是否为1,如果Gate位为0,则与INT0引脚无关,这就是门控位所决定的事。GATE = 1时,不仅需要TR0 =1/0,TR1 = 1/0控制定时器启动,还需要外部中断控制引脚INT0、INT1 位1,才能启动定时器工作。2 个振荡周期为 1 个状态周期,用 S 表示。

2025-02-23 16:32:22 919

原创 [51单片机] 中断----外部中断总结

cpu收到中断请求,将main函数中的事情停下来,转而执行中断处理函数中的事情,我使用的51单片机有5个中断源,2个外部中断(INT0/INT1),2个定时器中断(T0/T1)和一个串口中断。那系统是如何区分这些中断的啦,即每个中断有一个中断号,同时中断有优先级,可以通过软件控制,高优先级的中断可以抢占低优先级的中断,当两个相同优先级的中断到来,cpu会根据系统中的中断查询顺序,IE寄存器:中断控制寄存器,EA叫总中断,EX0,ET0, EX1,ET1,ES等为其他5个中断的使能寄存器。

2025-02-23 13:19:29 402

原创 snmptrapd 配置与使用

使用snmptrap/snmpinform 验证snmptrapd的功能简单测试

2024-12-11 20:19:36 691

原创 Modbus Tcp 通信交互报文流程

在modbus中,数据存储在四种基本数据类型中:离散输入、线圈、输入寄存器和保持寄存器,离散输入和线圈处理二进制信息,某一bit位代表一种状态ON/OFF, 而输入和保持寄存器处理数值数据,数值可以有整型数据、浮点数数据、字符串数据(ASCCII码传递)。我们知道主站可以管理多个从站,那从站之间如何区别啦,这就需要单元标识符了,可以理解为唯一标识一个从站,当然这个值是0用于标识广播地址,1-247为有效地址,248-255为保留地址。我们常遇到的就是读/写 寄存器数据,先介绍寄存器的读写。

2024-11-19 19:36:52 955 1

原创 netsnmp -5.9.1 支持SHA256,AES256环境搭建和测试

1, 后面发现snmp V3 需要可以支持sha224 - 384 - 512 的认证算法和aes - 128 - 192 - 256加密算法,让后网上搜索了一下,发现在net-snmp的5.8版本之上支持这些算法,但是aes-192-256这些并不是snmp协议标准必须规定和实现的。再次运行:./snmpd -c ./snmpd.conf -L /var/log/snmpd.log & ,成功运行。出现其他配置报错时,执行./configure --help ,看看有什么选项不支持就disable。

2024-11-19 11:15:13 857

原创 加密算法(常用的)

有一点是当我们将明文加密后,输出密文给到对方,对方需要秘钥解密,那这个秘钥怎么给对方啦?可能会奇怪为什么不是(加密-加密-加密)即:加密3次,这是为了跟DES兼容,加入中间的解密,当我们使用的 三个秘钥是相同的秘钥时,就相当于一次DES加密,从上面看出,首先Alice和Bob双方生成秘钥对,通信前先交换Bod的公钥,如果后面两者都有通信,那么对方的公钥两者都会保存,然后使用公钥加密,对端使用自己的私钥解密。加密和解密使用不同的密码,秘钥成对出现,用于加密的秘钥叫公钥,用于解密的秘钥叫私钥。

2024-01-31 23:02:12 470

原创 数组指针 指针数组 使用malloc分配空间

介绍 了数组指针和指针数组 用malloc分配空间时的一些方法

2024-01-08 12:18:20 1852 1

原创 ip link/addr命令的使用(基础)

目前对ip命令的使用还是很迷惑,看了很多博客,做一些总结

2023-09-28 09:48:23 2905

原创 函数sync、fsync、fdatasync以及fcntl

文件IO中的sync/fsync、fdatasync函数,同时简单的介绍了fcntl函数的功能

2023-07-16 13:06:19 853

原创 环境高级编程----文件IO

文件IO

2023-07-16 10:53:24 226 1

原创 pptp 协议理解 搭建

pptp 协议的简单介绍 和 linux 下的搭建

2023-07-01 18:37:10 3174

原创 IPv4地址 网络分类 子网划分(例子)

IPv4地址 网络分类 子网划分的例子和解答

2023-06-04 22:57:50 1101

原创 ipsec VPN技术(基础篇二)

双方响应IKE安全提议报文,同时在自己配置的ipsec 安全规则中寻找匹配的安全规则,主要匹配:加密算法、认证算法、身份认证方法、DH组标识,需要双方具有相同的匹配,才能协商成功。其中的数据是加密的。启用PFS后,在进行IPSec SA协商时会进行一次附加的DH交换,重新生成新的IPSec SA密钥,提高了IPSec SA的安全性。该ISAKMP协商使用的主模式,IKE SA协商双方发送了6个报文,后面的IPsec SA的协商使用的快速模式。:保护一个网络中的设备的安全,通常是两台网关设备。

2023-06-04 21:47:26 3622 1

原创 SNMP MIB库语法 标量和表table结构

本文介绍了snmp的mib库的一些编写规则,和提供了一些实际可用的例子,方便后续开发和复习

2023-06-04 21:47:01 3402

原创 snmp 协议基础(一)

主要讲解了snmp协议的基础知识和工作原理、应用原理,同时介绍了snmp的交互和报文结构,方便入门和复习,也借鉴了一些大佬写的文章,不一一列举了。

2023-05-28 13:20:27 1519

原创 Linux 进程间通信:消息队列 queue

LINUX 中的消息队列

2023-05-21 18:20:25 1208

原创 sscanf /fscanf 解析带空格字符串时的一点注意

fscanf和sscanf函数的一些使用,及其在解析带空格字符串的方法

2023-05-11 11:28:52 3067

原创 sockaddr_in / sockaddr 的理解 和 使用到的一些网络函数(sock inet_*)

1,struct sockaddr 、struct sockaddr_in 和 struct in_addr。2、网络编程中频繁使用的函数简单总结。

2023-05-11 10:31:45 1768

原创 ipsec VPN 技术介绍(基础篇一)

IPsec的一些基础知识讲解

2023-04-22 22:45:30 6995

原创 1----sim模块的使用

sim模块的简单使用1

2023-02-04 16:42:03 1907

原创 关于extern的一些使用和注意——c语言

extern标识符的一些理解

2022-10-14 17:21:32 1354

原创 SNMPv3报文

SNMPv3的加密与认证

2022-07-09 15:33:36 1453 1

原创 一个简单的输入输出引发的问题

输入与输出、内核缓冲区

2022-07-08 10:50:13 194

原创 iptables的处理动作的一些 -j

关于iptables的一些动作处理

2022-07-07 12:18:17 959

原创 iptables 的一些-m模块

iptables一些简单的模块

2022-07-07 10:24:18 2865

原创 UNIX 基础知识

unix简单知识点总结

2022-01-15 15:44:05 290

原创 SIP--会话启动协议

sip协议的简单原理分析和包解析

2022-01-11 16:05:51 1342

原创 printf打印有无‘\n’的理解和其在fork中的一点注意

关于printf函数打印与IO的一些理解,以及其在fork后,中的一点注意

2022-01-10 14:48:30 1580

原创 <编程>输入任意进制数,转换为十进制

题目: 编程实现输入任意进制数,并输入几进制,将其转换为十进制并输出理解: 输入用scanf实现,大于9进制的数用大写字母表示,通过函数实现进制的转换平台使用linux,编译器gcc;代码:#include <stdio.h>#include <string.h>//strlen函数头文件//#include <unistd.h>//任意n进制转换为10进制//本来以为要写两个函数2——9进制,11——1...

2021-07-17 19:49:35 1820

空空如也

空空如也

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

TA关注的人

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