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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2464|回復: 4
收起左側

單片機與PC機的互相通信

[復制鏈接]
ID:189897 發表于 2017-5-4 13:09 | 顯示全部樓層 |閱讀模式
    目前我正在做有關單片機與PC機相互通信的小項目,我想在一個程序里面同時實現電腦發送數據控制單片機LED燈 ,單片機通過按一個鍵向電腦發送數據并在PC機上顯示。這兩個小程序我都分別實現出來了,可是不知道如何合并來實現這個功能

求大神解答 謝謝

《這是單片機通過按鍵向電腦發送數據》
#include <STC15Fxxxx.h>
unsigned char ad = -1;
bit Flag=1;
unsigned char code key_code[]={0x7e,0x7d,0x7b,0x77,0xbe,0xbd,0xbb,0xb7,0xde,0xdd,0xdb,0xd7,0xee,0xed,0xeb,0xe7};
void delay_ms(unsigned int xms)
{
u8 i,j;
for(i=xms;i>0;i--)
for(j=100;j>0;j++);
}
char keyscan()
{
char scan1,scan2,keycode,j,key;
key=-1;      
P0=0xf0;        
scan1=P0;      
if(scan1!= 0xf0)
{
  delay_ms(1200);
  scan1=P0;     
  if(scan1!=0xf0)
  {
   delay_ms(1200);
   P0=0x0f;      
   scan2=P0;        
   keycode=scan1|scan2;
   for(j=0;j<16;j++)   
   {
    if(keycode ==key_code[j])
    {
     key=j;
         while(P0!=0x0f);
     break;
    }
   }
  }
}
return (key);      
}
void init()
{
  SCON = 0x50;  
AUXR |= 0x40;  
AUXR &= 0xFE;  
TMOD &= 0x0F;  
TL1 = 0xE0;  
TH1 = 0xFE;  
ET1 = 0;  
TR1 = 1;
ES =1;
EA = 1;
REN=1;
}
void main (void)
{

P0M1 = 0; P0M0 = 0;
P1M1 = 0; P1M0 = 0;
P2M1 = 0; P2M0 = 0;
P3M1 = 0; P3M0 = 0;
P4M1 = 0; P4M0 = 0;
P5M1 = 0; P5M0 = 0;
P6M1 = 0; P6M0 = 0;
P7M1 = 0; P7M0 = 0;
init();  
while(1)
  {   
  ad = keyscan();   
    if(ad!=-1)
  {
   SBUF = ad;
  }
  
}
}
void ddd()  interrupt 4
{
    if(RI)
  {
    RI =0;
  }
  if(TI)
   TI =0;
}


《這是電腦控制單片機LED燈》
#include <STC15Fxxxx.h>
unsigned char a = 0x20;
void init()
{
  SCON = 0x50;  
AUXR |= 0x40;  
AUXR &= 0xFE;  
TMOD &= 0x0F;  
TL1 = 0xE0;  
TH1 = 0xFE;  
ET1 = 0;  
TR1 = 1;
ES =1;
EA = 1;
REN=1;
}
void main()
{
init();


    while(1)
  {
      if(a==0x00)
    P6 = 0x00;
    if(a==0x01)
     P6 = 0xff;
  }
}
void te() interrupt 4
{
  if(RI)
{
  a = SBUF;
  RI = 0;
}
if(TI)
{
   TI =0;
}
}

回復

使用道具 舉報

ID:149451 發表于 2017-5-4 20:28 | 顯示全部樓層
我想應該在PC機上寫個管理程序(俗稱上位機程序),通過串口或PCI接口等,連接你的下位機。
回復

使用道具 舉報

ID:196662 發表于 2017-5-4 20:41 | 顯示全部樓層
一個MIAN()函數,然后把兩個功能合并實現就可以
回復

使用道具 舉報

ID:123289 發表于 2017-5-5 11:16 | 顯示全部樓層
主程序:
初始化
START:
檢測是否有功能1的標記,有則調功能1;
檢測是否有功能2的標記,有則調功能2;
……
檢測是否有功能N的標記,有則調功能N;
進行入休眠(可不要此步)
返回到:START

子程序:
功能1;
功能2;
……
功能N;

事件發生(可在中斷發生):
事件1發生,置功能1標記;
事件2發生,置功能2標記;
……
事件N發生,置功能N標記;
回復

使用道具 舉報

ID:189897 發表于 2017-5-7 15:12 | 顯示全部樓層
lidengjing 發表于 2017-5-4 20:41
一個MIAN()函數,然后把兩個功能合并實現就可以

恩對 就是這樣 剛開始試了不行 后來又行了
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人a毛片 | 久久视频这里只有精品 | 日日日干干干 | 欧美日韩中文在线 | 亚洲综合视频在线观看 | 成人aaaa| 成人自拍视频在线观看 | 人人爽人人爽 | 一级免费毛片 | 国产精品麻豆 | 韩日在线视频 | 色多多视频在线观看 | 中文字幕一级片 | 久久久久一| 中文字幕手机在线观看 | 色婷婷国产 | 国产在线不卡 | 2018天天操 | 免费黄色一级 | 成人一级黄色片 | 欧美成人激情视频 | 怡红院av| 国产日本在线 | 高清一区二区三区 | 国产一区高清 | 亚洲大片在线观看 | av手机天堂 | 毛茸茸性猛交xxxx | 亚洲精品资源 | 日韩一区三区 | 久久精品一区二区三区四区五区 | a视频在线观看 | 免费a视频 | 欧美国产精品一区二区 | 国产寡妇亲子伦一区二区三区四区 | 国产欧美日韩在线观看 | 在线中文av | 九九九色 | 91久久国产综合久久91精品网站 | av网址在线播放 | 免费91网站 |