eddy_em: (Default)
[personal profile] eddy_em
Решил себе сканер шины I2C сделать. Штука совсем простая: можно посмотреть, на каких адресах есть железяки (я только 7-битную адресацию реализую, т.к. 10-битных устройств мне пока не попадалось). Потом можно установить, с каким адресом работать, и читать содержимое регистров (можно скопом до 128 байт за присест) или изменять его (по одному байту за раз).
Собираюсь реализовать интерфейс для BMP180, воткнул его и запустил скан. Получил:
Scan mode
0x77 (119) - found device
Scan ends

Дальше решил просто посмотреть содержимое регистров. До 0x7f (включительно) нули, а вот дальше уже всякое разное добро находится. Причем, документированы только регистры, начиная с 0xAA (170), а что там до них — одному производителю известно. Первые 32 байта дублируются (т.е. сначала они идут с адреса 0x80, а потом — с 0xA0). С 0xC0 идут в основном нули, а с 0xF9 опять идет кусок того же, с чего начинается 0x80 и 0xA0.

Что до даташита на BMP180, измерения здесь тоже через одно место проводятся (но еще и данные температуры и давления хранятся в одних и тех же регистрах!). И формула коррекции давления опять похожа на заклинание для вызова дьявола!
This account has disabled anonymous posting.
If you don't have an account you can create one now.
HTML doesn't work in the subject.
More info about formatting

If you are unable to use this captcha for any reason, please contact us by email at support@dreamwidth.org

October 2025

S M T W T F S
   1234
567 89 1011
121314 15161718
19202122232425
2627 28293031 

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Feb. 25th, 2026 05:36 am
Powered by Dreamwidth Studios