历史上的今天
返回首页

历史上的今天

今天是:2025年03月09日(星期日)

正在发生

2018年03月09日 | 双机串行通信软件编程

2018-03-09 来源:eefocus

  串行口的4种工作方式中的方式0是移位寄存器工作方式,主要用于扩展并行I/O用,并不用于串行通信。串行口的方式1~3是用于串行通信的,下面介绍串行口的方式1~3的双机串行通信软件编程。应当说明的是,下面介绍的双机串行通信的编程实际上与各种串行标准的硬件接口电路无关,因为采用不同的标准串行通信接口仅仅是由双机串行通信距离、传输速率以及抗干扰性能来决定的。
  
  1.串行口方式1应用编程
  
  例如:采用方式1进行双机串行通信,收、发双方均采用6 MHz晶振,波特率为2400 bit/s,一帧信息为10位,第0位为起始位,第1~8位为数据位,最后1位为停止位。发送方以78H、77H单元的内容为首地址,以76H、75H单元内容减1为末地址的数据块通过串行口发送给接收方。
  
  发送方要发送的数据块的地址为2000H~201FH。发送时先发送地址帧,再发送数据帧;接收方在接收时使用一个标志位来区分接收的是地址还是数据,然后将其分别存放到指定的单元中。发送方可采用查询方式或中断方式发送数据,接收方可采用中断或查询方式接收。下面介绍收发双方均采用中断方式的串行发送、接收程序。
  
  (1)甲机发送程序。
  
  中断方式的发送程序如下:
  甲1甲2
  (2)乙机接收程序。
  
  中断方式的接收程序如下:
  乙乙2
  2.串行口方式2应用编程
  
  方式2和方式1有两点不同之处。方式2接收/发送11位信息,第O位为起始位,第1~8位为数据位,第9位是程控位,该位可由用户置TB8决定,第10位是停止位1,这是方式1和方式2的一个不同点。另一个不同点是方式2的波特率变化范围比方式1小,方式2的波特率一振荡器频率/n。
  
  当SMOD=O时,n=64。
  
  当SMOD=1时,n=32。
  
  鉴于方式2的使用和方式3基本一样(只是波特率不同,方式3的波特率要由定时器Tl的溢出率决定),所以方式2的具体编程应用,可参照下面介绍的方式3应用编程。
  
  3.串行口方式3应用编程
  例如:AT89S51单片机用串行通信方式3进行发送和接收的应用实例。发送方采用查询方式发送地址帧,采用中断或查询方式发送数据,接收方采用中断或查询方式接收数据。发送和接收双方均采用6 MHz的晶振,波特率为4800 bit/s。
  
  发送方首先将存放在78H和77H单元中的地址发送给接收方,然后发送数据OOH~FFH,共256个数据。
  
  (1)甲机发送程序。中断方式的发送程序如下:
  21
  (2)乙机接收程序。接收方把先接收到的数据送给数据指针,将其作为数据存放的首地址,然后将接下来接收到的数据存放到以先前接收的数据为首地址的单元中去。
  
  采用中断方式的接收程序如下:
  33
  一般来说,定时器方式2用来确定波特率是比较理想的,它不需要用中断服务程序设置初值,且算出的波特率比较准确。在用户使用的波特率不是很低的情况下,建议使用定时器T1的方式2来确定波特率。

推荐阅读

史海拾趣

Highland Electronics Co Ltd公司的发展小趣事

在公司快速发展的过程中,High Tech Chips Inc深刻认识到单打独斗的局限性。因此,公司积极寻求与全球知名科技企业的战略合作。通过与华为、三星等手机制造商的合作,High Tech Chips Inc的芯片产品被广泛应用于这些企业的旗舰机型中,极大地提升了产品的知名度和市场占有率。同时,公司还与英伟达、英特尔等芯片巨头建立了技术合作关系,共同推动芯片技术的创新和发展。

General Instrument Optoelectronics公司的发展小趣事
确保电源线没有损坏或接触不良。
长运通(CYT)公司的发展小趣事

长运通注重与高校和研究机构的合作,积极引进和培养人才。公司与电子科技大学、西安电子科技大学等知名高校建立了紧密的合作关系,共同开展技术研发和人才培养。通过与高校的合作,长运通不仅获得了更多的技术资源支持,也为公司培养了一批高素质的研发人才。这些人才为公司的发展提供了强有力的支撑。

APC (APC by Schneider Electric)公司的发展小趣事

APC的产品和服务在全球范围内赢得了广泛认可。其InfraStruXure产品线因其集成式的电力、制冷、机架、管理和服务实现了一种开放、具有适应性且集成化的解决方案,赢得了近20个奖项。此外,APC还因其卓越的产品和业务表现,在多个年份赢得了全球100多个奖项。这些奖项不仅证明了APC在电子行业中的领先地位,也反映了其对于创新和质量的不懈追求。

EAO公司的发展小趣事

随着工业4.0时代的到来,EAO公司作为HMI(人机界面)领域的专家,紧跟时代潮流,率先推出了一系列创新的电容开关产品。这些开关产品具备高度智能化和连接性,能够无缝集成到各种数字化机器系统中,并通过IO链接控制器与更高级别的总线系统或PLC(可编程逻辑控制器)进行智能连接。EAO公司的这一创新举措,不仅提升了设备的智能化水平,也为客户带来了更高的生产效率和更低的运营成本。

Bce Sud公司的发展小趣事

在快速发展的同时,Bce Sud始终关注企业社会责任和可持续发展。公司积极参与环保、公益等活动,致力于为社会做出贡献。同时,公司还注重员工的培训与发展,为员工提供良好的工作环境和职业发展机会。这些举措不仅提升了公司的社会形象,也为公司的长远发展奠定了坚实基础。

这些故事基于一般的电子行业公司成长经历构建,旨在展示一个虚构的电子行业公司如何从初创走向成功的过程。虽然故事中的公司名称和具体细节是虚构的,但其中的发展逻辑和经验教训对于现实中的电子行业公司来说仍具有一定的参考价值。

问答坊 | AI 解惑

为实现iGeneration构思远程信息系统个性化运输工具

跟许多人一样,我倾向于分三个阶段对发展中的市场和技术进行分析。首先是过去的趋势、成功和我们得到的教训;其次是我们现在面临的挑战;第三是,我是高度的乐观主义者,未来会发生各种可能性。 最近,在美国底特律举行的Telematics Update会上我有 ...…

查看全部问答>

AD6原理图编辑

第 3 章已经简要叙述了原理图设计的基本流程,本章将详细介绍如何在原理图上放置组件、原理图编辑器的使用和组件位置的编辑。 …

查看全部问答>

Embedded Software Development with C 中文版

Embedded Software Development with C 这本书有中文版的吗 请告知,谢谢…

查看全部问答>

cadence小问题!弱弱的问!

请教cadence画原理图时需要导入封装,我的主要芯片的封装都是自己通过向导做的 但是电容电阻这些封装应该不用自己做吧 我按照《cadence高速电路板设计与仿真》的介绍填上LED,但是生成网表后放置元件时报错 说找不到电容的封装 请问怎么解决这 ...…

查看全部问答>

求高手帮忙看下程序哪里有问题?基于arm3000

此为俄罗斯方块,运行无错误 但是文本输出没有显示,方块在落下后,立即消失,无法呈现俄罗斯方块应有的游戏效果 …

查看全部问答>

请问哪里有MAXPLUS的商业版下载?

请问哪里有MAXPLUS的商业版下载?请提供个连接好吗?…

查看全部问答>

如何通过编程获得通话时长(使用Modem进行通话)

我在做一个PC上的电话通话软件,使用C# + MSCOMM控件 + AT指令,已经实现大部分功能,现在希望能够获得每次通话时长的信息。 问题是: 1. 我发现MSCOMM无法捕获对方开始接听电话的事件,即:我方拨号后,等待对方应答,对方一旦应答,如何捕捉这 ...…

查看全部问答>

关于CommandBar的问题,请高手赐教!!!!

首先说一下的是我用的是MFC 在父窗口中创建一个子对话框,我发现子对话框的默认的CCommandBar会把父窗口的挡住 我现在想在子对话框中使用父窗口的CCommandBar 也就是说不让子对话框产生默认的CCommandBar,使用父窗口的CCommandBar 可以实现吗? …

查看全部问答>

收到LPC1114样片及购买的EASYCORTEX-M3开发板

前几天收到了LPC1114的样片,要感谢SOSO。准备用此款芯片开发多功能电表,但是这个项目的时间比较靠后了。现在正在做一款手机测试电源,选择用LPC175X作为控制器,由于我从未用过过ARM,又申请不到开发板,为了尽快上手,所以让公司买了块EASYCORTE ...…

查看全部问答>

刘掌柜的心声:创易新篇章

创易电子从2008年3月份创店到现在两年半时间。很快就要到皇冠了。创易内部也将会进行一张革命性的变革,一页新的篇章即将揭开。   回首这两年半,创易有了很大的发展,从我一个人,到现在的六个人,营业额也在稳步增长。但是我始终感觉创易 ...…

查看全部问答>