proteus仿真c51单片机(四)双机串口通信(电路设计及代码)

news2024/11/13 15:05:00

实验要求

1.通过甲机的按键给乙机发送控制字符,同时也可以实现乙机给甲机发送控制字符

2.用PROTEUS软件根据所给电路画出电路图,用KEIL软件调试程序和编译,最后在PROTEUS软件中实现仿真。

3.甲乙两个单片机通过串口进行通信,甲机用一按键向乙机发送控制命令,乙机根据收到的控制命令字符完成各种功能。

实验步骤

1、打开PROTEUS软件选取元件,连线绘制电路图。  

2、打开KEIL软件编制程序进行调试、编译。

3、将编译的HEX代码装入PROTEUS软件绘制的电路图的单片机中。

4、仿真运行观察实验现象,若与要求的实验现象不同,检查程序和电路图找出错误。

5、将编译好的HEX文件用单片机编程器下载进单片机,并在实验板电路上运行观察实验现象。

连接电路 

连接电路时注意甲机与乙机的RXD(数据接收引脚),TXD(数据发送引脚)相连 

主要程序演示(以甲机发送,乙机接收程序为例) 

 

约定通信双方的波特率为9600b/s,按键通过外部中断0实现,在外部中断0服务程序中编写串口发送数据程序。

向串口发送字符子程序 

 

发送不同的控制字符,编制一串口发送字符子程序,在发送控制字符时候调用。

乙机程序(接收端)

乙机需要设置串口方式寄存器,需要允许接收,设置定时器方式和约定波特率的定时器初值,接收放到串口中断进行,需要开相应的中断允许位,在中断服务程序中用switch case语句,按照SBUF接收到的控制字符执行相应的控制led的操作。

实验结果演示

发送A

 

 收到A仅LED1亮

发送B

收到B仅LED2亮

发送C

收到C两个都亮

发送D

收到D都灭 

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

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

相关文章

Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N]……解决

一、问题 Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.二、解决方案 1、当打包构建的时候出现这个问题,如果你只是打包部署,那么就是将maven的test禁止可以成功打包 2、当你是本地服务器启动…

前端模块化-理解Tapable与Webpack中的Hooks

前言 Webpack 中的核心架构是基于 Tapable 实现的,Tapable 是一个类似于 Node.js 的 EventEmitter 的库,专门用于实现发布-订阅模式。Webpack 中的核心组件 Compiler、Compilation、Module、Chunk、ChunkGroup、Dependency、Template 都是通过 Tapable …

Fiddler安装与使用

下载Fiddler 访问Fiddler官方网站,下载适用于您操作系统的最新版本Fiddler。目前,Fiddler支持Windows、macOS和Linux平台。 Web Debugging Proxy and Troubleshooting Tools|Fiddler (telerik.com) 安装Fiddler,以Windows为例 Windows用户…

gitlab给用户添加项目权限

1.进入管理员界面 2.进入群组 3.添加用户

【RISC-V设计-04】- RISC-V处理器设计K0A之架构

【RISC-V设计-04】- RISC-V处理器设计K0A之架构 文章目录 【RISC-V设计-04】- RISC-V处理器设计K0A之架构1. 简介2. 主要特点3. 结构框图4. 指令列表5. CSR指令集6. 中断返回指令7. 总结 1. 简介 在前几篇文章中,介绍了RISC-V处理器的结构和指令集,从本…

Animate软件基本概念:视频及音频

视频和音频是ANimate软件中比较重要的素材类型。 FlashASer:AdobeAnimate2021软件零基础入门教程https://zhuanlan.zhihu.com/p/633230084 FlashASer:实用的各种Adobe Animate软件教程https://zhuanlan.zhihu.com/p/675680471 FlashASer:A…

DSP如何进行竞价

下面根据DSP的系统构成还拆解讲解里面的各个模块,这一节将竞价系统,也就是竞价流程 0、负载均衡 增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。 1、ADX发起竞价请求 上面会携带User ID等用户信息和广告信息一大堆信息。 2、解析竞价…

fastadmin 表单添加默认搜索条件

项目场景:员工列表,查看员工邀约客户明细,在 dialog 窗口中的 table怎么获取当前员工的数据呢?看似简单的需求,实际操作起来还是有点考究的,记录一下实现步骤。 页面1:员工列表 页面2&#xff…

sql_day14(获取各门店的面积)

描述:获取各门店的面积 获取各门店的面积 门店面积信息可以从分店面积明细表中获取。 先取实际经营面积(8), 如果取不到(实际经营面积为空)再取经营面积(7)。 如果取不到(经营面积为空)再取合同面积(1)。…

AI大模型赋能开发者|海云安创始人谢朝海受邀在ISC.AI 2024大会就“大模型在软件开发安全领域的应用”主题发表演讲

近日,ISC.AI 2024 第十二届互联网安全大会在北京国家会议中心盛大开幕。作为全球规格最高、规模最大、影响力最深远的安全峰会之一,本次大会以“打造安全大模型 引领安全行业革命”为主题,聚焦安全与AI两大领域,吸引了众多行业领袖…

您知道Jmeter中Redirect Automatically 和 Follow Redirects的使用场景吗?

相信很多使用过jmeter的同学都没有关注过请求中的Redirect Automatically 和 Follow Redirects选项,如下图: 在 JMeter 中,Redirect Automatically 和 Follow Redirects 是与 HTTP 请求重定向相关的两个选项,它们之间是有很大区别…

Ubuntu小键盘消失,并且安装好搜狗输入法后无法打出中文的问题

Ubuntu右上角的键盘图标不见了_ubuntu虚拟机键盘选项消失了-CSDN博客解决Ubuntu18.04安装好搜狗输入法后无法打出中文的问题_ubuntu18.04 搜狗输入法无法输入中文-CSDN博客 sudo apt install libqt5qml5 libqt5quick5 libqt5quickwidgets5 qml-module-qtquick2sudo apt instal…

小智常见报表-自由报表

概述 自由报表:具有自由设计、修改、完善的能力的报表。 应用场景 如下图所示,简单展示数据 示例说明 数据准备 在数据面板中添加数据集,可选择Json数据集和API服务数据集。Json数据集输入如下图所示: [{"姓名"…

Keytool:Uniapp 云打包需要生成证书的操作笔记

文章目录 背景操作步骤概述安装 Java 并检测版本生成证书 xxx.keystore问题:报错,没有权限使用证书 背景 我用 uniapp 想要用云打包,但是需要本机生成一个证书 操作步骤概述 安装 Java在终端输入 /usr/libexec/java_home -V 之后&#xff…

2024华为数通HCIP-datacom最新题库(H12-831变题更新⑨)

请注意,华为HCIP-Datacom考试831已变题 请注意,华为HCIP-Datacom考试831已变题 请注意,华为HCIP-Datacom考试831已变题 近期打算考HCIP的朋友注意了,如果你准备去考试,还是用的之前的题库,切记暂缓。 如…

【Python学习笔记】序列化

【Python学习笔记】序列化 文章目录 【Python学习笔记】序列化1.python使用pickle序列化数据1.1. 环境准备1.2. 序列化datetime对象1.3. 序列化DataFrame对象1.3.1 json1.3.2 pickle 1.4 序列化list列表 2. flaskweb接口传输序列化数据2.1. bytes形式传输2.1.1. datetime对象2.…

k8s使用kustomize来部署应用

k8s使用kustomize来部署应用 本文主要是讲述kustomzie的基本用法。首先,我们说一下部署文件的目录结构。 ./ ├── base │ ├── deployment.yaml │ ├── kustomization.yaml │ └── service.yaml └── overlays└── dev├── kustomization.…

SpringBoot 集成 Sharding-JDBC 实现读写分离、分库分表

文章目录 一、Sharding-JDBC的应用场景二、SpringBoot 集成 Sharding-JDBC2.1、前期准备2.2、导入pom.xml依赖包2.3、结构代码实现2.3.1、MybatisPlusConfig(分页插件)2.3.2、TOrder(订单对象)2.3.3、TOrderMapper(订单…

【论文阅读】Fourier Spectrum Discrepancies in Deep Network Generated Images

文章目录 Learning Self-Consistency for Deepfake Detection背景关键方法傅立叶谱分析图像转换分类实验讨论总结Learning Self-Consistency for Deepfake Detection 会议:NeurIPS 2020 作者: 背景 深度生成模型(GAN、VAE等)能生成与真图无法区分的逼真图像 关键 对…

批发行业进销存-库存预警 源码CyberWinApp-SAAS 本地化及未来之窗行业应用跨平台架构

一交互代码 未来之窗_人工智能_VOS通用(数据,库存预警,1080,500);"> 二、通用代码 function 未来之窗_人工智能_VOS通用(网址,标题,宽度,高度){var 机器人默认page网址;var 未来之窗app_通用ID"未来之窗防重复";var title标题;var 机器人宽度宽度;var 机器…