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

專注電子技術學習與研究
當前位置:單片機教程網 >> MCU設計實例 >> 瀏覽文章

80C51單片機通過模擬SPI口驅動UZZ9001讀寫操作

作者:佚名   來源:本站原創   點擊數:  更新時間:2013年10月20日   【字體:
#include <reg51.h>   
#include<absacc.h>   
#include <intrins.h>   
#include<math.h>   
sbit CS  = P2^0;   
sbit CLK = P2^1;   
sbit DATA= P2^2;   
/*宏定義8155的A口,B口和控制口*/   
#define PA8155 XBYTE[0x7101]   
#define PB8155 XBYTE[0x7102]   
#define COM8155 XBYTE[0x7100]   

//顯示[0,1,2,3,4,5,6,7,8,9,A,b,c,d,e,f]的代碼;   
unsigned char code  Table[16]={0X0FC,0X60,0X0DA,0X0F2,0X66,0X0B6,0X0BE,0X0E0,0X0FE,0X0F6,0xee,0x3e,0x9c,0x7a,0xde,0x8e};   
unsigned char Buf[4]={0,0,0,0};             //對應四個數碼管顯示數據的緩沖區   


void delay(unsigned int time)  //延時                                           
{      
    while(time--);     
}   

/*************************************************  
函數名稱:數碼管顯示  
功能:將四個緩沖區單元的內容分別顯示到四個數碼管上面  
參數:unsigned charp *Bufptr  
返回值:無  
**************************************************/   
void DISP_LED(unsigned char *Bufptr)   
{   
    unsigned char disi;   
    unsigned char BitCT=0X10;   
    for(disi=0;disi<4;disi++)   
    {   
        PA8155=BitCT;                                       //選中個位數碼管   
        PB8155=Table[*Bufptr++]+(disi==1);                          //取段碼   
        BitCT=_crol_(BitCT,1);                              //左移一位   
        delay(500);   
    }   
}   


unsigned int uzz9001(void)   
{   
    unsigned int i,temp=0;   
    CLK=1;   
    CS=1;   
    delay(5);   
    CS=0;   
    delay(1);   
    i=16;   
    while(i--)   
    {   
        temp<<=1;   
        CLK=0;   
        delay(5);   
        CLK=1;   
        if(DATA==1)   
            temp |=0x0001;   
        else   
            temp &=0xfffe;   
        delay(5);   
    }   
    CS=1;   
    return(temp);   
}   

float angle(void)   
{   
    unsigned int i,temp0,temp1,temp2=0;   
    float jiaodu;   
    for(i=0;i<8;i++)   
    {   
       temp0=uzz9001();   
       temp1=temp0&0x3f00;   
       temp1>>=1;   
       temp0&=0x007f;   
       temp0=temp0+temp1;   
       temp2+=temp0;   
    }   
    jiaodu=temp2*180.000/65536.000;   
    return(jiaodu);   
}   


void main()   
{   
  unsigned char count;   
  unsigned int jiaodu;   
  COM8155=0x03;   
  TMOD=0X01;   
  TH0=0X3c;       //初始化,定時50MS   
  TL0=0Xb0;   
  count=0;   
  TR0=1;   

  while(1)   
    {   
       DISP_LED(Buf);   
       if(TF0==1)    
       {   

          TF0=0;   
          count++;   
          if(count==10)   //20*50MS=1S   
          {   
              count=0;   
              jiaodu=(unsigned int) (angle()*10.0);   
               DISP_LED(Buf);   
              Buf[3]=jiaodu/1000;   
              Buf[2]=jiaodu%1000/100;      
              Buf[1]=jiaodu%100/10;   
              Buf[0]=jiaodu%10;   

          }   
       }   
    }   

}   
關閉窗口

相關文章

主站蜘蛛池模板: 午夜码电影 | 国产成人99久久亚洲综合精品 | 中国美女一级黄色片 | 男女羞羞视频在线免费观看 | 欧美一级精品片在线看 | 九九久久精品 | 国产精品一区在线播放 | 狠狠亚洲| 欧美精品一级 | 亚洲免费视频在线观看 | 巨大荫蒂视频欧美另类大 | 久久综合一区 | 毛片入口 | 日韩成人免费视频 | 亚洲欧洲日本国产 | 亚洲综合第一页 | 视频一区中文字幕 | 91精品国产色综合久久不卡蜜臀 | 欧美精品一区二区三区四区五区 | 日本精品一区二区三区视频 | 国产免费又色又爽又黄在线观看 | 精品国产一区二区国模嫣然 | 久久er99热精品一区二区 | 成人av电影天堂 | 在线观看黄免费 | 国产精品日产欧美久久久久 | www.日本精品 | 一区二区三区四区免费在线观看 | 狠狠躁夜夜躁人人爽天天高潮 | 台湾a级理论片在线观看 | 999久久久 | 色综合中文 | 午夜精品久久久久久久99黑人 | 中文字幕精品一区二区三区精品 | 日韩视频中文字幕 | 日韩精品在线观看视频 | 成年人视频免费在线观看 | 91爱啪啪 | 国产欧美日韩综合精品一区二区 | 成人在线小视频 | 久国产视频|