久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5351|回復: 0
打印 上一主題 下一主題
收起左側

[原創][求助]串口RS232發送的問題?

[復制鏈接]
跳轉到指定樓層
樓主
ID:6799 發表于 2009-11-8 00:22 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

小弟最近學到了串口通信,于是自己動手寫了個發送程序:

 

鍵盤是3*3的矩陣鍵盤,K1到K9以此對應要發送的A到I字符

 

#include"reg51.h"
#define uint unsigned int
#define uchar unsigned char;
kbscan();鍵盤
rs232_into();
send(unsigned char sdata);
delay(uint t);
unsigned char key,dat;
main()
{
 rs232_into();
 while(1)
 {
  key=kbscan();鍵盤掃描帶回的返回值
  dat=key&0x3f;屏蔽高兩位,保留六位
  switch(dat)
  {
   case(0x1e): //k1
   {
    send('A');
    break;
   }
   case(0x2e):   //k2
   {
    send('B');
    break;
   }
   case(0x36):    //k3
   {
    send('C');
    break;
   }
      case(0x1d):    //k4
   {
    send('D');
    break;
   }
   case(0x2d):    //k5
   {
    send('E');
    break;
   }
   case(0x35):   //k6
   {
    send('F');
    break;
   }
   case(0x1b):  //k7
   {
    send('G');
    break;
   }
   case(0x2b):    //k8
   {
    send('H');
    break;
   }
   case(0x33):  //k9
   {
    send('I');
    break;
   }
   default:
   break;
  }
 }
}

rs232_into() //初始化232
{
 SCON=0x50;//串口方式1,允許接收
 TMOD=0x20;//啟用定時器1
 PCON=0x80;//SMOD=0不加倍
 TH1=0XFD;
 TL1=0XFD;
 TR1=1;
}

kbscan()//鍵盤掃描
{
unsigned char sccode,recode;
 P1=0XF0;
 if((P1&0xf0)!=0xf0)
 {
  delay(10000);
  if((P1&0XF0)!=0XF0)
  {
   sccode=0xfe;
   while((sccode&0x10)!=0)
   {
    P1=sccode;
    if((P1&0xf0)!=0xf0)
    {
     recode=P1&0XF0;
     sccode=sccode&0x0f;
     return(recode+sccode);
    }
   else
   sccode=sccode<<1|0x01;
   }
  }
 }
 return(0);
}
delay(uint t)
{
for(;t>0;t--);
}

send(unsigned char sdata)
{
 SBUF=sdata;
 while(!TI);
 TI=0;
}
 程序有些臃腫,

問題是下載到實驗板上K3,K6,K9始終沒有任何反應,更搞不懂的是在超級終端里顯示接收到得都是亂碼或者空格,用串口調試除了K1,K2,K5三個按鍵有反應外其他都沒反應像沒用一樣,可以確定的是鍵盤的硬件上沒有問題,程序部分的鍵盤掃描是調用以前做數字鐘的部分程序返回值也是正確的,可是為什么會這樣呢?百思不得其解??

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产一区二区在线播放 | 一区二区三区免费 | 亚洲精品电影在线观看 | 99精品欧美一区二区三区综合在线 | 超碰97人人人人人蜜桃 | 色综合久| 成人欧美一区二区 | 国产三级国产精品 | av资源中文在线天堂 | 久久1区 | 黄色国产视频 | 国产精品美女一区二区三区 | 久久69精品久久久久久久电影好 | 91亚洲一区 | 九九久久精品 | www九色| 国产在线视频一区 | 免费观看色 | 91麻豆产精品久久久久久 | 日韩在线观看中文字幕 | 欧美一区二区三区在线看 | 国产精品日韩欧美一区二区三区 | 成人久久久久 | 在线视频 亚洲 | 欧美一区在线视频 | 国产精品第2页 | 欧美久久久久久久 | 91影视 | 天天躁日日躁狠狠躁白人 | 欧洲亚洲一区 | 亚洲午夜精品一区二区三区 | 亚洲欧美日韩中文字幕一区二区三区 | 黄视频在线网站 | 9999精品视频 | 射久久 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 午夜免费网站 | 999热精品视频 | a亚洲精品 | 国产欧美日韩精品一区 | 91在线视频精品 |