Корпус хоть и многоногий, большинство выводов микросхемы не используется:

Достаточно вывести всего 8 выводов для полной работы с акселерометром adxl312 



Акселерометр может выводить информацию по двум протоколам: I2C  и по SPI

Адрес микросхемы в случае работы по I2C в шестнадцатеричной системе: 0х1D

Таким образом работая с микросхемой по шине I2C при записи байта нужно отправлять 0х3A а при приеме 0x3B

Рабочий диапазон измерений акселерометр может быть выбран из ряда: 1,5g; 3g; 6g; 12g

Выбор диапазона измерений выбирается записью в регистр по адресу 0х31


Логика работы по I2C интерфейсу:



Тестовый код для акселерометра ADX312 в Bascom-AVR


$regfile = "m8def.dat"                     'микроконтроллер ATmega8

$crystal = 8000000                         'частота работы 8МГц

'конфигурируем scl и sda пины
Config Sda = Portb.1                       ' I2C Data
Config Scl = Portb.0                       ' I2C Clock

'константы на биты чтения и записи adxl312
Const Adxl312write = &H3A                  ' бит записи
Const Adxl312read = &H3B                   ' бит чтения


Dim Data0x As Byte
Dim Data1x As Byte
Dim Data0y As Byte
Dim Data1y As Byte
Dim Data0z As Byte
Dim Data1z As Byte


Do

Gosub Adxl312

Loop


End                              'end program

Adxl312:

I2cstart                         'даем старт шине
I2cwbyte Adxl312write            'отправляем бит записи
I2cwbyte &H32                    'отправляем адрес откуда нужно считать
I2cstart                         'повторный старт
I2cwbyte Adxl312read             'отправляем бит чтения
I2crbyte Data0x , Ack            'принимаем данные для трех осей
I2crbyte Data1x , Ack
I2crbyte Data0y , Ack
I2crbyte Data1y , Ack
I2crbyte Data0z , Ack
I2crbyte Data1z , Nack           'заканчиваем прием командой nack
I2cstop                           'закрываем шину

Return


Осталось сложить байты для кождых из осей и вывести показанию любым удобным способом. По умолчанию акселерометр начинает работать в диапазоне измерений 1,5g


   EasyEDA:  бесплатный редактор схем

   ✓ Создание схем
   ✓ Возможность симуляции
   ✓ Быстрое создание печатных плат
   ✓ Интуитивно понятный интерфейс

   Нарисуй свою схему прямо сейчас!
   Изготовление печатных плат   https://easyeda.com/order
авторизация
Логин:
Пароль:
Комментарии
Минитерминал V.3.0
18.01.2017 - exersizze:
Отлично!) вопрос такой к собравшим, как точно тачскрин отрабатывает  нажатия? На...
Минитерминал V.3.0
17.01.2017 - maksut11:
Проблема решена, не пропай 2х контактов разьема на экран. Экран работает, и это ...
Минитерминал V.3.0
17.01.2017 - exersizze:
Тогда проверять внимательно все соединения, должно было заработать сразу, больше...
Минитерминал V.3.0
17.01.2017 - maksut11:
Запустил , Бибика не подключена, осцилограмма показывает что бикает. Прошил снов...
Минитерминал V.3.0
17.01.2017 - exersizze:
Прошивается только флэш. Попробуйте прошить вот этим, должен раз в секунду мигат...
Сетевой диммер 220V на микроконтроллере
17.01.2017 - exersizze:
Конденсатор не имеет большого значения, скорее всего неправильная частота работы...
Сетевой диммер 220V на микроконтроллере
16.01.2017 - Prorokzv:
Подскажите пожалуйста конденсатор С1 у вас на 0,05 мкФ, я ничего не перепутал? П...
Минитерминал V.3.0
16.01.2017 - maksut11:
Доброго времени суток.
Подскажите как можно определить жив ли прибор. Мож...
Работа с дисплеями от Nokia3310 в Bascom-AVR (продолжение)
15.01.2017 - exersizze:
Если кратко, то меняем все на что ругается компилятор.
Вот к примеру я ме...