关于串口中断的新手问题?

2019-07-15 17:15发布

因我是刚学单片机不多时间,所以对串口中断不是很了解,所以问问各路神明,这个程序里的问题?
这个程序里面的话,由个问题就是必须要讲P3.1口置于低电平才能触发,这是串口中断的要求么?我按下P3.1(发送)引脚可以看到P2.5口已经置于低电平了,是LED灯的显示效果,这样的话,是不是说明:这个程序是把temp变量的值发送给了p2.5呢,还是?


#include <reg52.h>

typedef unsigned char u8;
sbit led=P2^5;

void main(void)
{   
    TMOD = 0x20;   
    SCON = 0x50;
    TH1 = 0xFD;
    TL1 = 0XFD;
    EA = 1;
    ES = 1;   
    TR1 = 1;

}

void UARtinterrupt(void) interrupt 4
{
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
abcd255bnb4
1楼-- · 2019-07-15 18:22
 精彩回答 2  元偷偷看……
修罗君
2楼-- · 2019-07-15 19:13
描述不清楚。。。看不懂。不知道你想要实现什么东西。
人中狼
3楼-- · 2019-07-15 20:38
你似乎并不清楚你的程序在做什么,看你的程序,应该是不会自己发送数据,而是当接收到外部发送过来的数据后,将该数据赋值给led,然后又同时把该数据发送出去,所以在没有接收到数据时,你的程序应该不会有任何改变led的动作。
abcd255bnb4
4楼-- · 2019-07-15 23:21
人中狼 发表于 2017-8-11 10:08
你似乎并不清楚你的程序在做什么,看你的程序,应该是不会自己发送数据,而是当接收到外部发送过来的数据后,将该数据赋值给led,然后又同时把该数据发送出去,所以在没有接收到数据时,你的程序应该不会有任何改变led的动作。 ...

这个程序的功能是实现串口中断啊,然后在中断里面讲temp赋值给led,我只是想知道,为什么在我按下P3.1口以后led就会接受到低电平。而不是自己发送或者接受。其实更简单地说明:我只是想看一下这个程序的具体功能

一周热门 更多>