资源简介

ADI公司生产的三轴数字加速度计ADXL345基于51单片机的例程,用液晶屏1602显示三轴数字加速度。

资源截图

代码片段和文件信息

//***************************************
// GY-29 ADXL345 IIC测试程序
// 使用单片机STC89C51 
// 晶振:11.0592M
// 显示:LCD1602
// 编译环境 Keil uVision2
// 参考宏晶网站24c04通信程序
// 时间: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数据端口
sbit   SCL=P1^0;      //IIC时钟引脚定义
sbit    SDA=P1^1;      //IIC数据引脚定义
sbit      LCM_RS=P0^5;   //LCD1602命令端口
sbit      LCM_RW=P0^6;   //LCD1602命令端口
sbit      LCM_EN=P0^7;   //LCD1602命令端口 

#define SlaveAddress   0xA6   //定义器件在IIC总线中的从地址根据ALT  ADDRESS地址引脚不同修改
                              //ALT  ADDRESS引脚接地时地址为0xA6,接电源时地址为0x3A
typedef unsigned char  BYTE;
typedef unsigned short WORD;

BYTE BUF[8];                         //接收数据缓存区      
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);   //单个写入数据
uchar Single_Read_ADXL345(uchar REG_Address);                   //单个读取内部寄存器数据
void  Multiple_Read_ADXL345();                                  //连续的读取内部寄存器数据
//------------------------------------
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;   //取余运算
// qian=temp_data/1000+0x30 ;
//    temp_data=temp_data%1000;    //取余运算
//    bai=temp_data/100+0x30   ;
//    temp_data=temp_data%100;     //取余运算
//    shi=temp_data/10+0x30    ;
//    temp_data=temp_data%10;      //取余运算
//    ge=temp_data+0x30; 
//}

void conversion(uint temp_data)  
{  
    temp_data=temp_data;
bai=temp_data/10+0x30;
    temp_data=temp_data%10;    //取余运算
    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

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      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


评论

共有 条评论