سلام
من این ای سی رو تهیه کردم و تونستم باهاش از طریق SPI و I2C ارتباط برقرار کنم ( رجیسترهاش رو بخونم و بنویسم )
ولی وقتی میام مقدار 3 تا محور رو بخونم نمیدونم چرا همش ثابت اعدادش و تغییر نمیکنه
این کد بخش Init کردن ای سی هست
با این کد مقدار سه تا محور ها رو میخونم ...
من این ای سی رو تهیه کردم و تونستم باهاش از طریق SPI و I2C ارتباط برقرار کنم ( رجیسترهاش رو بخونم و بنویسم )
ولی وقتی میام مقدار 3 تا محور رو بخونم نمیدونم چرا همش ثابت اعدادش و تغییر نمیکنه
این کد بخش Init کردن ای سی هست
کد:
[left] if( ADXL_Read( DEVID ) !=DEVICEID ) { lcd_clear(); lcd_puts("Device Not Found"); return 0; } ADXL_Write( POWER_CTL, 0x00 ); delay_ms(200); ADXL_Write( DATA_FORMAT, 0x0B ); ADXL_Write( BW_RATE, datarate ); ADXL_Write( INT_ENABLE, 0x80 ); ADXL_Write( FIFO_CTL, 0x00 ); ADXL_Write( THRESH_INACT, 0x00 ); ADXL_Write( TIME_ACT, 0x00 ); ADXL_Write( ACT_INACT_CTL, 0x00 ); ADXL_Write( POWER_CTL, 0x08 ); delay_ms(200);[/left]
کد:
[left] ADXL_CS=CLR; SoftSpi(0xC0|DATAX0); dataout[0]=SoftSpi(0x00); dataout[1]=SoftSpi(0x00); dataout[2]=SoftSpi(0x00); dataout[3]=SoftSpi(0x00); dataout[4]=SoftSpi(0x00); dataout[5]=SoftSpi(0x00); ADXL_CS=SET[/left];