Всем добрый день! Нужен ваш совет. Хочу написать небольшую программу и зашить ее в Attiny2313. Столкнулся с проблемой: по всем инструкциям (что нашел) модуль DS1307 по умолчанию нужно подключать к аналоговым пинам 4 и 5 (i2c). По распиновке, какую нашел, у Аттини есть 2 аналоговых входа 0 и 1. Распиновку брал здесь: https://www.element14.com/community...mage/2-50246-76876/ATtiny2313-PIN+MAPPING.PNG Соответственно вопрос: как мне в скетче прописать настройки подключения модуля DS1307 не к аналоговым пинам 4 и 5 а к 0 и 1?
То есть просто подключить к Attiny2313 к выводам PB5 и PB7? Код просто начинать так?: Код (C++): #include <iarduino_RTC.h> iarduino_RTC time(RTC_DS1307); Никаких дополнительных библиотек не нужно? Еще вопрос: как получить отдельно часы / минуты / секунды? В примере есть такой комментарий: // если требуется получить время в виде цифр, то можно вызвать функцию gettime() без параметра, после чего получить время из переменных // seconds секунды 0-59 // minutes минуты 0-59 // hours часы 1-12 // Hours часы 0-23 Но вот как эти переменные вызывать - не понятно
Уф.. замучился. Перепробовал разные библиотеки - все на ардуино работают, но для Attiny2313 не компилируются. Стандартная библиотека RTClib (и некоторые другие) выдает такую ошибку: TWBR = ((F_CPU / frequency) - 16) / 2; Пробовал сделать как в статье: https://forums.adafruit.com/viewtopic.php?f=45&t=83876 заменил #include <Wire.h> на: #include <TinyWireM.h> #include <USI_TWI_Master.h> но это не дало результата, выскакивает та же ошибка Все другие библиотеки, похоже, пытаются программно задействовать SPI и там тьма ошибок во время компиляции...
Тоже хотел сделать подобное, но я уперся в память 2313 -ее там очень мало. И код и бибилотеку arduino не засунуть в этот МК. ИМХО: писать по новой и без либы arduino
Попробуйте сначала "на кошечках". Arduino UNO, Nano или что там есть в наличии. А уж потом, с большим опытом, можно и к Attiny2313.