|
在這里粘貼main.c的程序,想發(fā)完整的文件 但是目前不太會(huì) 等我摸索好后 繼續(xù)上傳
#include "stm32f10x.h" //STM32頭文件
#include "sys.h"
#include "delay.h"
#include "relay.h"
#include "oled0561.h"
#include "MPU6050.h"
#include "usart.h"
int main (void){//主程序
u8 a;
//初始化程序
u16 t[6]={0};
delay_ms(500); //上電時(shí)等待其他器件就緒
RCC_Configuration(); //系統(tǒng)時(shí)鐘初始化
RELAY_Init();//繼電器初始化
USART1_Init(115200); //串口初始化(參數(shù)是波特率)
I2C_Configuration();//I2C初始化
OLED0561_Init(); //OLED初始化
OLED_DISPLAY_8x16_BUFFER(0,(u8 *)" MPU6050 TEST "); //顯示字符串
OLED_DISPLAY_8x16_BUFFER(2,(u8 *)"X: X: "); //顯示字符串
OLED_DISPLAY_8x16_BUFFER(4,(u8 *)"Y: Y: "); //顯示字符串
OLED_DISPLAY_8x16_BUFFER(6,(u8 *)"Z: Z: "); //顯示字符串
MPU6050_Init(); //MPU6050初始化
while(1){
MPU6050_READ(t); //加速度
//其中t[0~2]是加速度ACCEL,t[3~5]是陀螺儀GYRO
OLED_DISPLAY_8x16(2,2*8,t[0]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(2,3*8,t[0]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(2,4*8,t[0]%1000/100 +0x30);//
OLED_DISPLAY_8x16(2,5*8,t[0]%100/10 +0x30);//
OLED_DISPLAY_8x16(2,6*8,t[0]%10 +0x30);//
OLED_DISPLAY_8x16(2,11*8,t[3]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(2,12*8,t[3]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(2,13*8,t[3]%1000/100 +0x30);//
OLED_DISPLAY_8x16(2,14*8,t[3]%100/10 +0x30);//
OLED_DISPLAY_8x16(2,15*8,t[3]%10 +0x30);//
OLED_DISPLAY_8x16(4,2*8,t[1]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(4,3*8,t[1]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(4,4*8,t[1]%1000/100 +0x30);//
OLED_DISPLAY_8x16(4,5*8,t[1]%100/10 +0x30);//
OLED_DISPLAY_8x16(4,6*8,t[1]%10 +0x30);//
OLED_DISPLAY_8x16(4,11*8,t[4]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(4,12*8,t[4]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(4,13*8,t[4]%1000/100 +0x30);//
OLED_DISPLAY_8x16(4,14*8,t[4]%100/10 +0x30);//
OLED_DISPLAY_8x16(4,15*8,t[4]%10 +0x30);//
OLED_DISPLAY_8x16(6,2*8,t[2]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(6,3*8,t[2]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(6,4*8,t[2]%1000/100 +0x30);//
OLED_DISPLAY_8x16(6,5*8,t[2]%100/10 +0x30);//
OLED_DISPLAY_8x16(6,6*8,t[2]%10 +0x30);//
OLED_DISPLAY_8x16(6,11*8,t[5]/10000 +0x30);//顯示
OLED_DISPLAY_8x16(6,12*8,t[5]%10000/1000 +0x30);//顯示
OLED_DISPLAY_8x16(6,13*8,t[5]%1000/100 +0x30);//
OLED_DISPLAY_8x16(6,14*8,t[5]%100/10 +0x30);//
OLED_DISPLAY_8x16(6,15*8,t[5]%10 +0x30);//
for(a=0;a<6;a++)
{ printf("%d////", t[a]);
delay_ms(200); //延時(shí)(決定刷新速度)
}
}
}
【變量定義】
u32 a; //定義32位無(wú)符號(hào)變量a
u16 a; //定義16位無(wú)符號(hào)變量a
u8 a; //定義8位無(wú)符號(hào)變量a
vu32 a; //定義易變的32位無(wú)符號(hào)變量a
vu16 a; //定義易變的 16位無(wú)符號(hào)變量a
vu8 a; //定義易變的 8位無(wú)符號(hào)變量a
uc32 a; //定義只讀的32位無(wú)符號(hào)變量a
uc16 a; //定義只讀 的16位無(wú)符號(hào)變量a
uc8 a; //定義只讀 的8位無(wú)符號(hào)變量a
#define ONE 1 //宏定義
delay_us(1); //延時(shí)1微秒
delay_ms(1); //延時(shí)1毫秒
delay_s(1); //延時(shí)1秒
GPIO_WriteBit(LEDPORT,LED1,(BitAction)(1)); //LED控制
*/
|
|