当前位置: 首页 > news >正文

智能家居项目(五)测试串口功能

目录

一、写一个单独测试串口的demo

二、直接运行上一篇智能家居的代码


一、写一个单独测试串口的demo

1、TTL串口与树莓派的连接方式

(1)TTL的RXD和TXD针脚连接到树莓的TXD和RXD上(T–>R R–>T),交叉连!!!

(2)树莓派的GND与TTL串口的GND相连

2、初次使用树莓派串口编程,需要配置

(1)修改cmdline.text文件

sudo vi /boot/cmdline.txt

(2)删除【】之间的部分:【console=ttyAMA0,115200】这部分删除

dwc_otg.lpm_enable=0 【console=ttyAMA0,115200】 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

 (3)重启树莓派

sudo reboot 

3、编写测试串口的demo 

#include <wiringPi.h>
#include <wiringSerial.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <stdio.h>
#include <stdlib.h>void serialSetup()
{if(wiringPiSetup() == -1){printf("open error\n");exit(-1);}
}int main()
{char buf[128] = {'\0'};int serialDataCount = 0;serialSetup();int fd;if((fd = serialOpen("/dev/ttyAMA0",9600)) == 1)  //初始化串口,波特率9600{exit(-1);}while(1){serialDataCount = read(fd,buf,sizeof(buf));if(serialDataCount == 0){printf("nodatas\n");			}else{printf("get datas : %s \n",buf);memset(buf,'\0',sizeof(buf));serialDataCount = 0;}}
}

运行上述代码:

(1)gcc demo1.c -lwiringPi

(2)./a.out

二、直接运行上一篇智能家居的代码

./test

 

上一篇:智能家居项目(四)添加Socket服务器功能_Love小羽的博客-CSDN博客

相关文章:

智能家居项目(五)测试串口功能

目录 一、写一个单独测试串口的demo 二、直接运行上一篇智能家居的代码 一、写一个单独测试串口的demo 1、TTL串口与树莓派的连接方式 &#xff08;1&#xff09;TTL的RXD和TXD针脚连接到树莓的TXD和RXD上&#xff08;T–>R R–>T&#xff09;&#xff0c;交叉连&…...

2023年全国最新道路运输从业人员精选真题及答案7

百分百题库提供道路运输安全员考试试题、道路运输从业人员考试预测题、道路安全员考试真题、道路运输从业人员证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 71.根据《中华人民共和国安全生产法》&#xff0c;生产经营单位…...

python的所有知识点(含讲解),不看就亏死了

目录 简介 特点 搭建开发环境 版本 hello world 注释 文件类型 变量 常量 数据类型 运算符和表达式 控制语句 数组相关 函数相关 字符串相关 文件处理 对象和类&#xff0c;注&#xff1a;不是那个对象&#xff01;&#xff01;&#xff01;&#xff01;&…...

【Servlet篇】Response对象详细解读

文章目录Response 继承体系Response 设置响应数据设置响应行数据设置响应头数据设置响应体数据Response 重定向Response 响应字符数据Response 响应字节数据Response 继承体系 前面说到&#xff0c;我们使用 Request 对象来获取请求数据&#xff0c;使用 Response 对象来设置响…...

SAP FICO期初开账存货导入尾差

一、问题 1.AFS物料网格级别库存导入先除再乘有尾差&#xff1a; 旧系统数据迁移自两个系统&#xff1a;一个管理数量账&#xff08;网格级别&#xff09;&#xff0c;一个管理金额账&#xff08;物料级别&#xff09; 2.MB52分工厂与MB5L分工厂统计差异&#xff1a; M…...

微信商城小程序怎么做_分享实体店做微信商城小程序制作步骤

各行各业都在用微商城小程序开店&#xff0c;不管是餐饮店还是便利店&#xff0c;还是五金店。都是可以利用微信小程序开一个线上店铺。实现线上跟线下店铺更加全面的结合。维护好自己的老客户。让您的客户给您拉新&#xff0c;带来新客户。小程序经过这几年的快速发展和不断升…...

【moment.js】时间格式化插件

Moment.js 用于在JavaScript中解析&#xff0c;验证&#xff0c;操作和显示日期和时间。是一款在项目中使用频率极高的时间格式化工具&#xff0c;Ant Design Vue 组件中就是使用它来处理时间的。 安装 npm install moment --save # npm yarn add moment # Ya…...

微信小程序开发【壹】

随手拍拍&#x1f481;‍♂️&#x1f4f7; 日期: 2023.02.24 地点: 杭州 介绍: 2023.02.24上午十点&#xff0c;路过学院的教学楼时&#x1f3e2;&#xff0c;突然看见了一团粉红色。走进一看是一排梅花&#x1f338;&#xff0c;赶在它们凋零前&#xff0c;将它们定格在我的相…...

2 k-近邻算法

0 问题引入 想一想&#xff1a;下面图片中有三种豆&#xff0c;其中三颗豆品种未知&#xff0c;如何判断他们类型&#xff1f; 1 KNN概述 1.1 KNN场景 电影可以按照题材分类&#xff0c;那么如何区分 动作片 和 爱情片 呢&#xff1f; 动作片&#xff1a;打斗次数更多爱情…...

深入探究文件I/O

目录Linux 系统如何管理文件静态文件与inode文件打开时的状态返回错误处理与errnostrerror 函数perror 函数exit、_exit、_Exit_exit()和_Exit()函数exit()函数空洞文件概念实验测试O_APPEND 和O_TRUNC 标志O_TRUNC 标志O_APPEND 标志多次打开同一个文件验证一些现象多次打开同…...

【LeetCode】剑指 Offer(9)

目录 题目&#xff1a;剑指 Offer 25. 合并两个排序的链表 - 力扣&#xff08;Leetcode&#xff09; 题目的接口&#xff1a; 解题思路&#xff1a; 代码&#xff1a; 过啦&#xff01;&#xff01;&#xff01; 题目&#xff1a;剑指 Offer 26. 树的子结构 - 力扣&#…...

python 遍历可迭代对象的方法

python 遍历可迭代对象的方法 可迭代(iterable) 迭代(遍历)就是按照某种顺序逐个访问对象中的每一项。 Python中有很多对象都是可以通过for语句来直接遍历的&#xff0c;例如list、string、dict等&#xff0c;这些对象都是可迭代的&#xff0c;被称为可迭代对象。 可以将可迭…...

【数据库】 第11章 并发控制

第11章 并发控制 事务 事务&#xff1a;(从微观角度&#xff0c;或者从DBMS角度)是数据库管理系统提供的控制数 据操作的一种手段&#xff0c;通过这一手段&#xff0c;应用程序员将一系列的数据库操作组合 在一起作为一个整体进行操作和控制&#xff0c;以便数据库管理系统能…...

Python3-数字

Python3 数字(Number) Python 数字数据类型用于存储数值。 数据类型是不允许改变的,这就意味着如果改变数字数据类型的值&#xff0c;将重新分配内存空间。 Python 支持三种不同的数值类型&#xff1a; 整型(int) - 通常被称为是整型或整数&#xff0c;是正或负整数&#x…...

(四十一)Read Committed隔离级别是如何基于ReadView机制实现的?

今天我们来给大家讲一下&#xff0c;基于之前我们说的ReadView机制是如何实现Read Committed隔离级别的&#xff0c;那么当然了&#xff0c;首先就是要先做一些简单的回顾。所谓的Read Committed隔离级别&#xff0c;我们可以用骚气一点的名字&#xff0c;就是简称为 RC 隔离级…...

React echarts封装

做大屏的时候经常会遇到 echarts 展示&#xff0c;下面展示在 React &#xff08;^18.2.0&#xff09; 中对 echarts &#xff08;^5.4.0&#xff09; 的简单封装。 文章首发于https://blog.fxss.work/react/echarts封装.html&#xff0c;样例查看 echarts 封装使用 props 说…...

【C语言进阶】了解计算机的程序环境和预处理过程 掌握计算机预处理操作

​ ​&#x1f4dd;个人主页&#xff1a;Sherry的成长之路 &#x1f3e0;学习社区&#xff1a;Sherry的成长之路&#xff08;个人社区&#xff09; &#x1f4d6;专栏链接&#xff1a;C语言进阶 &#x1f3af;长路漫漫浩浩&#xff0c;万事皆有期待 文章目录1.编译与链接1.1 程…...

(三十六)大白话数据库幻读,本质到底是个什么问题?

上一讲我们给大家讲解了不可重复读这个问题&#xff0c;这个问题简单来说&#xff0c;就是一个事务多次查询一条数据&#xff0c;结果每次读到的值都不一样&#xff0c;这个过程中可能别的事务会修改这条数据的值&#xff0c;而且修改值之后事务都提交了&#xff0c;结果导致人…...

【算法经典题集】递归(持续更新~~~)

&#x1f63d;PREFACE&#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐ 评论&#x1f4dd;&#x1f4e2;系列专栏&#xff1a;算法经典题集&#x1f50a;本专栏涉及到的知识点或者题目是算法专栏的补充与应用&#x1f4aa;种一棵树最好是十年前其次是现在1.递归1.1 递归实现…...

多区域的OSPF实战配置

多区域的OSPF实战配置 需求 如图配置设备的接口IP地址如图规划OSPF网络的区域要求每个设备的 router-id 都是 x.x.x.x&#xff08;x是每个路由器的名字&#xff09;确保不同的PC之间可以互通 拓扑图 配置命令 PC1&#xff1a; 192.168.1.1 255.255.255.0 192.168.1.254PC2:…...

Chapter03-Authentication vulnerabilities

文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

select、poll、epoll 与 Reactor 模式

在高并发网络编程领域&#xff0c;高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表&#xff0c;以及基于它们实现的 Reactor 模式&#xff0c;为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。​ 一、I…...

NPOI Excel用OLE对象的形式插入文件附件以及插入图片

static void Main(string[] args) {XlsWithObjData();Console.WriteLine("输出完成"); }static void XlsWithObjData() {// 创建工作簿和单元格,只有HSSFWorkbook,XSSFWorkbook不可以HSSFWorkbook workbook new HSSFWorkbook();HSSFSheet sheet (HSSFSheet)workboo…...

spring Security对RBAC及其ABAC的支持使用

RBAC (基于角色的访问控制) RBAC (Role-Based Access Control) 是 Spring Security 中最常用的权限模型&#xff0c;它将权限分配给角色&#xff0c;再将角色分配给用户。 RBAC 核心实现 1. 数据库设计 users roles permissions ------- ------…...

【WebSocket】SpringBoot项目中使用WebSocket

1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖&#xff0c;添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...

OCR MLLM Evaluation

为什么需要评测体系&#xff1f;——背景与矛盾 ​​ 能干的事&#xff1a;​​ 看清楚发票、身份证上的字&#xff08;准确率>90%&#xff09;&#xff0c;速度飞快&#xff08;眨眼间完成&#xff09;。​​干不了的事&#xff1a;​​ 碰到复杂表格&#xff08;合并单元…...

Mysql故障排插与环境优化

前置知识点 最上层是一些客户端和连接服务&#xff0c;包含本 sock 通信和大多数jiyukehuduan/服务端工具实现的TCP/IP通信。主要完成一些简介处理、授权认证、及相关的安全方案等。在该层上引入了线程池的概念&#xff0c;为通过安全认证接入的客户端提供线程。同样在该层上可…...

2.2.2 ASPICE的需求分析

ASPICE的需求分析是汽车软件开发过程中至关重要的一环&#xff0c;它涉及到对需求进行详细分析、验证和确认&#xff0c;以确保软件产品能够满足客户和用户的需求。在ASPICE中&#xff0c;需求分析的关键步骤包括&#xff1a; 需求细化&#xff1a;将从需求收集阶段获得的高层需…...