单片机串口通信和矩阵键盘的程序怎么写,请教高手!

按下矩阵键盘第一行时以1200bps发送,1,2,3,4,第二行时以2400bps发送5,6,7,8,第三行以4800bps发送,9,10,11,12,第四行以9600p... 按下矩阵键盘第一行时以1200bps发送,1,2,3,4,第二行时以2400bps发送5,6,7,8,第三行以4800bps发送,9,10,11,12,第四行以9600pbs 发送,13,14,15,16.
就是这道题,问题就在于这个板子的矩阵键盘用的是P3口,可串口通讯也在P3口,我写完程序就发现单片机不停的发送数据,不知道怎么回事,请教高手!单片机用的是STC89C52。
C语言编程。最好有具体程序说明这个问题怎么解决?
我是个初学者,这个实验板是买的,没法换口。在键盘扫描程序中我把串口SCON全置0,定时器关了都不行!
芯片STC89C52RC,编译软件keil。
程序能有说明吗,我怎么看都像是错的。
串行发送,根据键盘发送,用不到串行中断的。
展开
 我来答
yyq99886211
2010-05-11
知道答主
回答量:10
采纳率:0%
帮助的人:0
展开全部
串行通信是有中断的,按道理不会与键盘口冲突,那就是程序的问题了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
360939941
2010-05-15
知道答主
回答量:23
采纳率:0%
帮助的人:20.8万
展开全部
一个IO口不能同时有两个功能既然把P3口作为通用IO就不能用做特苏功能的IO这款单片机开发板我也用过,这款板子不好用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
逮猪七段
2010-05-11 · TA获得超过405个赞
知道小有建树答主
回答量:493
采纳率:0%
帮助的人:333万
展开全部
给下编译环境和芯片型号
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sd5273202
2010-05-12 · TA获得超过202个赞
知道答主
回答量:84
采纳率:0%
帮助的人:59.7万
展开全部
#include<reg52.h>
#define uchar unsigned char
uchar a,flag;
void main()
{
TMOD=0x20;
TH1=0xfd;
TL1=0xfd;
TR1=1;
SM0=0;
SM1=1;
REN=1;
EA=1;
ES=1;
PCON=0x80;
while(1)
{
if(flag==1)
{
ES=0;
flag=0;
SBUF=a;
while(!TI);
TI=0;
ES=1;
}
}
}

void serial() interrupt 4
{
P1=SBUF;
a=SBUF;
flag=1;
RI=0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pzowen
2010-05-11 · TA获得超过206个赞
知道小有建树答主
回答量:177
采纳率:0%
帮助的人:125万
展开全部
那你换个口呗,没脚了吗?发送的时候不要扫描那个端口
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式