С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ребят, я не фидошник, но кое-какие фразы из темы мне знакомы. Помещаю ccылку на торрент диска cdrom-1994-11-walnutcreek-cpm , в котором нашел пару BBS и почтовых приблуд. Может быть кому и полезно будет...
https://archive.org/download/cdrom-1...rchive.torrent
Последний раз редактировалось rw6hrm; 08.11.2017 в 23:12.
Oleg N. Cher(25.11.2022), Максагор(25.11.2022)
Главное - протокол сделать. Остальное проще.
Разобрался с некими глюками UART. сейчас ваяю отладку через SLIP. без неё никуда
Вот такое API получается пока что. zxesp_api.pdf
Интересно, сильно ли будет тормозякать.
А почему должно тормозить? На стороне Z80 всяко не медленнее скорости порта будет работать, 32-битных типов нет (они основной тормоз если использовать С на Z80). А вот на стороне ESP - ХЗ, не имею опыта с ней.
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
Там такая неувязка получается.
При скорости 115200, порт выдаёт примерно 10Кбайт в секунду.
То есть за прерывание получается 10000/50 = 200 байт.
Насколько я знаю, буфера у RS232 в спеке - то ли по 16 байт то ли вообще их нет.
То есть не получится прерывание копить буфер, а потом быстро считать. Надо постоянно ждать когда придёт байт.
За время ожидания байта проходит 3500 000 / 10 000 = 350 тактов. Не так уж и много в общем-то. Но всё равно - холостое ожидание.
Если бы буфера были по 256 байт - можно было бы куда эффективнее обмениваться с устройствами.
Просто бы по IM2 повешал опрос буферов - есть данные, считал по быстрому - и дальше что-то делать. Но увы. И прерываний от COM-порта тоже нету вроде.
Но что есть то есть. Пока делаю протокол со стороны ESP8266, как задышит - попробую и на ZX сваять ответную часть.
Последний раз редактировалось SfS; 13.11.2017 в 12:07.
У ESP есть еще регистр SPI, и я где-то видел как к нему подключали SD-карту. А можно ли использовать его для обмена с хостом чтобы считать уже пришедший и хранящийся в буфере ESP пакет? Тогда пакет можно будет прочитать быстрее, в рамках одного прерывания, и не надо будет сооружать RS-232 (он есть не у всех, например у меня пока под рукой нет ни одного компа на Z80 с RS-232). Но надо будет соорудить контроллер SPI для Z80. И Мастером должен быть хост а не ESP (возможно ли такое?)
- - - Добавлено - - -
А как ты такую же задачу с RS-232 решаешь в реализации на PC?
- - - Добавлено - - -
С другой стороны, пускай обработчик работает по прерыванию, пока пакета нет, он отдает время шедулеру (выходит из своей процедуры), а как пакет пришел - делает DI и начинает вычитывать пакет пока не считает его весь, затем EI и далее по цепочке. Да, часть прерываний, пришедших за время вычитки пакета, будет "проглатываться" - ну и что? И опять же, не все пакеты максимальной длины, значительная часть короче: проглотится не так много прерываний, а при массовом обмене большими данными ну пускай система будет притормаживать остальные задачи (всегда чем то приходится платить).
Лучше сделать и жалеть, чем не сделать и жалеть.
Некоторые из моих поделок тут: https://github.com/serge-404
RS232 есть на мультикартах всех. У меня на пентеве и на фениксе оно тоже есть.
Я про spi тоже думал. Но первый вариант если оно вообще взлетит будет на rs232.
Spi в esp еще не пробовал.
Мастером в любом случае zx будет.
На пц все проще. Там на уровне ос и вызова select все разруливается. Скорости хватает. Прерывания естл от rs232.
Да я пока вообще не морочусь. Просто отметил, что будет проблемка простоя в будущем. В принципе если будет все работать под rs232 то и под spi можно переделать.
- - - Добавлено - - -
RS232 есть на мультикартах всех. У меня на пентеве и на фениксе оно тоже есть.
Я про spi тоже думал. Но первый вариант если оно вообще взлетит будет на rs232.
Spi в esp еще не пробовал.
Мастером в любом случае zx будет.
На пц все проще. Там на уровне ос и вызова select все разруливается. Скорости хватает. Прерывания естл от rs232.
Да я пока вообще не морочусь. Просто отметил, что будет проблемка простоя в будущем. В принципе если будет все работать под rs232 то и под spi можно переделать.
esp умеет в spi slave. тут примеры: https://github.com/esp8266/Arduino. можно например вот этот https://github.com/jsalin/esp8266_modem проект переделать под spi. единственное нужна не простейшая плата esp-01, что-то со всеми выводами.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)