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

標題: 單片機與PC機的互相通信 [打印本頁]

作者: 薄情yi    時間: 2017-5-4 13:09
標題: 單片機與PC機的互相通信
    目前我正在做有關單片機與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;
}
}


作者: w1179benp    時間: 2017-5-4 20:28
我想應該在PC機上寫個管理程序(俗稱上位機程序),通過串口或PCI接口等,連接你的下位機。
作者: lidengjing    時間: 2017-5-4 20:41
一個MIAN()函數,然后把兩個功能合并實現就可以
作者: yzwzfyz    時間: 2017-5-5 11:16
主程序:
初始化
START:
檢測是否有功能1的標記,有則調功能1;
檢測是否有功能2的標記,有則調功能2;
……
檢測是否有功能N的標記,有則調功能N;
進行入休眠(可不要此步)
返回到:START

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

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

作者: 薄情yi    時間: 2017-5-7 15:12
lidengjing 發表于 2017-5-4 20:41
一個MIAN()函數,然后把兩個功能合并實現就可以

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




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 偷牌自拍 | 成人精品一区二区 | 欧美free性 | 九九综合九九 | 久久爱一区 | 精品国产乱码久久久久久1区2区 | 国产欧美日韩一区二区三区在线 | 成人在线视频网 | 久久精品一区二区三区四区 | 久久99蜜桃综合影院免费观看 | 视频一区二区中文字幕 | 亚洲精品电影在线观看 | 毛片黄| 日本成人综合 | 在线视频一区二区三区 | 电影午夜精品一区二区三区 | 亚洲精色| 男女性毛片 | 亚洲444kkkk在线观看最新 | 亚洲精品一区二区三区免 | 久久精品中文 | 91传媒在线观看 | 亚洲国产成人av好男人在线观看 | 中文字幕 在线观看 | 97精品一区二区 | 午夜精品网站 | 亚洲欧美视频一区 | 祝你幸福电影在线观看 | 成人国产在线观看 | 久久免费视频1 | 久久国产精品91 | 一级午夜aaa免费看三区 | 亚洲v日韩v综合v精品v | 久在线 | 日本午夜一区二区三区 | 免费骚视频 | 久久国产秒 | 日韩一级免费电影 | 欧美日韩大陆 | 高清久久 | 国产小视频在线 |