October 1st, 2015

Костерок

Программный I2C для STM8

Я еще где-то в июне подготовил код софтового I2C, но только вчера вечером руки дошли протестировать на железе. С таймингами я, конечно, намучился, а еще хуже было с порядком изменения состояния ног SDA и SCL (т.к. между последовательными сменами состояния возникали интервалы до 0.5мкс — все-таки, у меня еще и прерывания разные работают, то иногда получалось так, что в конце переданного байта "самопроизвольно" возникал STOP).
Но вроде бы со всем разобрался, выложил код на примере работы с SI7005. Кстати, заметил неплохую "очепятку": почему-то я везде humidity называл pressure (то ли забыл, что датчик не давление, а влажность измеряет, то ли с другим его поначалу перепутал). В этом коде все исправлено: команда 'H' запускает измерение влажности (результат выводится в виде H*10), а команда 'T' измеряет температуру (результат выводится в виде T*100).

Теперь при желании можно на основе "вольтметра" на STM8S003 сделать термометр-гигрометр.
promo eddy_em august 17, 2019 12:33 3
Buy for 10 tokens
Юра намедни напечатал корпус для хронометра. Для первого блина получилось неплохо: И еще немного фотографий: