• 大小: 1.62MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-14
  • 语言: 其他
  • 标签: MMA7361  

资源简介

基于mma7361加速度传感器的测角度51单片机程序,包括MMA7361的全套资料,内有详细讲解,看完后基本上都能十分了解MMA7361的用途和使用方法

资源截图

代码片段和文件信息

/**************************************************************************************
龙丘MMA7260三轴加速度模块测试
Designed by Chiu Sir
E-mail:chiusir@163.com
软件版本:V1.1
最后更新:2009年9月27日
相关信息参考下列地址:
网站:  http://www.lqist.cn
淘宝店:http://shop36265907.taobao.com
------------------------------------
ICCAVR

1.X--AD0;
2.Y--AD1;
3.Z--AD2;
4.SL--PB.0;
5.3.3--单片机的AD参考电压;
6.默认量程:1.5g.  
*/

#include 
#define MMA7260StartWork() (PORTB|=0X01) 

/*延时子程序*/
void delayms(int time)
{
 int i;
 for(;time>0;time--)
  for(i=0;i<1000;i++);
}

/*ADC采样函数,采样第7通道信号,采样分辨率256*/
void ADC_init() 
{
ADMUX=0x27; /*基准外接、左对齐、通道7*/
SREG=0x80;
ADCSRA=0xCA; /*使能、开启、4分频*/
}

/*ADC采样函数,采样第7通道信号,采样分辨率256*/
unsigned char ReadAD(unsigned char ch) {

unsigned char i;

ADMUX = 0x20|ch; /*基准AVCC、左对齐、通道7*/
ADCSRA = 0xC2; /*使能、开启、4分频*/
while(!(ADCSRA & (1 << ADIF))); /*等待*/
i = ADCH;
ADCSRA &= ~(1 << ADIF); /*清标志*/
ADCSRA &= ~(1 << ADEN); /*关闭转换*/

return i;
}
/*端口初始化*/
void port_init() 
{
  DDRB = 0xFF;
  
}

/*串口初始化*/
void uart_init()
{
 UCSRA=0x02; //异步正常模式
 UCSRB=0x18; //允许发送接受中断和使能
 UCSRC=0x06; //8位数据
 UBRRH=0x00;
 UBRRL=12;   //波特率位9600
}
void put_c(unsigned char c) 
{
while( !(UCSRA & (1< UDR=c;
}

void putstr(unsigned char *ptr)
{
while (*ptr)
{
put_c(*ptr++);
}
put_c(0x0D);   //换行
//put_c(0x0A);  //回车
}

unsigned char get_c(void)
{ while(!(UCSRA&(1< return UDR;
}
/***************************************************
  把0--255的数值转化为3位字符串格式
****************************************************/
void Byte2Str3(char zifu[]unsigned char valunsigned char StartPtr)
{
  char characters[11]=“0123456789“;   
  unsigned char tv=0;
  
  tv=val/100;
  zifu[StartPtr++] = characters[tv];
  tv=(val%100)/10;
  zifu[StartPtr++] = characters[tv];
  tv=val%10;
  zifu[StartPtr] = characters[tv];
  //zifu[3] = ‘\0‘;
  return;
}






void main(void) 
{
  char txtbuf[17]=“\n ADC Val:  “;  
unsigned char adbuf;
 
ADC_init();            /*AD初始化*/
putstr(“\n MMA7260 starts working!\n“); 
MMA7260StartWork();//MMA7260开始工作
while(1)

    //ADC
adbuf=ReadAD(0); //X AXIS
  Byte2Str3(txtbufadbuf11);     
        putstr(txtbuf);

adbuf=ReadAD(1); //Y AXIS
  Byte2Str3(txtbufadbuf11);     
        putstr(txtbuf); 

adbuf=ReadAD(2); //Z AXIS
  Byte2Str3(txtbufadbuf11);     
        putstr(txtbuf);

delayms(300); 
}
}

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

     文件         38  2009-09-27 23:09  MMA7361资料整理\7260例程\MMA7260AVR例程\main.dp2

     文件      21150  2009-09-27 23:09  MMA7361资料整理\7260例程\MMA7260AVR例程\main.lis

     文件       5266  2009-09-27 23:09  MMA7361资料整理\7260例程\MMA7260AVR例程\main.o

     文件       9028  2009-09-27 23:09  MMA7361资料整理\7260例程\MMA7260AVR例程\main.s

     文件       2252  2009-09-27 23:08  MMA7361资料整理\7260例程\MMA7260AVR例程\main._c

     文件       2706  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.c

     文件       3731  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.cof

     文件       1963  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.dbg

     文件         45  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.dp2

     文件       1953  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.hex

     文件      22061  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.lis

     文件         16  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.lk

     文件      14467  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.lst

     文件        565  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.mak

     文件       2609  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.mp

     文件       5333  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.o

     文件        999  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.prj

     文件       9651  2009-09-28 20:47  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test.s

     文件         48  2009-10-05 13:00  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260TEST.SRC

     文件       2264  2009-09-27 23:09  MMA7361资料整理\7260例程\MMA7260AVR例程\MMA7260test._c

     文件      32342  2009-11-29 22:51  MMA7361资料整理\7260例程\MMA7260AVR例程.rar

     文件       3814  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260main.c

     文件       8216  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260main.LST

     文件       8855  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260main.OBJ

     文件         41  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260main.__i

     文件       8400  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260test

     文件         70  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260test.lnp

     文件      13233  2009-09-28 20:35  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260test.M51

     文件       1158  2010-01-17 21:07  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260test.Opt

     文件        190  2010-01-17 21:07  MMA7361资料整理\7260例程\MMA7260C51例程\MMA7260test.plg

............此处省略101个文件信息

评论

共有 条评论