‘壹’ 编程实现51单片机与PC的串口通信,要求波特率设置为9600,循环发送字符串“abc
#include "reg51.h"
void initUart(void)
{
TMOD|=0x20;
SCON=0x50;
TH1=0xfd;
TL1=0xfd;
TR1=1;
}
void main(void)
{
initUart();
EA=1;
while(1)
{
send_byte('abc');
}
}
‘贰’ 单片机如何接收按钮信号,比如我按下开关,线路接通,单片机如何知道...
如图:两种方法,一个地点平触发(开关在下),一个高电平触发(开关在上)。如果连接的是普通的IO口,则采用轮询方式,就是程序要不停地判断端口是否有变化。如果连接的中断脚的话,单片机内部需要对触发类型做设置,开关在下的设置为低电平触发,开关在上的设置为高电平触发,这样不用你在程序里面不停的去轮询端口的电平变化,只需要在中断服务里编写你要执行的功能即可,这样当外界有相应的电平变化的时候,单片机就自动的跳到了你的中断服务程序里执行了,执行完了,就会退出,等待下一个脉冲的到来。这样你的程序就灵活多了。
‘叁’ 单片机串口扩展方法
串口转接模块等。
1、使用串口转接模含哪冲块:可以使用串口转接模块将单片机的串口信号转换为其他通信协议的信号,如RS485、RS232等,从而实现串口扩展的功能。
2、使用串口扩展芯片:可以使用串口扩展芯片,如MAX232、缓老MAX485等,将单片机的串口信号转换为多个串口信号,从而实现串口扩展的功能。
3、使用GPIO口模拟串口:可以使用单片机的GPIO口模拟串口的功能,通过软件实现串口的通信,从而实现串口扩展的功能。这种方法谈歼需要在软件层面实现串口协议的相关功能,相对较为复杂。
‘肆’ 单片机串行通信实验
1、实验:用单片机串行口,实现两个实验台之间的串行通讯。其中一个实验台作为发送方,
另一侧为接收方。发送方读入按键值,并发送给接收方,接收方收到数据后在LED上显示
2、原理:串行通信是指数据按位顺序传送的通信。串行数据传送的特点是:通信线路简单,最多只需一对传输线即可实现通信,成本低但速度慢,其通信线路既能传送数据信息,又能传送控制信息。它对信息的传送格式有固定要求,具体分为异步和同步两种信息格式.与此相应有异步通信和同步通信两种方式;在串行通信中,对信息的逻辑定义与TTL不兼容,需要进行逻辑电平转换:计算机与外界的数据传送大多是串行的,其传送的距离可以从几米到几千公里。单片机中使用的串行通信通常都是异步方式的
3、实验目的:1)掌握单片机串行口工作方式的程序设计,及简易三线式通讯的方法。 2)了解实现串行通讯的硬环境、数据格式的协议、数据交换的协议。 3)学习串口通讯的中断方式的程序编写方法
4、参考实现:
http://wenku..com/link?url=uyYKlkBQqwjGl-akFJ3xWa67R814ShF50uwd3
‘伍’ 单片机串口通讯有哪几种方式
89系列单片机的串行通信有4种工作方式:
1、正旦漏方式0是同步移位寄存器方式,帧格式8位,波特率固定为fosc/12。
2、方式1是8位异步通信方式,帧格式10位,波特率可变:T溢出率/n(n= :32或16)。
3、方式2是9位异步通信方式,帧格式11位,波特率固定: fosc/n(n=32 或16)。
4、方式3是9位异步通信方式,帧格式11位,波特率可变:T溢出率(m=32或16)。
方式1、2、3的区别主要表现在帧格式及波特率两个方面。
单片机应用范围:
单片机渗透到我们生活的各个领域。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,迟蔽广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制等等。
还有自动控制领域的机器人、智能仪表、医疗器械以及各种智能机械。因此,单举烂片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
‘陆’ 单片机与多个从机通信,轮询方式
RS485、I2C和SPI不一样。
RS485、I2C通讯协议中包含从机的地址,从机都不主动发销早送数据,主机发送数据,数据包中包含有从机地址,主机发送的数据,所有从机都接收,主机发送完后,转为接收状态。从机接收到数据包后,检测地址与自己的地址一致,就做应答发送数据。地址腊友不一致,就不处理。所以RS485、I2C总线中的从机地址不能重复。
SPI是通过片选信号实现选择从机,没有被选亏局雀择的从机,是不结收数据的。