【雕爷学编程】Arduino动手做(110)---JDY-31 蓝牙模块

news2024/11/27 4:36:19

37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)与否,都会记录下来—小小的进步或是搞不掂的问题,希望能够抛砖引玉。

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十:JDY-31蓝牙转串口适配器SPP模块组无线透传 替换HC-05/06从机

在这里插入图片描述
蓝牙bluetooth

是一种支持设备短距离通信(一般10m内)的无线电技术,能在包括移动电话、PDA、无线耳机、笔记本电脑、相关外设等众多设备之间进行无线信息交换。利用“蓝牙”技术,能够有效地简化移动通信终端设备之间的通信,也能够成功地简化设备与因特网Internet之间的通信,从而数据传输变得更加迅速高效,为无线通信拓宽道路。 蓝牙作为一种小范围无线连接技术,能在设备间实现方便快捷、灵活安全、低成本、低功耗的数据通信和语音通信,因此它是目前实现无线个域网通信的主流技术之一。与其他网络相连接可以带来更广泛的应用。是一种尖端的开放式无线通信,能够让各种数码设备无线沟通,是无线网络传输技术的一种,原本用来取代红外。蓝牙技术是一种无线数据与语音通信的开放性全球规范,它以低成本的近距离无线连接为基础,为固定与移动设备通信环境建立一个特别连接。其实质内容是为固定设备或移动设备之间的通信环境建立通用的无线电空中接口(Radio Air Interface),将通信技术与计算机技术进一步结合起来,使各种3C设备在没有电线或电缆相互连接的情况下,能在近距离范围内实现相互通信或操作。简单的说,蓝牙技术是一种利用低功率无线电在各种3C设备间彼此传输数据的技术。蓝牙工作在全球通用的2.4GHz ISM(即工业、科学、医学)频段,使用IEEE802.11协议。作为一种新兴的短距离无线通信技术,正有力地推动着低速率无线个人区域网络的发展。

在这里插入图片描述
蓝牙原理
蓝牙是一种无线技术标准,可实现固定设备、移动设备和楼宇个人域网之间的短距离数据交换(使用2.4—2.485GHz的ISM波段的UHF无线电波)。蓝牙可连接多个设备,克服了数据同步的难题。 蓝牙技术是世界著名的5家大公司一爱立信(Ericsson)、诺基亚(Nokia)、东芝(TOshiba)、国际商用机器公司(IBM)和英特尔(Intel),于1998年5月联合宣布的一种无线通信新技术。蓝牙设备是蓝牙技术应用的主要载体,常见蓝牙设备比如电脑、手机等。蓝牙产品容纳蓝牙模块,支持蓝牙无线电连接与软件应用。蓝牙设备连接必须在一定范围内进行配对。这种配对搜索被称之为短程临时网络模式,也被称之为微微网,可以容纳设备最多不超过8台。蓝牙设备连接成功,主设备只有一台,从设备可以多台。蓝牙技术具备射频特性。采用了TDMA结构与网络多层次结构,在技术上应用了跳频技术、无线技术等,具有传输效率高、安全性高等优势,所以被各行各业所应用。

蓝牙特点
1、蓝牙技术的适用设备多,无需电缆,通过无线使电脑和电信连网进行通信。
2、蓝牙技术的工作频段全球通用,适用于全球范围内用户无界限的使用,解决了蜂窝式移动电话的“国界”障碍。蓝牙技术产品使用方便,利用蓝牙设备可以搜索到另外一个蓝牙技术产品,迅速建立起两个设备之间的联系,在控制软件的作用下,可以自动传输数据。
3、蓝牙技术的安全性和抗干扰能力强,由于蓝牙技术具有跳频的功能,有效避免了ISM频带遇到干扰源。蓝牙技术的兼容性较好,目前,蓝牙技术已经能够发展成为独立于操作系统的一项技术,实现了各种操作系统中良好的兼容性能。
4、传输距离较短:现阶段,蓝牙技术的主要工作范围在10米左右,经过增加射频功率后的蓝牙技术可以在100米的范围进行工作,只有这样才能保证蓝牙在传播时的工作质量与效率,提高蓝牙的传播速度。另外,在蓝牙技术连接过程中还可以有效的降低该技术与其他电子产品之间的干扰,从而保证蓝牙技术可以正常运行。蓝牙技术不仅有较高对传播质量与效率,同时还具有较高的传播安全性特点。
5、通过调频扩频技术进行传播:蓝牙技术在实际应用期间,可以原有的频点进行划分、转化,如果采用一些跳频速度较快的蓝牙技术,那么整个蓝牙系统中的主单元都会通过自动跳频的形式进行转换,从而将其以随机的进行跳频。由于蓝牙技术的本身具有较高的安全性与抗干扰能力,在实际应用期间可以蓝牙运行的质量。

在这里插入图片描述
蓝牙串口

是基于SPP协议(Serial Port Profile),能在蓝牙设备之间创建串口进行数据传输的一种设备。蓝牙串口的目的是针对如何在两个不同设备(通信的两端)上的应用之间保证一条完整的通信路径。如蓝牙模块(BF10-A)和BF10-A之间,蓝牙模块和蓝牙适配器之间,蓝牙模块和PDA蓝牙之间都可以通过SPP蓝牙串行端口服务来建立蓝牙串口数据传输。蓝牙模块(BF10-A)的目的,是针对如何在两个不同设备(通信的两端)上的应用之间保证一条完整的通信路径,并在它们之间保持一通信段。应用不只表示终端用户应用, 比如也可以是高层协议或作为终端用户应用的其它服务。蓝牙模块(BF10-A)准备把利用设备串口进行通信的应用覆盖在内。在一个简单配置实例当中,通信段就是设备之间的BT直接链路。如果通信段为另一网络,BT用于在该设备和网络接入设备(如Modem)之间建立路径。蓝牙模块(BF10-A)只针对直接互连设备之间的连接,或者是设备与网络接入设备之间的互连。蓝牙模块(BF10-A)支持其它的配置方式,如一端采用BT通信,另一端采用有线接口,如下面第二个图所示。这些设备不只是调制解调器,而且提供简单服务。通信两端设备必须兼容于蓝牙模块BF10-A协议。第一类设备是诸如计算机、打印机等通信终端设备。第二类设备是通信段的一部分,如Modem。但是为了简化协议内容,蓝牙模块(BF10-A)协议对这两种设备不作区分。在两个蓝牙模块BF10-A实体间传输信息也都支持这两类设备,其中有些信息只用于第二类设备。协议中也没有对两类设备所用信息进行严格划分。而是由用户决定使用哪些信息。由于一个设备并不知道通信路径上的其它设备的类型,所以每一个设备都应按照协议规定发送所有可用信息。

在这里插入图片描述
BK3231

BK3231 芯片是一种高度集成的单芯片蓝牙3.0 HID设备。它集成了高性能的收发信机、丰富的基带处理器和蓝牙HID配置文件。FLASH程序存储器使其适合自定义应用,也可用于其他蓝牙应用,如spp控制器

BK3231特性:

工作电压从2.0V到3.6V

蓝牙3.0兼容

-86dBm对1Mbps模式和2dBm发射功率的灵敏度

HID v1.0,以及其他根据请求提供的光轮廓

16MHz晶体参考时钟

键盘用56针QFN 7mmx7mm封装

I2C、spi和UART接口

10位电池显示器ADC

PWM模式下的三个定时器

在这里插入图片描述
JDY-31蓝牙转串口适配器SPP模块组无线透传 替换HC-05/06从机

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机
项目:进入蓝牙模块 AT 模式,输入AT,看看是不是有OK返回
JDY-31模块与Uno接线
VCC—— 5V
GND——GND
TXD——D7
RXD——D8

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目:进入蓝牙模块 AT 模式,输入AT,看看是不是有OK返回

JDY-31模块与Uno接线

VCC—— 5V

GND——GND

TXD——D7

RXD——D8

*/



#include <SoftwareSerial.h>

//使用软件串口,能将数字口模拟成串口

SoftwareSerial BT(7, 8);  //新建对象,接收脚为7,发送脚为8

char val;  //存储接收的变量



void setup() {

  Serial.begin(9600);  //与电脑的串口连接

  Serial.println("BT is ready!");

  BT.begin(9600);  //设置HC-06兼容模块波特率

}



void loop() {

  //如果串口接收到数据,就输出到蓝牙串口

  if (Serial.available()) {

  val = Serial.read();

  BT.print(val);

  }

  //如果接收到蓝牙模块的数据,输出到屏幕

  if (BT.available()) {

  val = BT.read();

  Serial.print(val);

  }

}

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机
项目二:JDY-31蓝牙模块从模式与Arduino的回环测试
JDY-31模块与Uno接线
VCC VCC
GND GND
TXD D0
RXD D1

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目二:JDY-31蓝牙模块从模式与Arduino的回环测试

JDY-31模块与Uno接线

VCC              VCC

GND            GND

TXD              D0

RXD              D1

*/



void setup(){

Serial.begin(9600);

}



void loop(){

  while(Serial.available())

  {

    char c=Serial.read();

    if(c=='A')

      {

      Serial.println("Hello I am Eagler8");

      }

  }

}

实验串口返回情况

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机
项目三:通过JDY-31蓝牙模块Arduino 控制 LED 灯
串口发送“1”为开灯,发送“2"为关灯
JDY-31模块与Uno接线
VCC VCC
GND GND
TXD D0
RXD D1

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目三:通过JDY-31蓝牙模块Arduino 控制 LED 灯

串口发送“1”为开灯,发送“2"为关灯

JDY-31模块与Uno接线

VCC        VCC

GND        GND

TXD        D0

RXD        D1

*/



void setup(){

  Serial.begin(38400);

  pinMode(13, OUTPUT);

}



void loop(){

  while(Serial.available())

  {

  char c=Serial.read();

  

    if(c=='1')

    {

      Serial.println("Eagler8");

      

      Serial.write("Serial--13--high");

      digitalWrite(13, HIGH);

    }

    

    if(c=='2')

    {

    Serial.write("Serial--13--low");

    digitalWrite(13, LOW);

    }

  }

}

实验串口返回情况

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目四:通过JDY-31蓝牙模块Arduino 控制 LED 灯

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目四:通过JDY-31蓝牙模块Arduino 控制 LED 灯

连接方式

JDY-31模块与Uno:

VCC        VCC

GND        GND

TXD        D0

RXD        D1

*/



const byte LED = 13;

char val;    // 儲存接收資料的變數,採字元類型



void setup() {

  pinMode(LED, OUTPUT);

  // 序列傳輸速率依照藍牙模組的設定

  // 115200bps或57600bps

  Serial.begin(57600);

  Serial.println("Welcome to Arduino!");

}



void loop() {

  if( Serial.available() ) {

  val = Serial.read();

  switch (val) {

  case '0' :

    digitalWrite(LED, LOW);

    Serial.println("LED OFF");

    break;

  case '1' :

    digitalWrite(LED, HIGH);

    Serial.println("LED ON");

    break;

  }

  }

}

实验串口返回情况

在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目五:最简单的蓝牙控制LED的程序,输入1为亮,其他为熄灭,串口显示输入字符

(手机端-应用宝-搜索《SPP》-安装-打开-搜蓝牙-连接-设置控制面板)

连接方式 LED D13

/*

【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目五:最简单的蓝牙控制LED的程序,输入1为亮,其他为熄灭,串口显示输入字符

(手机端-应用宝-搜索《SPP》-安装-打开-搜蓝牙<JDY-31-SPP>-连接-设置控制面板)

连接方式 LED D13

JDY-31模块与Uno:

VCC        VCC

GND        GND

TXD        D0

RXD        D1

*/



void setup(){

pinMode(13,OUTPUT);

Serial.begin(9600);

}



void loop(){

  if(Serial.available())

  {

  char num = Serial.read();

  Serial.println(num);

  if(num == '1')

  digitalWrite(13,HIGH);

  else

  digitalWrite(13,LOW);

  }

}

实验串口返回情况

在这里插入图片描述
手机端-应用宝-搜索《SPP》-安装-打开-搜蓝牙-连接-设置控制面板

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)

实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机

项目六:蓝牙控制的三色自锁灯(板载灯监测蓝牙接通状态)

/*
【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
实验一百一十: JDY-31蓝牙转串口适配器SPP-C模块组无线透传 替换HC-05/06从机
项目六:蓝牙控制的三色自锁灯(板载灯监测蓝牙接通状态)
连接方式
JDY-31模块与Uno:
VCC        VCC
GND        GND
TXD        D0
RXD        D1
*/

int ledPinGreen = 9;
int ledPinBlue = 11;
int ledPinRed = 10;
int beep = 13;//蓝牙接通指示灯
int state=7;//蓝牙state口
int signal;//测试是否连接

void setup() {
  pinMode(ledPinGreen, OUTPUT);
  pinMode(ledPinBlue, OUTPUT);
  pinMode(ledPinRed, OUTPUT);
  Serial.begin(9600);
  pinMode(state,INPUT);
  pinMode(beep,OUTPUT);
}

void loop() {
  signal= digitalRead(state);
  if(signal==HIGH)
  digitalWrite(beep,HIGH);
  else
  digitalWrite(beep,LOW);
  while (Serial.available()) {
  char p = Serial.read();
    Serial.println(p);
  //按下 B 键 蓝灯亮
  if (p == 'B') {
    rgbLedOn(ledPinRed, ledPinGreen, ledPinBlue);
  }
  //按下 R 键 红灯亮
  if (p == 'R' ) {
    rgbLedOn( ledPinGreen, ledPinBlue, ledPinRed);
  }
  //按下 G 键 绿灯亮
  if (p == 'G' ) {
    rgbLedOn( ledPinBlue, ledPinRed, ledPinGreen);
  }
  }
}
//RGBLED
void rgbLedOn(int onLedPin, int offLedPin1, int offLedPin2) {
  digitalWrite(onLedPin, HIGH);
  digitalWrite(offLedPin1, LOW);
  digitalWrite(offLedPin2, LOW);
}

实验场景图
在这里插入图片描述
实验开源仿真编程(Linkboy V4.63)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/88689.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Kubernetes】资源管理(命令)总结

kubernetes&#xff0c;是一个全新的基于容器技术的分布式架构领先方案&#xff0c;是谷歌严格保密十几年的秘密武器----Borg系统的一个开源版本&#xff0c;于2014年9月发布第一个版本&#xff0c;2015年7月发布第一个正式版本。 kubernetes的本质是一组服务器集群&#xff0…

Java+Swing图书管理系统2.0

JavaSwing图书管理系统2.0一、系统介绍二、功能展示1.用户登陆页面2.首页3.图书查询4.图书入库&#xff08;管理员&#xff09;5.图书借还情况&#xff08;管理员&#xff09;6.图书证管理&#xff08;管理员&#xff09;7.借书&#xff08;学生、老师&#xff09;8.还书&#…

pikahcu靶场-12 目录遍历,敏感信息泄露,不安全的URL跳转

目录遍历&#xff0c;敏感信息泄露&#xff0c;不安全的URL跳转 目录遍历漏洞 概述 在web功能设计中,很多时候我们会要将需要访问的文件定义成变量&#xff0c;从而让前端的功能便的更加灵活。 当用户发起一个前端的请求时&#xff0c;便会将请求的这个文件的值(比如文件名称…

Netflix:用神经网络改善视频质量

点击上方“LiveVideoStack”关注我们▲扫描图中二维码或点击阅读原文▲了解音视频技术大会更多信息编者按Editors note眼看用户视频的增长将超过服务器的算力上限&#xff0c;既没有额外的服务器来支持&#xff0c;也不能对用户体验造成大的冲击&#xff0c;Instagram的工程师找…

C罗轮播图(HTML+CSS+JS)

✅作者简介&#xff1a;热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏&#xff1a;前端案例分…

RFM 模型

RFM 模型顾客价值分析顾客价值分析 由于激烈的市场竞争&#xff0c;各个公司相继推出了多样灵活的优惠方式来吸引更多的客户。 对一个没有购买力的顾客&#xff0c;你打电话推销优惠活动毫无作用&#xff0c;可一个高价值顾客&#xff0c;会说有优惠活动怎么不通知我呢&#…

交叉梯度函数的MATLAB实现及代码分享02

交叉梯度函数的MATLAB实现及代码分享02 交叉梯度函数可用于反演成像中。作为一个连接不同物性参数的桥梁&#xff0c;交叉梯度函数可以实现不同物性参数的联合反演成像。 本文是对上一个博文的补充&#xff0c;详见交叉梯度函数的MATLAB实现及代码分享01&#xff0c;上一篇博…

人工智能导论课堂笔记

人工智能导论时间&#xff1a;2022年10月19日下午 班级&#xff1a;2022级人工智能应用技术1班 作业问题&#xff1a; Python安装注意事项 1.下载Python3.X的版本&#xff0c;如&#xff1a;3.10, 3.9&#xff0c; 3.8&#xff0c;不推荐下载2.7版本&#xff08;已经不使用&…

【Mysql】慢sql分析优化案例汇总

【Mysql】慢sql分析优化案例汇总&#xff08;一&#xff09;案例一&#xff1a;阿里云慢sql挑战赛实战&#xff08;一&#xff09;案例一&#xff1a;阿里云慢sql挑战赛实战 190毫秒干到2毫秒 【1】表结构 【2】待优化sql 【3】第一次explain分析 【4】选取驱动表 优先选择…

java项目_第174期ssm高校信息资源共享平台_ssm毕业设计

java项目_第174期ssm高校信息资源共享平台_ssm毕业设计 【源码请到下载专栏下载】 今天分享的项目是《ssm高校信息资源共享平台》 该项目分为3个角色&#xff0c;管理员、学生、教师角色。 学生可以浏览前台,包含功能有&#xff1a; 首页、课程信息、教学资源、新闻资讯。 教师…

Linux Kernel 6.0 CXL Core pci.c 详解

文章目录前言相关链接Ref正文前言 CXL 是一个比较新的技术&#xff0c;所以我研究的内核源码是选了当前比较新的内核版本 linux 6.0。打算将内核关于 CXL 的驱动进行解析一遍&#xff0c;一步一步慢慢来。 在阅读之前&#xff0c;希望读者能有一定的 PCIe 基础知识&#xff0…

java计算机毕业设计ssm智能线上教育mo0l5(附源码、数据库)

java计算机毕业设计ssm智能线上教育mo0l5&#xff08;附源码、数据库&#xff09; 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat8.5 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。…

性能测试知识之三大模型

今天的这篇文章我会聊聊在实际工作中开展性能测试&#xff0c;前期最核心的工作。即业务模型、流量模型和数据模型这三大模型&#xff0c;该如何评估和建立。在性能测试工作中&#xff0c;业务模型、流量模型和数据模型是至关重要且必须在项目中构建的&#xff0c;否则很可能导…

【算法分析与设计】【期中(末)复习题】【2022秋】

文章目录一. 单选题二. 填空题三. 判断题四. 多选题一. 单选题 1.按照渐近阶从低到高的顺序排列下列表达式&#xff1a; 30n&#xff0c;2logn&#xff0c;4&#xff0c;n! A. 4<30n<2logn<n! B. 30n<4<2logn<n! C. n!<4<2logn<30n D. 4<2logn&…

YOLO算法改进之结合GradCAM可视化热力图(附详细教程)

🎄🎄YOLOv5/v7改进之结合GradCAM可视化热力图(附详细教程)🎄🎄 🚀🚀🚀NEW!!!魔改YOLOv5/v7目标检测算法来啦 ~ 🐱‍🏍 计算机视觉 —— 致力于目标检测领域科研Tricks改进与推荐 | 主要包括主干网络改进、轻量化网络、注意力机制、检测头部改进、空间金…

主数据管理(MDM),数据中台,国内有哪些知名供应商呢?

当企业的信息化、数据化发展到一定阶段的时候&#xff0c;大部分企业都会对主数据管理产生需求。为帮助企业加速数字化建设步伐&#xff0c;亿信华辰凭借多年在行业领域内积累的丰富经验并结合相关大数据技术成功打造了一款主数据管理产品&#xff0c;覆盖主数据标准、主数据质…

019 | 探究布衣上的刺绣图腾文化功能——以贵州册亨县布依族刺绣为例 | 大学生创新训练项目申请书 | 极致技术工厂

研究目的 当今我国社会的主要矛盾是人民日益增长的美好生活需要和不平衡不充分的发展之间的矛盾。但经济增长过快所带来的联动效应&#xff0c;导致人们一定程度上只注重金钱、利益&#xff0c;从而忽视了培养高尚的理想信念和增强民族精神的重要性。社会要保持平衡性&#xff…

基于低代码平台设计的订单管理系统,助力家具行业信息化建设

编者按&#xff1a;随着信息化的高速发展&#xff0c;传统的人工订单管理模式已经不适合现在企业发展的需求&#xff0c;一个成熟的订单管理系统可以帮助企业解决订单管理混乱的问题。本文介绍了低代码平台在订单管理系统实现方面的优势&#xff0c;并展示了相关案例。 关键词…

PE文件详解

字节存放顺序是小尾存储&#xff0c;高位保存高字节、低位保存低字节&#xff0c;因此是两位两位倒着读 1、DOS头&#xff1a;包括MZ头和DOS存根&#xff0c;指向DOS可执行程序部分 &#xff08;1&#xff09;MZ头&#xff1a;长度 40H&#xff0c;即4行乘16位&#xff0c; e_…

mmap

文章目录使用示例函数原型mmapmunmap传统读写文件mmap 原理eager实现lazy实现缺点使用示例 #include <stdio.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <unistd.h> #include <sys/mman.h>int main(i…