ADXL345数据读出主程序(二)寄存器配置
0赞
发表于 2/25/2012 9:17:54 AM
阅读(5827)
/* Function Pointers for Interrupts */
typedef void (* tyVctHndlr) (void);
tyVctHndlr IRQ = (tyVctHndlr)0x0;
tyVctHndlr SWI = (tyVctHndlr)0x0;
tyVctHndlr FIQ = (tyVctHndlr)0x0;
tyVctHndlr UNDEF = (tyVctHndlr)0x0;
tyVctHndlr PABORT = (tyVctHndlr)0x0;
tyVctHndlr DABORT = (tyVctHndlr)0x0;
void IRQ_Handler (void) __irq;
void SWI_Handler (void) __irq;
void FIQ_Handler (void) __irq;
void Undef_Handler (void) __irq;
void PAbt_Handler (void) __irq;
void DAbt_Handler (void) __irq;
void IRQ_Handler(void) __irq
{
if ( *IRQ !=0x00)
{
IRQ();
}
}
void FIQ_Handler(void) __irq
{
if ( *FIQ !=0x00)
{
FIQ();
}
}
void SWI_Handler(void) __irq
{
if ( *SWI !=0x00)
{
SWI();
}
}
void Undef_Handler(void)__irq
{
if ( *UNDEF !=0x00)
{
UNDEF();
}
}
void PAbt_Handler(void) __irq
{
if ( *PABORT !=0x00)
{
PABORT();
}
}
void DAbt_Handler(void) __irq
{
if ( *DABORT !=0x00)
{
DABORT();
}
}
#include "main.h"
//#include "irq_arm.c"
#include "IIC.h"
uchar ge,shi,bai,qian,wan;
void conversion(unsigned int temp_data)
{
wan=temp_data/10000+'0' ;
temp_data=temp_data%10000; //取余运算
qian=temp_data/1000+'0' ;
temp_data=temp_data%1000; //取余运算
bai=temp_data/100+'0' ;
temp_data=temp_data%100; //取余运算
shi=temp_data/10+'0' ;
temp_data=temp_data%10; //取余运算
ge=temp_data+'0';
}
int main()
{
lcd_initial();
LCD_Delay(10);
Init_IIC();
while(1)
{
// km= Value_ADXL345() ;
// conversion();
disp_str(0,0,"hello STI !");
Value_ADXL345();
// disp_word(10,5,wan);
// disp_word(18,5,qian);
// disp_word(26,5,bai);
// disp_word(34,5,shi);
// disp_word(42,5,ge);
clear_screen(0);
delay(100000);
}
}
#include#include //extern int write (int file, char * ptr, int len); // Functions used to //extern int getchar (void); // to output data //extern int putchar(int); // Write character to Serial Port #include "serial.h" int main (void) { // unsigned char jchar = 0x30; char output1[13] = "Hello World\n"; // Setup tx & rx pins on P1.0 and P1.1 GP1CON = 0x011; // Start setting up UART at 9600bps COMCON0 = 0x080; // Setting DLAB COMDIV0 = 0x088; // Setting DIV0 and DIV1 to DL calculated COMDIV1 = 0x000; COMCON0 = 0x003; // Clearing DLAB GP4DAT = 0x04000000; // P4.2 configured as an output. LED is turned on while(1) { GP4DAT ^= 0x00040000; // Complement P4.2 write(0,output1,13); // Output Data // jchar = getchar(); // RX Data, Single Byte // write(0,&jchar,1); // Output Rxed Data } }
/***********************************************************************/ /* */ /* SERIAL.C: Low Level Serial Routines */ /* */ /***********************************************************************/ #include/* ADuC7024 definitions */ #include "serial.h" #define CR 0x0D int putchar(int ch) { /* Write character to Serial Port */ if (ch == '\n') { while(!(0x020==(COMSTA0 & 0x020))) {} COMTX = CR; /* output CR */ } while(!(0x020==(COMSTA0 & 0x020))) {} return (COMTX = ch); } int getchar (void) { /* Read character from Serial Port */ while(!(0x01==(COMSTA0 & 0x01))) {} return (COMRX); } int write (int file, char * ptr, int len) { int i; for (i = 0; i < len; i++) putchar (*ptr++); return len; }
