i2c память к AVR через TWI
TWI - это "железная" реализация интерфейса i2c, т.е. она привязана к определенным ногам МК и не вовсех чипах в наличии.
Я использовал софтверный вариант - он позволяет использовать любые ножки МК, применим для любых AVR'ов.
За основу я взял исходник примера КодВижен для датчика температуры LM75. И переделал код под память: 24c128 24с256 24с512. Исходники на 20 странице предыдущей части темы.
Проблема только в том что частота клоков на линии SCL всего 42 кГц хотя память при 5 вольтах позволяет работать при клоке до 1 МГц. Устраняется она выкидыванием цикла задержки из готового ассемблерного кода. Я достиг скорости 400 кГц при кварце 8 МГц.
В имэйдж крафт сразу происходит компиляция примерно на 400 кГц.
Но по деньгам выгодней применять дата флэш at45db161b стоит 6 баксов а памяти 2 Мбайта.
\\\\\\
Прицепил непровереный код Си для TWI