张飞软硬开源基于STM32 BLDC直流无刷电机驱动器开发视频套件,👉戳此立抢👈

单片机C语言双向通信程序设计

玩转单片机 2018-11-21 16:33 次阅读

/* 名称:甲机串口程序

说明:甲机向乙机发送控制命令字符

甲机同时接收乙机发送的数字,并显示在

数码管上。

*/

#include

#define uchar unsigned char

#define uint unsigned int

sbit LED1=P1^0;   

sbit LED2=P1^3;

sbit K1=P1^7; 

uchar Operation_No=0; //操作代码

//数码管代码

uchar code DSY_CODE[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//延时

void DelayMS(uint ms)

{

uchar i;

while(ms--) for(i=0;i<120;i++);

}

//向串口发送字符

void Putc_to_SerialPort(uchar c)

{

SBUF=c;

while(TI==0);

TI=0;

}

//主程序

void main()

{

LED1=LED2=1;

P0=0x00;

SCON=0x50;串口模式 1,允许接收

TMOD=0x20; //T1 工作模式 2

PCON=0x00;波特率不倍增

TH1=0xfd;

TL1=0xfd;

TI=RI=0;

TR1=1;

IE=0x90;  //允许串口中断

while(1)

{

DelayMS(100);

if(K1==0) //按下 K1 时选择操作代码 0,1,2,3

while(K1==0); 

Operation_No=(Operation_No+1)%4;

switch(Operation_No)根据操作代码发送 A/B/C 或停止发送

case 0:Putc_to_SerialPort('X');

LED1=LED2=1; 

break; 

case 1:Putc_to_SerialPort('A');

LED1=~LED1;LED2=1;

break; 

case 2:Putc_to_SerialPort('B');

LED2=~LED2;LED1=1;

break; 

case 3:Putc_to_SerialPort('C');

LED1=~LED1;LED2=LED1;

break;      }       

}

}

}

//甲机串口接收中断函数

void Serial_INT() interrupt  4

{

if(RI)

{

RI=0; 

if(SBUF>=0&&SBUF<=9) P0=DSY_CODE[SBUF];

else P0=0x00;

}

}

/* 名称:乙机程序接收甲机发送字符并完成相应动作

说明:乙机接收到甲机发送的信号后,根据相应信号控制 LED 完成不同闪烁动作。

*/

#include

#define uchar unsigned char

#define uint unsigned int

sbit LED1=P1^0;   

sbit LED2=P1^3;

sbit K2=P1^7; 

uchar NumX=-1;

//延时

void DelayMS(uint ms)

{

uchar i;

while(ms--) for(i=0;i<120;i++);

}

//主程序

void main()

{

LED1=LED2=1;

SCON=0x50;串口模式 1,允许接收

TMOD=0x20; //T1 工作模式 2

TH1=0xfd;

TL1=0xfd;    //波特率 9600 

PCON=0x00;波特率不倍增

RI=TI=0;

TR1=1;

IE=0x90;

while(1)

{

DelayMS(100);

if(K2==0)

while(K2==0); 

NumX=++NumX%11; //产生 0~10 范围内的数字,其中 10 表示关闭

SBUF=NumX; 

while(TI==0);

TI=0; 

}

}

void Serial_INT() interrupt 4

{

if(RI)//如收到则 LED 则动作

{

RI=0; 

switch(SBUF) //根据所收到的不同命令字符完成不同动作

case 'X':LED1=LED2=1;break; //全灭

case 'A':LED1=0;LED2=1;break;//LED1 亮

case 'B':LED2=0;LED1=1;break;//LED2 亮

case 'C':LED1=LED2=0;//全亮

}

}

原文标题:单片机C语言程序设计:单片机之间双向通信

文章出处:【微信号:mcu168,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
分享:

评论

相关推荐

玩单片机到千万身家,“技术型老总”需要哪些神技能?

中国硬件创新大赛网络培训会—技术培训篇如果你就干这行,毫无疑问你不能错过这次直播;如果不是,可能你不一定喜欢单片机,也不
发表于 05-16 00:00 585次 阅读
玩单片机到千万身家,“技术型老总”需要哪些神技能?

基于STM32的半导体制冷片(TEC)温度控制系统设计

一些医疗检测仪器在检测时需要模拟人体温度环境以确保检测的精确性,本文以STM32为主控制器,电机驱动芯片DRV8834 为驱...
发表于 06-24 10:31 165次 阅读
基于STM32的半导体制冷片(TEC)温度控制系统设计

详解ARM单片机的双相步进电机细分驱动器设计

         步进电机是一种运用广泛的控制电机,其特征是不使用位置反馈回路就能进行速度控制及定位...
发表于 06-24 08:00 109次 阅读
详解ARM单片机的双相步进电机细分驱动器设计

单片机实现定时器和计数器的详细资料说明

本文档的主要内容详细介绍的是单片机实现定时器和计数器的详细资料说明包括了:• 定时/计数器的功能 •....
发表于 06-24 08:00 9次 阅读
单片机实现定时器和计数器的详细资料说明

MSP430单片机的C语言例题资料合集免费下载

本文档的主要内容详细介绍的是MSP430单片机的C语言例题资料合集免费下载。
发表于 06-24 08:00 13次 阅读
MSP430单片机的C语言例题资料合集免费下载

使用AVR单片机的电子琴仿真带protues资料免费下载

本文档的主要内容详细介绍的是使用AVR单片机的电子琴仿真带protues资料免费下载。
发表于 06-24 08:00 12次 阅读
使用AVR单片机的电子琴仿真带protues资料免费下载

使用单片机设计交通灯的实验报告包括了原理图和仿真截图

本文档的主要内容详细介绍的是使用单片机设计交通灯的实验报告包括了原理图和仿真截图。
发表于 06-24 08:00 13次 阅读
使用单片机设计交通灯的实验报告包括了原理图和仿真截图

STM32F4xx系列单片机的中文参考手册免费下载

本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/....
发表于 06-24 08:00 16次 阅读
STM32F4xx系列单片机的中文参考手册免费下载

使用51单片机设计的电子琴C语言程序和工程文件免费下载

通过按钮产生不同的音调,包括低,中,高三个音阶,21种音调;
发表于 06-24 08:00 16次 阅读
使用51单片机设计的电子琴C语言程序和工程文件免费下载

基于STC单片机的21C02模拟

浙江  黄松正 本文介绍一种用STC12C2052单片机的I/O口模拟I2C总线的从模式,进而模拟和替代E2PROM(2...
发表于 06-24 06:18 104次 阅读
基于STC单片机的21C02模拟

单片机容量不足

STC15W4K48S4  48K flash 装不下
发表于 06-24 04:36 215次 阅读
单片机容量不足

请问单片机串口发数的时候能同时接收到数据吗?

我用下位机 首先是等待上位机的命令, 能接收到串口的开启设备指令, 然后下位机采集传感器数据,不断的向上位机发送数据。 但...
发表于 06-24 03:44 64次 阅读
请问单片机串口发数的时候能同时接收到数据吗?

【uFun试用体验】迟来的第二帖——简单的LIS3DH陀螺仪上位机

因为最近忙于别的事情如面试等,已经足足两个月没有更新ufun的帖子了,现在补上。         uFu...
发表于 06-23 16:38 351次 阅读
【uFun试用体验】迟来的第二帖——简单的LIS3DH陀螺仪上位机

单片机C语言编程实例

本书结合目前应用非常广泛的C语言以及Keil C51编译器,详细介绍单片机C语言编程的方法。本书通过大量应用实例对单片机资源及...
发表于 06-22 10:29 102次 阅读
单片机C语言编程实例

单片机C语言编程实例

本书结合目前应用非常广泛的C语言以及Keil C51编译器,详细介绍单片机C语言编程的方法。本书通过大量应用实例对单片机资源及...
发表于 06-22 10:29 102次 阅读
单片机C语言编程实例

一种机器人的寻迹算法的详细资料说明

针对基于光电传感器组寻迹的自动导引机器人, 设计了传感器阵列的布置方式。根据此布置方式, 提出了三个....
发表于 06-21 17:14 126次 阅读
一种机器人的寻迹算法的详细资料说明

使用单片机设计智能赛车的论文技术报告免费下载

智能汽车系统是一个集环境感知、规划决策、多等级辅助驾驶等功能于一体的综合系统,涉及传感器技术、信息融....
发表于 06-21 17:14 57次 阅读
使用单片机设计智能赛车的论文技术报告免费下载

Flash动画和单片机结合的详细资料说明

冰冷的单片机加上Flash逼真、形象的动态艺术效果,能帮助提高学生学习的兴趣。将过去面向过程的微观学....
发表于 06-21 16:52 54次 阅读
Flash动画和单片机结合的详细资料说明

单片机内嵌外设应用串行通信的详细资料说明

本文档的主要内容详细介绍的是单片机内嵌外设应用串行通信的详细资料说明包括了:1、介绍单片机串行口的基....
发表于 06-21 16:52 54次 阅读
单片机内嵌外设应用串行通信的详细资料说明

MK12DX128VLH5芯线在线烧录接口定义

大神们:请问飞思卡尔 MK12DX128VLH5芯线在线烧录接口定义?...
发表于 06-21 15:45 366次 阅读
MK12DX128VLH5芯线在线烧录接口定义

如何优化单片机系统使其运行拥有更好的可靠性

看门狗电路的定时时间长短可由具体应用程序的循环周期决定,通常比系统正常工作时最大循环周期的时间略长即....
发表于 06-21 15:34 98次 阅读
如何优化单片机系统使其运行拥有更好的可靠性

7人多数表决器

仅供参考,有哪里不对的话还望各位网友多多指教,大家共同探讨。...
发表于 06-21 15:24 85次 阅读
7人多数表决器

单片机串行通信的结构组成及工作原理解析

目前多数单片机都配有串行接口,如51单片机和MCS - 96等系列单片机都配有一个全双工的串行接口,....
发表于 06-21 15:22 191次 阅读
单片机串行通信的结构组成及工作原理解析

干货 | 基于单片机的16×64 LED 点阵显示屏的设计

本文详细介绍了一种低廉的16x64点阵LED显示屏的设计过程。
的头像 畅学单片机 发表于 06-20 17:08 318次 阅读
干货 | 基于单片机的16×64 LED 点阵显示屏的设计

对于物联网开发商来说什么是关键

在主要为工业市场开发系统的增长推动下,物联网(IOT)是嵌入式系统和设备开发的主要焦点。
发表于 06-20 16:50 138次 阅读
对于物联网开发商来说什么是关键

干货 | 单片机、ARM、FPGA、嵌入式的区别和特点有哪些呢?

学习嵌入式需要了解硬件知识,其中包括单片机、ARM、FPGA等,不同的硬件有不同的特点,需要了解他们....
的头像 单片机 发表于 06-20 10:50 557次 阅读
干货 | 单片机、ARM、FPGA、嵌入式的区别和特点有哪些呢?

干货 | 关于单片机上for循环中运用ACC的隐蔽错误

想到了这个方法后,觉得自己好白痴,以后都不用ACC了。
的头像 畅学单片机 发表于 06-20 10:47 231次 阅读
干货 | 关于单片机上for循环中运用ACC的隐蔽错误

如何使用STM32单片机进行三相逆变器的设计

针对当前电网需要能输出高质量的交流电,且需具备较好的负载适应性及调压、调频等问题。设计了基于 STM....
发表于 06-20 08:00 52次 阅读
如何使用STM32单片机进行三相逆变器的设计

如何使用STM32F103单片机进行三相SPWM软件的设计

基于对三相 鼠笼式异步 电动 机变频转速控制 的 目的,在阐述 SPWM输 出原 理基础上 进行软件....
发表于 06-20 08:00 44次 阅读
如何使用STM32F103单片机进行三相SPWM软件的设计

STM32单片机常用元件的元件库文件资料免费下载

本文档的主要内容详细介绍的是STM32单片机常用元件的元件库文件资料免费下载。
发表于 06-20 08:00 56次 阅读
STM32单片机常用元件的元件库文件资料免费下载

粤芯半导体本月将试产

近日,智光电气在投资者互动平台上透露,其参与投资的广州粤芯半导体技术有限公司在生产线在做试产前的测试....
的头像 芯智讯 发表于 06-19 17:56 1006次 阅读
粤芯半导体本月将试产

如何进行简易避障机器人的设计

针对矿井中的各种灾害,设计了一种适合矿井救援的简易避障机器人。该设计以A1’89c51单片机作为智能....
发表于 06-19 17:37 63次 阅读
如何进行简易避障机器人的设计

智能循迹小车的C语言程序免费下载

本文的的主要内容详细介绍的是智能循迹小车的C语言程序免费下载。
发表于 06-19 17:37 50次 阅读
智能循迹小车的C语言程序免费下载

使用C8051F005单片机设计智能小车的自动控制系统

本系统采用单片机C8051F005作为核心器件对小汽车行驶的自动控制。控制过程是利用反射型光电传感器....
发表于 06-19 17:37 51次 阅读
使用C8051F005单片机设计智能小车的自动控制系统

MSP430单片机库中部分函数的资料总结免费下载

本文档的主要内容详细介绍的是MSP430库中部分函数的资料总结免费下载
发表于 06-19 17:16 43次 阅读
MSP430单片机库中部分函数的资料总结免费下载

工程师经验手记:深入浅出玩转51单片机PDF电子书免费下载

本书包含4部分,共计27章 。首先从最基本的概念、开发软件的操作入手,教读者如何搭建一个工程; 之后....
发表于 06-19 16:29 83次 阅读
工程师经验手记:深入浅出玩转51单片机PDF电子书免费下载

如何采用单片机实现VD5026编码器的工作过程

由专用编/解码器组成的报警系统,通常需要用单片机的10~14位输入/输出口,对编码器进行编码和控制,....
发表于 06-19 15:23 58次 阅读
如何采用单片机实现VD5026编码器的工作过程

CA51F551系列单片机的中文用户手册免费下载

CA51F551 系列芯片是基于 1T 8051 内核的 8 位微控制器,通常情况下,运行速度比传统....
发表于 06-19 08:00 35次 阅读
CA51F551系列单片机的中文用户手册免费下载

单片机原理及应用的21个课程设计题目资料免费下载

本文档的主要内容详细介绍的是单片机原理及应用的21个课程设计题目资料免费下载包括了:题目1 智能电....
发表于 06-19 08:00 73次 阅读
单片机原理及应用的21个课程设计题目资料免费下载

太阳能充电控制器的电源电路部分

太阳能充电控制器以太阳能极板为供电电源,以MSP430GR553单片机为控制和数据处理核心,负责完成....
发表于 06-19 08:00 69次 阅读
太阳能充电控制器的电源电路部分

单片机应该如何学习详细的学习步骤说明

不知不觉自己接触单片机已经有两年多了,从最初的MCS-51,到后来的AVR、MSP430,对于单片机....
发表于 06-18 17:50 80次 阅读
单片机应该如何学习详细的学习步骤说明

使用MSP430单片机设计的高级流水灯程序免费下载

本文档的主要内容详细介绍的是使用MSP430单片机设计的高级流水灯程序免费下载。
发表于 06-18 17:49 49次 阅读
使用MSP430单片机设计的高级流水灯程序免费下载

数码管显示电子钟的C语言程序免费下载

本文档的主要内容详细介绍的是数码管显示电子钟的C语言程序免费下载。
发表于 06-18 17:20 45次 阅读
数码管显示电子钟的C语言程序免费下载

EM3-V22单片机开发板电路原理图免费下载

本文档的主要内容详细介绍的是EM3-V22单片机开发板电路原理图免费下载。
发表于 06-18 17:20 36次 阅读
EM3-V22单片机开发板电路原理图免费下载

使用51单片机进行家用智能电热水器的毕业设计免费下载

本设计采用ATEML公司生产的AT89C51单片机为核心来设计智能电热水器。本设计也对单片机控制电热....
发表于 06-18 17:20 71次 阅读
使用51单片机进行家用智能电热水器的毕业设计免费下载

嵌入式开发通常采用哪种编程语言

目前在嵌入式开发领域比较常见的编程语言是C,另外C++、Python、JavaScript等语言也可....
发表于 06-18 16:59 127次 阅读
嵌入式开发通常采用哪种编程语言

STM32嵌入式入门必看之文章给你详细的讲解

STM32嵌入式入门必看之文章-----介绍非常详细!(学习STM32的理由!!!!)为什么要写这篇....
发表于 06-18 16:52 78次 阅读
STM32嵌入式入门必看之文章给你详细的讲解

如何使用16位单片机进行智能循线和避障机器人设计资料说明

本文介绍了一种具有智能循线和避障功能的机器人设计方案,机器人系统包括控制系统的硬件和软件设计。硬件部....
发表于 06-18 15:49 42次 阅读
如何使用16位单片机进行智能循线和避障机器人设计资料说明

实例解读51单片机完全学习与应用的PPT课件教程免费下载

本文档的主要内容详细介绍的是实例解读51单片机完全学习与应用的PPT课件教程免费下载包括了:第1章 ....
发表于 06-18 15:49 43次 阅读
实例解读51单片机完全学习与应用的PPT课件教程免费下载

关于嵌入式C开发必须掌握的一些专业技能

华为的嵌入式系统做得非常棒,这个是毋庸置疑。做嵌入式的C开发人员一般都会想进华为,看看华为的嵌入式系....
发表于 06-18 11:37 129次 阅读
关于嵌入式C开发必须掌握的一些专业技能

STC8系列单片机技术参考手册的详细资料免费下载

STC8系列单片机是不需要外部晶振和外部复位的单片机,是以超强抗干扰/超低价/高速/低功耗为目标的8....
发表于 06-18 08:00 32次 阅读
STC8系列单片机技术参考手册的详细资料免费下载

一些相关示例程序资料合集免费下载

本文档的主要内容详细介绍的是一些相关示例程序资料合集免费下载包括了:1.BST-V51学习板常用函数....
发表于 06-18 08:00 32次 阅读
一些相关示例程序资料合集免费下载

LabVIEW教程之选择结构的详细资料说明

选择结构相当于文本语言中的条件语句。LabVIEW 8 中新增加的 Diagram Disable ....
发表于 06-17 16:42 37次 阅读
LabVIEW教程之选择结构的详细资料说明

LabVIEW教程之循环结构的详细资料说明

LabVIEW中的循环结构有 for 循环和 while 循环。其功能与文本语言的循环结构的功能类似....
发表于 06-17 16:42 24次 阅读
LabVIEW教程之循环结构的详细资料说明

单片机定时器中断原理及s3c2440的定时器使用方法

使CPU中断的事件称中断源。中断源向CPU发出中断请求,CPU暂时中断原来执行的事件A转去做事件B。....
发表于 06-17 16:06 95次 阅读
单片机定时器中断原理及s3c2440的定时器使用方法

51单片机的定时器

从上面定时器/计数器的结构图中我们可以看出,16位的定时/计数器分别由两个8位专用寄存器组成,即:T....
发表于 06-17 15:02 137次 阅读
51单片机的定时器

单片机定时器/计数器的结构

 每来一个脉冲计数器加1,当加到计数器为全1(即FFFFH)时,再输入一个脉冲就使计数器回零,且计数....
发表于 06-17 09:57 109次 阅读
单片机定时器/计数器的结构

单片机定时器/计数器基本原理

AT89S52单片机内部的定时/计数器的结构如图2所示。定时器T0由特殊功能寄存器TL0(低8位)和....
发表于 06-17 09:19 58次 阅读
单片机定时器/计数器基本原理

C8051F系列单片机板子的原理图和PCB资料免费下载

本文档的C8051F系列单片机板子的原理图和PCB资料免费下载。
发表于 06-17 08:00 25次 阅读
C8051F系列单片机板子的原理图和PCB资料免费下载

你有这些嵌入式硬件电路设计的基本功吗?

我走的电子开发道路其实和大多数人说的一样,基本的路线为模拟电子(熟练)→数字电路设计(掌握)→单片机....
的头像 玩转单片机 发表于 06-16 11:52 600次 阅读
你有这些嵌入式硬件电路设计的基本功吗?