Day10_GY39

1. 6818串口初始函数

6818右上角,有4个串口,分别是COM2 COM3 COM4 COM 5

VCC TX RX GND

GY39模块

VCC TX RX GND

TX --- RX RX---TX

注意电源千万别接反了!

LINUX下一切皆文件。串口在LINUX中也是以文件的形式存在的。串口发送给数据就是往文件中写数据,串口接收就是从文件读取数据。
#include <stdio.h>
#include <fcntl.h> 
#include <unistd.h>
#include <termios.h> 
#include <stdlib.h>
#include <netdb.h>
#include <string.h>
#include <errno.h>
//6818串口所对应的文件名
#define COM2 "/dev/ttySAC1"
#define COM3 "/dev/ttySAC2"
#define COM4 "/dev/ttySAC3"
/* 设置串口参数(初始化串口) */
void init_tty(int fd)
{    
	//声明设置串口的结构体
	struct termios termios_new;
	//先清空该结构体
	bzero( &termios_new, sizeof(termios_new));
	//	cfmakeraw()设置终端属性,就是设置termios结构中的各个参数。
	cfmakeraw(&termios_new);
	//设置波特率
	//termios_new.c_cflag=(B9600);
	cfsetispeed(&termios_new, B9600);
	cfsetospeed(&termios_new, B9600);
	//CLOCAL和CREAD分别用于本地连接和接受使能,因此,首先要通过位掩码的方式激活这两个选项。    
	termios_new.c_cflag |= CLOCAL | CREAD;
	//通过掩码设置数据位为8位
	termios_new.c_cflag &= ~CSIZE;
	termios_new.c_cflag |= CS8; 
	//设置无奇偶校验
	termios_new.c_cflag &= ~PARENB;
	//一位停止位
	termios_new.c_cflag &= ~CSTOPB;
	tcflush(fd,TCIFLUSH);
	// 可设置接收字符和等待时间,无特殊要求可以将其设置为0
	termios_new.c_cc[VTIME] = 10;
	termios_new.c_cc[VMIN] = 1;
	// 用于清空输入/输出缓冲区
    	tcflush (fd, TCIFLUSH);
	//完成配置后,可以使用以下函数激活串口设置
	if(tcsetattr(fd,TCSANOW,&termios_new) )
		printf("Setting the serial1 failed!\n");

}

2.GY39传感器模块

GY-39 可以测量:气压,温湿度,光强度传感器模块。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tnNV0NTo-1654176757146)(…/BLOGS_img/image-20220528202432066.png)]

引脚以及功能:

image-20220528202445272

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WpI2hcaP-1654176757148)(…/BLOGS_img/image-20220528202533714.png)]

在串口协议下,每个帧包含了8-13个字节的内容。

其中前两个字节都为5A,为帧头标志,第三个字节表示数据类型。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wG062Am9-1654176757149)(…/BLOGS_img/image-20220528202838871.png)]

其他为数据位,最后一个是校验和。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1pl612RD-1654176757150)(…/BLOGS_img/image-20220528202936000.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CTKf7Urc-1654176757151)(…/BLOGS_img/image-20220528202949160.png)]

例如:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m8URgfZg-1654176757152)(…/BLOGS_img/image-20220528203012654.png)]

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值