Отпочковано от Радио-86РК на SRAM 128K Alpha (2014) & Beta (2024) [17]Вообще WizNet можно использовать в режиме с косвенной адресацией, подцепив вместо дополнительного ВВ5 в разъём X3 (9xxx) - там как раз 4 ячейки адресуются:
Для пущей логичности адреса можно перевернуть (инвертировав A0 и A1):
Тогда оно будет соответствовать квазидисковому интерфейсу что по #Axxx!
Адресное пространство W5100 имеет дырки:
Когда в 2016 году я начал пилить
интернет для TS2068 (который потом превратился в
SprinterNet для Спринтера) я в эти дырки планировал воткнуть часы реального времени - в этот раз можно таки это сделать, просто параллельно визнету надо поставить регистры адреса, которые будут сохранять записываемый адрес для дырок, чтобы другие части схемы могли на них реагировать помимо визнета (правда автоинкремент по понятным причинам в этих дырках работать не будет).
Соответственно, косвенные адреса можно расположить таким образом:
В CMOS-памяти RTC может храниться MAC-адрес и локальные настройки сети, а может быть лучше сделать как планировалось в спринтернете - MAC-адрес прошит в защищённую область SPI EEPROM, который также используется для хранений куков (ну и опционально SD-карточку можно подцепить через тот же SPI-интерфейс). Да и RTC по сути ненужен, если есть интернет - тот же
sprinternet.io может выдать текущее время по гринвичу. Однако каждую секунду ведь не будешь обращаться к интернету - для этого и нужен RTC, чтобы можно было его дёргать так часто, как нужно, а интернет можно использовать для установки точного времени в самом начале работы (при необходимости).
P.S. Ха - можно ведь там даже ROM с программой разместить для обычных РК-шек
Люди будут втыкать эту платку в разъём квазидиска #AXXX (или даже вместо второго ВВ55) и с помощью директивы R вычитать стартовую программку-инициализатор, которая затем всё будет делать, выходя в интернет, и даже программки РК-шные можно было бы читать из интернета директивой R, копируя байты из RX memory WizNET! И часы реального времени лучше в ту же дырку воткнуть - скажем по адресу #1000 пусть будет DS12C887+ (или DS1687-5+), тогда можно одним дешифратором 3:8 обойтись и несколькими вентилями И
P.P.S. Хотя у этих RTC шина мультиплексированная - сначала надо адрес выставить дёрнув ALE, а потом только данные читать-писать...