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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4979|回復(fù): 4
打印 上一主題 下一主題
收起左側(cè)

stc15F2K60s2單片機(jī)超聲波測距+角度測量ADXL345+LCD602

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:219033 發(fā)表于 2017-7-12 10:11 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
/**********************頭文件*************************/
#include <reg52.h>
#include <math.h>
#include <intrins.h>
#include <lcd.h>                   //1602顯示
#include <ADXL345.h>          //測量角度
#include <HCSR04.h>


/*************************主函數(shù)***************************/
void main(void)
{
        delay_ms(5);       //上電延時(shí)
        UART_init();           //串口初始化
        ADXL345_init();           // ADXL345的初始化
        LcdInit();                   // LCD的初始化;       
        ID=Read_Data_Reg(0x00);        //  讀出機(jī)器ID值,DEVID寄存器保存0xE5的固定器件ID代碼
        while(1)
        {
                                                                         
                Read_Data();                                                //讀出X Y Z 軸加速度值                                                                                         
                transform();                                                  //數(shù)據(jù)重建過程
                calculate_angle(XX,YY,ZZ);                        //計(jì)算x和y軸相對(duì)于水平面的傾角
                calculate();                                                  //   ASCII碼計(jì)算
                display_LCD();                                                //   顯示

                get_temp_data();                                          //獲取超聲波測距距離 單位CM
                dispaly_data();                                                //顯示超聲波數(shù)據(jù)
        }       
}



#include <reg52.h>
#include <intrins.h>
#include <lcd.h>
#include <HCSR04.h>
/*----------------------------
                超聲波測距模塊
-----------------------------*/
uchar serial[4];
uchar cnt,sum,temp;
uint temp_data = 0;
bit flag1;
uchar Average_flag = 0;
uint sum_data = 0;
uint Average_data = 0;
/*----------------------------
UART 中斷服務(wù)程序
-----------------------------*/
void serial_serve() interrupt 4         //串口中斷4號(hào)
{  
    EA=0;//       
    RI=0;
    temp=SBUF;//讀第一個(gè)字節(jié),如果是0XFF的話,說明是啟使碼對(duì)了
    switch(cnt)
        {          
          case 0:serial[0]=temp;
          if(serial[0]==0xff)
          {
                  cnt=1;
                  flag1=0;
               
          }
          else
          cnt=0; break;
          case 1:serial[1]=temp;cnt=2;break;
          case 2:serial[2]=temp;cnt=3;break;
          case 3:serial[3]=temp;cnt=0;flag1=1;break;
    }
    EA=1;
}

void UART_init()
{
        SCON = 0x50;                //8位數(shù)據(jù),可變波特率
        AUXR |= 0x40;                //定時(shí)器1時(shí)鐘為Fosc,即1T
        AUXR &= 0xFE;                //串口1選擇定時(shí)器1為波特率發(fā)生器
        TMOD &= 0x0F;                //設(shè)定定時(shí)器1為16位自動(dòng)重裝方式
        TL1 = 0xE0;                        //設(shè)定定時(shí)初值
        TH1 = 0xFE;                        //設(shè)定定時(shí)初值
        ET1 = 0;                        //禁止定時(shí)器1中斷
        TR1 = 1;                        //啟動(dòng)定時(shí)器1
        EA = 1;                            //開總中斷
        ES = 1;                                //開串口中斷
        cnt=0;
}
void dispaly_data()
{
                LcdWriteCom(0x80+0x40);
                 LcdWriteData('H');
                LcdWriteData('=');
                LcdWriteData('0'+Average_data/1000);
                LcdWriteData('0'+Average_data/100%10);
                LcdWriteData('0'+Average_data/10%10);
                LcdWriteData('.');      
                LcdWriteData('0'+Average_data%10);
                LcdWriteData('c');
                LcdWriteData('m');
}

void get_temp_data(void)
{
     if(flag1==1)
          {    //進(jìn)行校驗(yàn),如果校驗(yàn)正確,則采集數(shù)據(jù)  
                  sum=serial[0]+serial[1]+serial[2];
                  if(sum==serial[3])
                  {  //將兩個(gè)字節(jié)合并成一個(gè)16位的int
                  temp_data= serial[1] ;
                  temp_data<<=8;
             temp_data= temp_data|serial[2] ;
         // temp_data/=10;//毫米單位轉(zhuǎn)換成厘米單位
                         Average_flag++;
                         sum_data=sum_data+temp_data;                //累加
                         if(Average_flag == 16)
                         {
                                 Average_data=sum_data/16+20;
                                Average_flag = 0;
                                sum_data = 0;
                                temp = 0;
                         }

                  }
          }
}

#include"lcd.h"

/*******************************************************************************
* 函 數(shù) 名         : Lcd1602_Delay1ms
* 函數(shù)功能                   : 延時(shí)函數(shù),延時(shí)1ms
* 輸    入         : c
* 輸    出         : 無
* 說    名         : 該函數(shù)是在12MHZ晶振下,12分頻單片機(jī)的延時(shí)。
*******************************************************************************/

void Lcd1602_Delay1ms(uint c)   //誤差 0us
{
    uchar i,j;
        for (; c>0; c--)
        {
                _nop_();
                _nop_();
                _nop_();
                i = 11;
                j = 190;
                do
                {
                        while (--j);
                } while (--i);
        }
           
}

/*******************************************************************************
* 函 數(shù) 名         : LcdWriteCom
* 函數(shù)功能                   : 向LCD寫入一個(gè)字節(jié)的命令
* 輸    入         : com
* 輸    出         : 無
*******************************************************************************/
#ifndef         LCD1602_4PINS         //當(dāng)沒有定義這個(gè)LCD1602_4PINS時(shí)
void LcdWriteCom(uchar com)          //寫入命令
{
        LCD1602_E = 0;     //使能
        LCD1602_RS = 0;           //選擇發(fā)送命令
        LCD1602_RW = 0;           //選擇寫入
       
        LCD1602_DATAPINS = com;     //放入命令
        Lcd1602_Delay1ms(1);                //等待數(shù)據(jù)穩(wěn)定

        LCD1602_E = 1;                  //寫入時(shí)序
        Lcd1602_Delay1ms(5);          //保持時(shí)間
        LCD1602_E = 0;
}
#else
void LcdWriteCom(uchar com)          //寫入命令
{
        LCD1602_E = 0;         //使能清零
        LCD1602_RS = 0;         //選擇寫入命令
        LCD1602_RW = 0;         //選擇寫入

        LCD1602_DATAPINS = com;        //由于4位的接線是接到P0口的高四位,所以傳送高四位不用改
        Lcd1602_Delay1ms(1);

        LCD1602_E = 1;         //寫入時(shí)序
        Lcd1602_Delay1ms(5);
        LCD1602_E = 0;

//        Lcd1602_Delay1ms(1);
        LCD1602_DATAPINS = com << 4; //發(fā)送低四位
        Lcd1602_Delay1ms(1);

        LCD1602_E = 1;         //寫入時(shí)序
        Lcd1602_Delay1ms(5);
        LCD1602_E = 0;
}
#endif
/*******************************************************************************
* 函 數(shù) 名         : LcdWriteData
* 函數(shù)功能                   : 向LCD寫入一個(gè)字節(jié)的數(shù)據(jù)
* 輸    入         : dat
* 輸    出         : 無
*******************************************************************************/                  
#ifndef         LCD1602_4PINS                  
void LcdWriteData(uchar dat)                        //寫入數(shù)據(jù)
{
        LCD1602_E = 0;        //使能清零
        LCD1602_RS = 1;        //選擇輸入數(shù)據(jù)
        LCD1602_RW = 0;        //選擇寫入

        LCD1602_DATAPINS = dat; //寫入數(shù)據(jù)
        Lcd1602_Delay1ms(1);

        LCD1602_E = 1;   //寫入時(shí)序
        Lcd1602_Delay1ms(5);   //保持時(shí)間
        LCD1602_E = 0;
}
#else
void LcdWriteData(uchar dat)                        //寫入數(shù)據(jù)
{
        LCD1602_E = 0;          //使能清零
        LCD1602_RS = 1;          //選擇寫入數(shù)據(jù)
        LCD1602_RW = 0;          //選擇寫入

        LCD1602_DATAPINS = dat;        //由于4位的接線是接到P0口的高四位,所以傳送高四位不用改
        Lcd1602_Delay1ms(1);

        LCD1602_E = 1;          //寫入時(shí)序
        Lcd1602_Delay1ms(5);
        LCD1602_E = 0;

        LCD1602_DATAPINS = dat << 4; //寫入低四位
        Lcd1602_Delay1ms(1);

        LCD1602_E = 1;          //寫入時(shí)序
        Lcd1602_Delay1ms(5);
        LCD1602_E = 0;
}
#endif
/*******************************************************************************
* 函 數(shù) 名       : LcdInit()
* 函數(shù)功能                 : 初始化LCD屏
* 輸    入       : 無
* 輸    出       : 無
*******************************************************************************/                  
#ifndef                LCD1602_4PINS
void LcdInit()                                                  //LCD初始化子程序
{
        LcdWriteCom(0x38);  //開顯示
        LcdWriteCom(0x0c);  //開顯示不顯示光標(biāo)
        LcdWriteCom(0x06);  //寫一個(gè)指針加1
        LcdWriteCom(0x01);  //清屏
        LcdWriteCom(0x80);  //設(shè)置數(shù)據(jù)指針起點(diǎn)
}
#else
void LcdInit()                                                  //LCD初始化子程序
{
        LcdWriteCom(0x32);         //將8位總線轉(zhuǎn)為4位總線
        LcdWriteCom(0x28);         //在四位線下的初始化
        LcdWriteCom(0x0c);  //開顯示不顯示光標(biāo)
        LcdWriteCom(0x06);  //寫一個(gè)指針加1
        LcdWriteCom(0x01);  //清屏
        LcdWriteCom(0x80);  //設(shè)置數(shù)據(jù)指針起點(diǎn)
}
#endif

/**********************頭文件*************************/
#include <reg52.h>
#include <math.h>
#include <intrins.h>
#include <lcd.h>
#include <ADXL345.h>

/***********************宏定義***********************/
#define uchar unsigned char
#define uint unsigned int





/***********************函數(shù)聲明**********************/
//void write_comd(uchar);
//void write_data_LCD(uchar);

/***********************全局變量**********************/
uint Data_X_2[2];           //  讀出的數(shù)據(jù)儲(chǔ)存 X Y Z
uint Data_Y_2[2];
uint Data_Z_2[2];
int Data_X,Data_Y,Data_Z;   //  數(shù)值轉(zhuǎn)換后的值
float XX,YY,ZZ;                //  3軸的重力加速度分量
uchar ID;
float roll,pitch;
uchar dis1[16] = {"X+00.00  Y+00.00"};



/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:        Delayms()                                                                                                *
*  功能描述:產(chǎn)生延遲                                                                                                *
*  形參:ms  延遲的時(shí)間,單位ms                                                                                *
*  返回值:無                                                                                                                *
*  局部變量:i                                                                                                                *
*  全局變量:無                                                                                                                *
*  函數(shù)調(diào)用: 無                                                                                                        *
*                                                                                                                                        *
********************************************************************/
void delay_ms(uchar ms)
{
        uchar i;
        while(ms--)
        {
                for(i = 0; i< 250; i++)
                {
                        _nop_();
                        _nop_();     //空執(zhí)行消耗CPU時(shí)間達(dá)到等待的效果
                        _nop_();
                        _nop_();
                }
        }
}

/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:        Write_Data(uchar Data_write)                                                        *
*  功能描述:寫指令到寄存器                                                                                    *
*  形參:Data_write  要寫的數(shù)據(jù)  8位                                                                *
*  返回值:無                                                                                                                *
*  局部變量:i                                                                                                                *
*  全局變量:無                                                                                                                *
*  函數(shù)調(diào)用: _nop_();                                                                                            *
*                                                                                                                                        *
********************************************************************/
/*************************寫數(shù)據(jù)函數(shù)*******************/
void Write_Data(uchar Adress_Reg,uchar Data_write)
{
        uchar i=0;
        Adress_Reg=(Adress_Reg & 0x7f);                        //  置最高位位0  寫狀態(tài)
        Adress_Reg=(Adress_Reg & 0xbf);                   //         置第二高位0  單字節(jié)讀寫
        CS=0;
        _nop_();
        SCLK=1;
        _nop_();
        for(i=0;i<8;i++)                                  //  8位串行輸出  寄存器地址值
        {
                SCLK=0;
                _nop_();
                SDI=(bit)(Adress_Reg & 0x80);
                _nop_();
                _nop_();
                _nop_();
                SCLK=1;
                _nop_();
                _nop_();
                Adress_Reg<<=1;
               
        }
        for(i=0;i<8;i++)                                //  8位串行輸出          指令值
        {
                SCLK=0;
                _nop_();
                SDI=(bit)(Data_write & 0x80);
                _nop_();
                _nop_();
                _nop_();
                SCLK=1;
                _nop_();
                _nop_();
                Data_write<<=1;
               
        }
        _nop_();
        _nop_();
        SCLK=1;
        _nop_();
        _nop_();
        SDI=1;
        CS=1;
}
                               
/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:         Read_Data_Reg(uchar Adress_Reg)                                            *
*  功能描述:往寄存器讀數(shù)據(jù)                                                                                    *
*  形參:Adress_Reg   寄存器地址                                                                        *
*  返回值:        Data_Read   讀取的數(shù)據(jù)                                                                        *
*  局部變量:i  Data_Read   讀取的數(shù)據(jù)                                                                 *
*  全局變量:無                                                                                                                *
*  函數(shù)調(diào)用: _nop_();                                                                                            *
*                                                                                                                                        *
********************************************************************/
uchar Read_Data_Reg(uchar Adress_Reg)
{
        uchar i=0;
        uchar Data_Read;
        Adress_Reg=(Adress_Reg|0x80);                 //          置最高位為1, 讀狀態(tài)
        Adress_Reg=(Adress_Reg&0xbf);                 //          置第二高位位0, 單字節(jié)讀寫
        CS=0;
        _nop_();
        _nop_();
        SCLK=1;
        _nop_();
        _nop_();
        for(i=0;i<8;i++)                                         //  8位串行輸出  寄存器地址值
        {
                SCLK=0;
                _nop_();
                SDI=(bit)(Adress_Reg & 0x80);
                _nop_();
                _nop_();
                _nop_();
                SCLK=1;
                _nop_();
                _nop_();
                Adress_Reg<<=1;
               
        }
        for(i=0;i<8;i++)                                   //  8位串行讀入  數(shù)據(jù)(8位)  
        {
                SCLK=0;
                Data_Read<<=1;
                _nop_();
                Data_Read|=(uchar)SDI;
                _nop_();
                _nop_();
                SCLK=1;
                _nop_();
                _nop_();
        }

        for(i=0;i<8;i++)                                    //  產(chǎn)生8個(gè)脈沖  (手冊要求,目的不知道)
        {
                SCLK=0;
                _nop_();
                _nop_();
                SCLK=1;
                _nop_();
                _nop_();
        }
        _nop_();
        _nop_();
        SCLK=1;
        _nop_();
        CS=1;
        return Data_Read;
}
/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:        Read_Data()                                                                                        *
*  功能描述:讀出6字節(jié)X Y Z 軸各兩字節(jié)的數(shù)據(jù)                                                    *
*  形參:        無                                                                                                                *
*  返回值:        無                                                                                                                *
*  局部變量:無                                                                                                                *
*  全局變量:Data_X_2[2] Data_Y_2[2] Data_Z_2[2]    存放讀出值      *
*  函數(shù)調(diào)用:Read_Data_Reg(__);delay_ms(__);                                            *
*                                                                                                                                        *
********************************************************************/
void  Read_Data()
{

                /*DATAX0是X軸加速度的低字節(jié)寄存器,DATAX1是高字節(jié)寄存器*/
               
                Data_X_2[0]=Read_Data_Reg(0x32);           //  讀出X軸低位
                Data_X_2[1]=Read_Data_Reg(0x33);           //  讀出X軸高位
                delay_ms(10);
                Data_Y_2[0]=Read_Data_Reg(0x34);           //  讀出Y軸低位
                Data_Y_2[1]=Read_Data_Reg(0x35);           //  讀出Y軸高位
                delay_ms(10);
                Data_Z_2[0]=Read_Data_Reg(0x36);           //  讀出Z軸低位
                Data_Z_2[1]=Read_Data_Reg(0x37);           //  讀出Z軸高位

}

/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:         ADXL345_init()                                                                                *
*  功能描述:ADXL345 初始化  對(duì)寄存器寫指令                                                    *
*  形參:        無                                                                                                                *
*  返回值:        無                                                                                                                *
*  局部變量:無                                                                                                                *
*  全局變量:無                                                                                                                *
*  函數(shù)調(diào)用:        Write_Data_Reg(__,__);                                                                *
*                                                                                                                                        *
********************************************************************/
void ADXL345_init()
{
        Write_Data(0x31,0x4f);                  //測量范圍為正負(fù)16g 13位模式 3線SPI  中斷低有效  禁用自測力 左對(duì)齊(MSB)模式
        delay_ms(10);
        Write_Data(0x2C,0x08);                  //速率設(shè)定為25HZ,帶寬12.5HZ
        delay_ms(10);
        Write_Data(0x2D,0x08);                  //選擇電源模式
        delay_ms(10);
        Write_Data(0x2E,0x80);                  //使能 DATA_READY 中斷
        delay_ms(10);
        Write_Data(0x2f,0x00);                  //中斷功能設(shè)定,不使用中斷
        delay_ms(10);

        /*Write_Data(0x1E,0x00);                  //X 偏移量 根據(jù)測試傳感器的
        delay_ms(10);
           Write_Data(0x1F,0x00);                  //Y 偏移量 根據(jù)測試傳感器的
        delay_ms(10);
           Write_Data(0x20,0x00);                  //Z 偏移量 根據(jù)測試傳感器的
        delay_ms(10);

        Write_Data(0x21,0x00);                  //敲擊延時(shí)0:禁用; (1.25ms/LSB)
        delay_ms(10);
        Write_Data(0x22,0x00);                  //檢測第一次敲擊后的延時(shí)0:禁用; (1.25ms/LSB)
        delay_ms(10);
        Write_Data(0x23,0x00);                  //敲擊窗口0:禁用; (1.25ms/LSB)
        delay_ms(10);

        Write_Data(0x24,0x00);                  //保存檢測活動(dòng)閥值; (62.5mg/LSB)
        delay_ms(10);
        Write_Data(0x25,0x00);                  //保存檢測靜止閥值; (62.5mg/LSB)                                                          
        delay_ms(10);
        Write_Data(0x26,0x2b);                  //檢測活動(dòng)時(shí)間閥值; (1s/LSB)
        delay_ms(10);


        Write_Data(0x27,0x00);                  // 活動(dòng)  靜止檢測禁止
        delay_ms(10);
        Write_Data(0x28,0x09);                  //保存檢測活動(dòng)閥值; (62.5mg/LSB)
        delay_ms(10);
        Write_Data(0x29,0xff);                  //保存檢測靜止閥值; (62.5mg/LSB)
        delay_ms(10);
        Write_Data(0x2a,0x80);                  
        delay_ms(10);*/
}

/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:         transform(void)                                                                                *
*  功能描述:數(shù)值整合和轉(zhuǎn)換        ,并轉(zhuǎn)換為加速度  放大1000倍                        *
*  形參:        無                                                                                                                *
*  返回值:        無                                                                                                                *
*  局部變量:無                                                                                                                *
*  全局變量:Data_X=0,Data_Y=0,Data_Z   整合后的X Y Z 軸值                        *
*  函數(shù)調(diào)用:無                                                                                                                *
*                                                                                                                                        *
********************************************************************/

/*從數(shù)據(jù)寄存器中獲取加速度數(shù)據(jù)后,用戶必須對(duì)數(shù)據(jù)進(jìn)行重建*/
/***************************數(shù)值轉(zhuǎn)換***********************/
void transform(void)
{
        (int)Data_X=(Data_X_2[0])+(Data_X_2[1]<<8);
        (int)Data_Y=(Data_Y_2[0])+(Data_Y_2[1]<<8);        
        (int)Data_Z=(Data_Z_2[0])+(Data_Z_2[1]<<8);
       

        if(Data_X&0x2000)
        {                                                                   //  若位負(fù)數(shù)  轉(zhuǎn)換為補(bǔ)碼
                Data_X=(~Data_X)+1;
                Data_X=Data_X*3.90625;                           //  乘比例因素
                Data_X=-Data_X;
        }
        else
        {
                Data_X=Data_X*3.90625;
        }
        if(Data_Y&0x2000)
        {                                                                //  若位負(fù)數(shù)  轉(zhuǎn)換為補(bǔ)碼
                Data_Y=(~Data_Y)+1;
                Data_Y=Data_Y*3.90625;                        //  乘比例因素
                Data_Y=-Data_Y;
        }
        else
        {
                Data_Y=Data_Y*3.90625;
        }
        if(Data_Z&0x2000)
        {                                                                  //  若位負(fù)數(shù)  轉(zhuǎn)換為補(bǔ)碼
                Data_Z=(~Data_Z)+1;
                Data_Z=Data_Z*3.90625;                          //  乘比例因素
                Data_Z=-Data_Z;
        }
        else
        {
                Data_Z=Data_Z*3.90625;
        }
        /*if(Data_X<0)
        {                                                                  
                Data_X=-Data_X;
                Data_X=(float)Data_X*3.9;//Data_X單位為1000倍的g,即mg
        }
        else
        {
                Data_X=(float)Data_X*3.9;
        }
        if(Data_Y<0)
        {
                Data_Y=-Data_Y;
                Data_Y=(float)Data_Y*3.9;
        }
        else
        {
                Data_Y=(float)Data_Y*3.9;
        }
        if(Data_Z<0)
        {                                                                  
                Data_Z=-Data_Z;
                Data_Z=(float)Data_Z*3.9;
        }
        else
        {
                Data_Z=(float)Data_Z*3.9;
        }*/
       
        /*擴(kuò)大1000倍后結(jié)果*/
       
        /*檢測軸始終檢測到的是正加速度*/
        XX=Data_X;                           //  X軸重力加速度分量
        YY=Data_Y;                           //  Y軸重力加速度分量
        ZZ=Data_Z;                           //  Z軸重力加速度分量

}


/********************************************************************
*                                                                                                                                        *
*  函數(shù)名:        calculate_angle(float V_x,float V_y,float V_z)                        *
*  功能描述:計(jì)算橫滾角和俯仰角                                                                            *
*  形參:G_x  G_x  G_z        X Y Z軸的加速度值                                                        *
*  返回值:無                                                                                                                *
*  局部變量:無                                                                                                    *
*  全局變量:roll  pitch  橫滾角和俯仰角                                                        *
*  函數(shù)調(diào)用:atan2(_,_);                                                              *
*                                                                                                                                        *
********************************************************************/

/*********計(jì)算角度函數(shù)***************/
void calculate_angle(float G_x,float G_y,float G_z)
{

        roll=-(float)(((atan2(G_z,G_x)*180)/3.1415926535)-90);//弧度轉(zhuǎn)成角度
    pitch=-(float)(((atan2(G_z,G_y)*180)/3.1415926535)-90);
        roll=roll*100;
        pitch=pitch*100;
}






/*******************計(jì)算函數(shù)********************/
void calculate()
{
        //uchar flag_X,flag_Y;
        if(roll<0)
        {
                roll=-roll;
                dis1[1]='-';//flag_X=45;
        }
        else
        {
                dis1[1]='+';
        }
        if(pitch<0)
        {
                pitch=-pitch;
                dis1[10]='-';//flag_Y=45;
        }
        else
        {
                dis1[10]='+';
        }

        dis1[0]='X';
        //dis1[1]=flag_X;
        dis1[2]=(int)roll%10000/1000+48;
        dis1[3]=(int)roll%10000%1000/100+48;
        dis1[4]='.';
        dis1[5]=(int)roll%10000%1000%100/10+48;
        dis1[6]=(int)roll%10000%1000%100%10+48;

        dis1[9]='Y';
        //dis1[10]=flag_Y;
        dis1[11]=(int)pitch%10000/1000+48;
        dis1[12]=(int)pitch%1000/100+48;
        dis1[13]='.';
        dis1[14]=(int)pitch%1000%100/10+48;
        dis1[15]=(int)pitch%1000%100%10+48;

}

void display_LCD()
{       
       
        uint i;

        LcdWriteCom(0x80);//初始化數(shù)據(jù)指針,寫在第一行
       
        for(i=0;i<16;i++)
                {
                        LcdWriteData(dis1[i]);
                        ADXL345_delay(1);
                }

}
/*******************延時(shí)函數(shù)********************/
void ADXL345_delay(uint k)
{
        uint j,i;
        for(j=k;j>0;j--)
                for(i=100;i>0;i--);
}



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

使用道具 舉報(bào)

沙發(fā)
ID:288884 發(fā)表于 2018-5-19 14:19 | 只看該作者
大神,有幾個(gè)頭文件沒有
回復(fù)

使用道具 舉報(bào)

板凳
ID:359325 發(fā)表于 2018-6-26 14:34 | 只看該作者
仿真文件有沒有
回復(fù)

使用道具 舉報(bào)

地板
ID:361216 發(fā)表于 2018-7-5 13:16 | 只看該作者
不錯(cuò)不錯(cuò),學(xué)習(xí)了,正在研究怎么把ADXL345  數(shù)據(jù)上傳PC
回復(fù)

使用道具 舉報(bào)

5#
ID:393702 發(fā)表于 2018-9-4 21:00 | 只看該作者
lhqsbz 發(fā)表于 2018-7-5 13:16
不錯(cuò)不錯(cuò),學(xué)習(xí)了,正在研究怎么把ADXL345  數(shù)據(jù)上傳PC

請問樓主,您說的這個(gè)問題可由研究?請賜教!
回復(fù)

使用道具 舉報(bào)

6#
無效樓層,該帖已經(jīng)被刪除
您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

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

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲综合精品 | www.97国产| 国产一区二区自拍 | 久草日韩 | 一区二区三区免费 | 日韩毛片在线免费观看 | 免费观看a级毛片在线播放 黄网站免费入口 | 久久久视 | 国产精品久久久久久久免费大片 | 国产丝袜一区二区三区免费视频 | 亚洲欧美日韩高清 | 国产激情91久久精品导航 | 国产一区久久 | 精品亚洲一区二区 | 成人美女免费网站视频 | 欧美在线一级 | 国产欧美精品在线 | 午夜影院视频 | 91在线看片| 密桃av| 亚洲精品日韩在线 | 欧美日韩国产一区二区三区 | 久草网站 | 国产高清一区二区三区 | 国产精品久久国产精品 | 一区二区三区在线播放视频 | 一级视频黄色 | av一级毛片 | 久久久久一区二区 | 麻豆一区一区三区四区 | 久久成人人人人精品欧 | 亚洲高清在线观看 | 欧美一区不卡 | 围产精品久久久久久久 | 亚洲第一av | 久久精品国产一区二区电影 | 精品视频一区二区三区四区 | 国产精品久久久久久久久久免费看 | 国产高清视频在线观看播放 | 国产精品高潮呻吟 | 久久伊人影院 |