- Код: Выделить всё • Развернуть
//This is a list of some of the registers available on the ADXL345.
//To learn more about these and the rest of the registers on the ADXL345, read the datasheet!
char POWER_CTL = 0x2D; //Power Control Register
char DATA_FORMAT = 0x31;
char DATAX0 = 0x32; //X-Axis Data 0
char DATAX1 = 0x33; //X-Axis Data 1
char DATAY0 = 0x34; //Y-Axis Data 0
char DATAY1 = 0x35; //Y-Axis Data 1
char DATAZ0 = 0x36; //Z-Axis Data 0
char DATAZ1 = 0x37; //Z-Axis Data 1
Зачем это объявлено переменными? Это должны быть дефайны.
- Код: Выделить всё • Развернуть
#define MAX_SAMPLES 550
byte lowbyte_x[MAX_SAMPLES], highbyte_x[MAX_SAMPLES];
byte zero[MAX_SAMPLES];
Вот тут у тебя 1650 байт только. Нахрена это?
Добавлено спустя 6 минут 4 секунды:Акелла писал(а):dccharacter писал(а):Вот я один тут дурак и не понимаю, как одновременно можно моргать диодами как положено и притворяться мертвым?
Прочитай что я написал еще разок, не через слово, а все по порядку.
я написал загружал блинк скетч = моргает, ногами дрыгает все отлично.
потом я загрузил тестовый скетч для ADXL, все чудно работает, данные с акселя идут.
потом я загружаю скетч для балансировки, и ТУТ дуня притворяется мертвой.
ПОнимаешь, ты работаешь над программно-аппаратным комплексом. Комплексом. Ты залил блин в дуню, проверил, все мегает. Это означает только то, что дуня не совсем мертвая. Проблему ты не локализовал. Ты не убедился, что у тебя не выгорели каскады, что ты в проводах не напутал и т.д.
После этого ты цепляешь аксель и заливаешь тестовый скетч. И видишь данные. Теперь ты убедился, что с проводами все ОК и что связка дуня-аксель работает ОК.
И программа Несенина работает на другом железе.
Не работает связка программы и твоего железа. Почему? Возможно по миллиону причин. Ты перенес программу на другое железо. То, что светодиод у тебя мигал в прошлой жизни не дает тебе никакого знания кроме того, что железо живое. Программа уже другая. Железо конфигурится в другой программе. Косяки могут быть где угодно. Так что не бычь, а учись локализовывать проблему дальше. Начал правильно, просто до конца не пошел. Повезло, что нашел косяк раньше.
Добавлено спустя 19 минут 23 секунды:Ой, блин, оно же как DSO работает у тебя
Печалька.
В общем, Акелла, измени вот эту строчку:
#define MAX_SAMPLES 550
на
#define MAX_SAMPLES 300
и все заработает