Метод .setdata (ранее .set)
| Назначение: | Записывает данные в EEPROM. |
| Синтаксис: | stor.setdata(byref datatoset as string, startaddr as word) as byte |
| Возвращает: | Фактическое число байтов, записанных в EEPROM. |
| См. также: | Объект stor., stor.getdata, stor.size |
| Параметр | Описание |
| datatoset | Данные для записи в EEPROM. |
| startaddr | Начальный адрес в EEPROM, с которого будут сохранены данные (адреса отсчитываются с 1; если задать 0, он будет воспринят как 1). |
Подробности
Операция выполнена успешно, если значение, возвращённое методом, равно длине строки datatoset. Если это не так, запись прошла (частично) неудачно, и причин может быть две: физический сбой EEPROM или недопустимый startaddr (слишком близко к концу памяти, чтобы сохранить всю строку).
Учтите: при выполнении stor.setdata к startaddr добавляется смещение, равное значению stor.base. Например, если stor.base возвращает 9 и вы выполняете stor.setdata("ABC",1), данные будут читаться начиная с физической ячейки EEPROM 9. Если установить stor.base в 1, EEPROM будет доступна начиная с физического адреса 1.
По умолчанию stor.base установлено так, чтобы EEPROM была доступна начиная с адреса сразу над особой областью конфигурации устройства; что именно хранится в этой области, см. в документации на платформу вашего устройства (например, для EM1000 она здесь). Установив stor.base в 1, вы открываете доступ к особой области конфигурации.
В выпуске V2 Tibbo BASIC/C этот метод пришлось переименовать из .set в .setdata. Причина в том, что точка («.»), отделяющая «stor» от «setdata», теперь «по-настоящему» входит в язык (то есть распознаётся как синтаксическая единица, а не просто часть идентификатора). Поэтому Tibbo BASIC/C видит «stor» и «set» как отдельные сущности, а «set» - зарезервированное слово, которое использовать нельзя.