FLASH пам'яті, доступ в якості MASTER-а до SLAVE-пристроям на шинах I2C і SPI.
При обробці команд MODBUS з виходом на шину I2C в якості MASTER-а мікроконтролер дотримується правил роботи з мультімастерной шиною, не втручаючись в В«чужіВ» обміни.
Команди, що приходять по протоколу MODBUS, для роботи з внутрішніми ресурсами, використовують пряму адресацію ресурсів мікроконтролера.
У мікроконтролері для роботи з RSxxx відведено буфер 256 байт, що дозволяє працювати з пакетами даних до 249 байт. При прийомі і відправці пакетів автоматично проводиться підрахунок і перевірка двох байтів CRC16. p align="justify"> По шині I2C мікроконтроллер доступний і в якості SLAVE-пристрої. При цьому, як і прийнято, перший байт пакета розцінюється як адреса I2C-пристрої та ознака читання/запису. Другий байт при записі інтерпретується як адреса комірки всередині мікроконтролера. p align="justify"> Для повного доступу до всіх ресурсів контролера по шині I2C прийнята сторінкова адресація.
Так, при зверненні до осередків модуля з адресами 0 ... 7Fh, забезпечується доступ до RAM з адресами 0 ... 7Fh.
При зверненні до осередків 80 ... 0FFh забезпечується доступ до однієї з сторінок спільного простору RAM розміром 128 байт.
Номер підставляється сторінки лежить у клітинці RAM 51h. Якщо номер станиці = 0 (за замовчуванням), то буде підставлена ​​сторінка з SFR-регістрами мікроконтролера. Це регістри спеціальних функцій, вони повністю визначають режими роботи мікроконтролера. При зверненні до відповідних регістрів SFR користувач може записати/прочитати клітинку EEPROM, прочитати/стерти/записати програмну FLASH пам'ять. p align="justify"> Вищеописані функції забезпечує резидентна програма записана в мікроконтролер.
Резидентна програма використовує:
+256 Байт RAM -> 50h ... 7Fh (службові комірки) +500 h ... 5FFh (буфер MODBUS) + (300h. .. 3EFh (при роботі з MicroLan)) p>
Байт EEPROM -> 0F8h ... 0FFh (зберігання адрес MODBUS та I2C, початкові установки)
кБайт FLASH -> 0 ... 1FFFh (сама програма), (системний час), (MODBUS), (I2C).
Користувачеві вигоди:
(-240 при роботі з MicroLan) Байт RAM -> 0 ... 4Fh + 80h ... 4FFh,
Байт EEPROM -> 0 ... 0F8h,
кБайт FLASH -> 2000h ... 7FFFh. (RAM 0F80h ... 0FFFh) - тобто всі ресурси, що залишилися.
Користувач може використовувати всі вільні ресурси для розміщення своїх програм. Передача управління в програми користувача здійснюється установкою відповідного біта в регістрі користувача RAM 50h. p align="justify"> При подачі живлення в регістр користувача заноситься значення з комірки EEPROM 0FCh, що дозволяє користувачеві, при бажанні, відразу передати управлінн...