資源簡(jiǎn)介
ADI公司生產(chǎn)的三軸數(shù)字加速度計(jì)ADXL345基于51單片機(jī)的例程,用液晶屏1602顯示三軸數(shù)字加速度。

代碼片段和文件信息
//***************************************
//?GY-29?ADXL345?IIC測(cè)試程序
//?使用單片機(jī)STC89C51?
//?晶振:11.0592M
//?顯示:LCD1602
//?編譯環(huán)境?Keil?uVision2
//?參考宏晶網(wǎng)站24c04通信程序
//?時(shí)間:2011年3月1日
//?QQ:531389319
//****************************************
#include??
#include??????//Keil?library??
#include?????//Keil?library
#include??
#define???uchar?unsigned?char
#define???uint?unsigned?int
#define???DataPort?P2????//LCD1602數(shù)據(jù)端口
sbit ??SCL=P1^0;??????//IIC時(shí)鐘引腳定義
sbit? ??SDA=P1^1;??????//IIC數(shù)據(jù)引腳定義
sbit??????LCM_RS=P0^5;???//LCD1602命令端口
sbit??????LCM_RW=P0^6;???//LCD1602命令端口
sbit??????LCM_EN=P0^7;???//LCD1602命令端口?
#define SlaveAddress???0xA6 ??//定義器件在IIC總線中的從地址根據(jù)ALT??ADDRESS地址引腳不同修改
??????????????????????????????//ALT??ADDRESS引腳接地時(shí)地址為0xA6,接電源時(shí)地址為0x3A
typedef?unsigned?char??BYTE;
typedef?unsigned?short?WORD;
BYTE?BUF[8];?????????????????????????//接收數(shù)據(jù)緩存區(qū)??????
uchar?geshibaiqianwan;???????????//顯示變量
int??dis_data;???????????????????????//變量
void?delay(unsigned?int?k);
void?InitLcd();??????????????????????//初始化lcd1602
void?Init_ADXL345(void);?????????????//初始化ADXL345
void?WriteDataLCM(uchar?dataW);
void?WriteCommandLCM(uchar?CMDuchar?Attribc);
void?DisplayOneChar(uchar?Xuchar?Yuchar?DData);
void?conversion(uint?temp_data);
void??Single_Write_ADXL345(uchar?REG_Addressuchar?REG_data);???//單個(gè)寫入數(shù)據(jù)
uchar?Single_Read_ADXL345(uchar?REG_Address);???????????????????//單個(gè)讀取內(nèi)部寄存器數(shù)據(jù)
void??Multiple_Read_ADXL345();??????????????????????????????????//連續(xù)的讀取內(nèi)部寄存器數(shù)據(jù)
//------------------------------------
void?Delay5us();
void?Delay5ms();
void?ADXL345_Start();
void?ADXL345_Stop();
void?ADXL345_SendACK(bit?ack);
bit??ADXL345_RecvACK();
void?ADXL345_SendByte(BYTE?dat);
BYTE?ADXL345_RecvByte();
void?ADXL345_ReadPage();
void?ADXL345_WritePage();
//-----------------------------------
//*********************************************************
//void?conversion(uint?temp_data)??
//{??
//????wan=temp_data/10000+0x30?;
//????temp_data=temp_data%10000;???//取余運(yùn)算
// qian=temp_data/1000+0x30?;
//????temp_data=temp_data%1000;????//取余運(yùn)算
//????bai=temp_data/100+0x30???;
//????temp_data=temp_data%100;?????//取余運(yùn)算
//????shi=temp_data/10+0x30????;
//????temp_data=temp_data%10;??????//取余運(yùn)算
//????ge=temp_data+0x30;?
//}
void?conversion(uint?temp_data)??
{??
????temp_data=temp_data;
bai=temp_data/10+0x30;
????temp_data=temp_data%10;????//取余運(yùn)算
????shi=temp_data+0x30?;
ge=0x30;
} ??
/*******************************/
void?delay(unsigned?int?k)
{
unsigned?int?ij;
for(i=0;i {
for(j=0;j<121;j++)
{;}}
}
/*******************************/
void?WaitForEnable(void)
{
DataPort=0xff;
LCM_RS=0;LCM_RW=1;_nop_();
LCM_EN=1;_nop_();_nop_();
while(DataPort&0x80);
LCM_EN=0;
}
/*******************************/
void?WriteCommandLCM(uchar?CMDuchar?Attribc)
{
if(Attribc)WaitForEnable();
LCM_RS=0;LCM_RW=0;_nop_();
DataP
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????20912??2013-07-25?10:59??ADXL345\ADXL345
?????文件???????8869??2013-07-25?10:59??ADXL345\ADXL345.hex
?????文件?????????44??2013-07-25?10:59??ADXL345\ADXL345.lnp
?????文件??????25594??2013-07-25?10:59??ADXL345\ADXL345.M51
?????文件????????172??2013-07-26?19:12??ADXL345\ADXL345.plg
????.......?????73023??2013-07-26?20:36??ADXL345\ADXL345.uvopt
?????文件??????13399??2013-07-19?12:23??ADXL345\ADXL345.uvproj
????.......?????73007??2013-07-26?00:08??ADXL345\ADXL345_uvopt.bak
?????文件??????????0??2013-07-19?09:36??ADXL345\ADXL345_uvproj.bak
?????文件????????965??2009-05-07?14:38??ADXL345\INTRINS.H
?????文件??????14013??2013-07-19?16:31??ADXL345\main.c
?????文件??????23321??2013-07-25?10:59??ADXL345\main.LST
?????文件??????21079??2013-07-25?10:59??ADXL345\main.OBJ
?????文件???????1193??2009-05-07?14:38??ADXL345\MATH.H
?????文件???????1689??2009-05-07?14:38??ADXL345\REG51.H
?????文件???????6376??2009-05-07?14:37??ADXL345\STARTUP.A51
?????文件??????14057??2013-07-25?10:59??ADXL345\STARTUP.LST
?????文件????????758??2013-07-25?10:59??ADXL345\STARTUP.OBJ
?????文件???????1040??2009-05-07?14:38??ADXL345\STDIO.H
?????目錄??????????0??2013-07-26?20:36??ADXL345
-----------?---------??----------?-----??----
???????????????299511????????????????????20
評(píng)論
共有 條評(píng)論