音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

請(qǐng)大家看看偶這樣的數(shù)據(jù)接受與存放有問(wèn)題嗎 ?

作者:可樂(lè)泡飯 欄目:單片機(jī)
請(qǐng)大家看看偶這樣的數(shù)據(jù)接受與存放有問(wèn)題嗎 ?
#include <pic.h>
#define uCHAR unsigned CHAR
#define uint unsigned int
const uCHAR segcode[11]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};//定義段選
uint wei1[4]={0x02,0x04,0x08,0x10};   //位選
uCHAR buffer1[4],buffer2[4];      
uint i,data_buf,sel,data1,k;
void delay()
{ uint j;
    for(j=100;j>0;j--);  
}

void reflash1(void)                           //刷新顯示
{   uint n;
   
    for(n=0;n<4;n++)
       { PORTB=0;
         PORTC=segcode[buffer2[n]];
         //PORTC=segcode[n];
         PORTB=wei1[n];             //位選
         delay();
       }
   
}


void rece(void)
{     
      uCHAR j;
      i=0;
      while(!RB6)                      //模擬PSI接受使能EN
    {
     j = 8;                            //一個(gè)字節(jié)8位
      while(j--)
      {  
        while(RB5){;}                  //等待一個(gè)CKL
        while(!RB5){;}
        data_buf <<= 1;
        if(RB0==0)
        {
            data_buf &= 0xfe;
        }
        else
        {
            data_buf |= 0x01;
        }
      }
     
      buffer1[i]=data_buf;                   //一個(gè)字節(jié)存入數(shù)組
      i++;
      if(i==4)
        {
          
          for(k=0;k<4;k++)
             {
               buffer2[k]=buffer1[k];
             }
            i=0;
        }
     }   
}


void timer0_init()
    {
    T0CS=0;    //tocs為1的話則由T0CK1外部引腳輸入的脈沖信號(hào)作為計(jì)劃數(shù)器的TMR0的計(jì)數(shù)器, 如果為0,則內(nèi)部的指令周期信號(hào)做為數(shù)據(jù)源
    T0SE=0;    //TOSE為1的話則下治觸發(fā),為0則為上治觸發(fā)
    PSA=0;     //如果為1則將分頻器給狗。如果為零則給TMR0
    PS2=1;     //PS012是1,則說(shuō)明是將分頻比為1:256
    PS1=1;
    PS0=1;
    T0IF=0;   //TOIF是溢出標(biāo)志位。為1說(shuō)明發(fā)生了溢出。為0,說(shuō)明還沒(méi)有
    T0IE=1;   //溢出標(biāo)志中斷使用能:1說(shuō)明允許溢出之后生產(chǎn)中斷。為0表示不產(chǎn)生中斷即 屏蔽。
    }

void interrupt inte()
    {
    if(T0IF)
        {
        reflash1();  //數(shù)碼管掃描
        TMR0=0xda;  //重設(shè)定時(shí)初值
        T0IF=0;
        }
    }

void main(void)
{
  TRISA=0x00;
  TRISB=0x61;
  TRISC=0x00;
  timer0_init();
   GIE=1;                //全局中斷使能
    TMR0=0x00;
   while(1)
   {
    rece();        //接受數(shù)據(jù)
   }
}


偶做個(gè)測(cè)試數(shù)據(jù)接受因該是沒(méi)問(wèn)題,問(wèn)題估計(jì)出在接受后的存放與去取數(shù)據(jù)顯示,請(qǐng)大家?guī)臀铱纯?分析一下,謝謝啦

2樓: >>參與討論
huxiangbin
路過(guò)
 
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請(qǐng)問(wèn)21IC的FTP下載的KeilC51v750a_Full.rar的解壓密碼!
尋求電磁爐成熟方案芯片,
c語(yǔ)言的問(wèn)題:怎么能使單片機(jī)判斷從串口讀的指令已經(jīng)結(jié)束了呢?
cmos高電平加到準(zhǔn)雙向口上只有2.5V,為什么?怎么辦?
誰(shuí)用過(guò)這種編碼開(kāi)關(guān)?類似一鍵飛梭
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)