找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

帖子
查看: 1601|回復(fù): 1
收起左側(cè)

ADXL335+超聲波 LCD顯示

[復(fù)制鏈接]
ID:521503 發(fā)表于 2019-8-3 09:39 | 顯示全部樓層 |閱讀模式
#include "led.h"
#include "delay.h"
#include "key.h"
#include "sys.h"
#include "usart.h"
#include "timer.h"
#include "LCD_Display.h"
#include "dht11.h"         
#include "ADC.h"
#include  <math.h>


extern u8  TIM2CH2_CAPTURE_STA;                //輸入捕獲狀態(tài)                                                   
extern u16        TIM2CH2_CAPTURE_VAL;        
extern u8 time;                              

int main(void)
{        
        u8 temperature = 0;           
        u8  humidity = 0;         
        u8 ch_Ultrasonic[15]=" ";       //轉(zhuǎn)換顯示數(shù)組
        u8 ch_Temperature[15]=" ";  
        u8 ch_Humidity[15]=" ";   
        u8 ch_Roll[15]=" ";  
        u8 ch_Pitch[15]=" ";   
        u8 ch_Yaw[15]=" ";   
        float Roll = 0;            //ADXL三個(gè)參數(shù)
        float Pitch = 0;         
        float Yaw = 0;      
  float Ultrasonic_Data=0;   
        float X = 0;      
        float Y = 0;      
        float Z = 0;        
        delay_init();                    
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);         
        uart_init(115200);         
         LED_Init();                          
  DHT11_Init();      
        ADC1_MultiChannel_Configuration();
         //TIM3_PWM_Init(899,0);                 
         TIM2_Cap_Init(0XFFFF,72-1);        
        TIM3_Int_Init(5000,71);   
        Stm32_Clock_Init();        
        STM3210F_LCD_Init();
        LCD_Clear(White);         
  while(1)
        {
                 delay_ms(10);

                LCD_SetTextColor(Black);        
                        
                LCD_DisplayStringLine(Line1,ch_Ultrasonic);        
    LCD_DisplayStringLine(Line2,ch_Temperature);      
                LCD_DisplayStringLine(Line3,ch_Humidity);      
                Roll = Read_ADC1_MultiChannel(12);        
                Pitch = Read_ADC1_MultiChannel(13);
                Yaw = Read_ADC1_MultiChannel(15);
               
    //Roll=(float)(((atan2(Y,X)*180)/3.14159265)+180);
                sprintf(ch_Roll,"X = %.3lf",Roll);      
                LCD_DisplayStringLine(Line4,ch_Roll);      
        
//Pitch=(float)(((atan2(Y,Z)*180)/3.14159265)+180);               
                sprintf(ch_Pitch,"Y = %.3lf ",Pitch);      
                LCD_DisplayStringLine(Line5,ch_Pitch);   
               
//Yaw=(float)(((atan2(X,Z)*180)/3.14159265)+180);        
                sprintf(ch_Yaw,"Z = %.3lf",Yaw);            
                LCD_DisplayStringLine(Line6,ch_Yaw);            
               
                 if(TIM2CH2_CAPTURE_STA&0X80)
                {
                        Ultrasonic_Data=TIM2CH2_CAPTURE_STA&0X3F;
                        Ultrasonic_Data*=65536;
                        Ultrasonic_Data+=TIM2CH2_CAPTURE_VAL;
                        Ultrasonic_Data=170*Ultrasonic_Data*1.0/10000;

                        TIM2CH2_CAPTURE_STA=0;
                }
        
                if(time%5 == 0)
                {
                        UltrasonicWave_StartMeasure();
                }
                if(time%10 == 0)  
                {
                        DHT11_Read_Data(&temperature,&humidity);
                        time = 0;
                }
                //printf("%.2lf\r\n",temp);//′òó¡×üμĸßμãÆ½ê±¼ä               
                sprintf(ch_Ultrasonic,"U = %.2lf cm",Ultrasonic_Data);
                sprintf(ch_Temperature,"T = %d ",temperature);        
                sprintf(ch_Humidity,"H = %d%%",humidity);            



               
        }
}


ADXL-335.7z

225.68 KB, 下載次數(shù): 11, 下載積分: 黑幣 -5

源程序

回復(fù)

使用道具 舉報(bào)

ID:1 發(fā)表于 2019-8-3 15:01 | 顯示全部樓層
本帖需要重新編輯補(bǔ)全電路原理圖,源碼,詳細(xì)說(shuō)明與圖片即可獲得100+黑幣(帖子下方有編輯按鈕)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表