У меня есть приложение на плате Parallax BASIC Stamp, которое читает текстовые команды и выполняет тестовые примеры на основе команд. Один тестовый пример, который отправляет данные через шину SPI и читает из шины SPI, дает сбой, в зависимости от скорости передачи текста DEBUGIN.
Плата Stamp Board подключена к ПК (четырехъядерный процессор 2+ ГГц) через последовательный порт на скорости 19200 бод.
Когда я использую BASIC Stamp Terminal или Hyper Terminal для отправки команд на Stamp Board, тест проходит. Когда я отправляю те же команды через приложение C#, тест завершается неудачно. Основное отличие заключается в скорости пакетной передачи, с которой текст отправляется на доску для штампов.
Люди отправляют текст медленнее, чем компьютеры (приложение). При использовании Hyper Terminal один символ отправляется со скоростью 19200 бод. Приложение отправляет 8 символов со скоростью 19200 бод без пауз между символами.
Я ищу объяснение того, как оператор DEBUGIN (ввод через последовательный порт) влияет на команды SHIFTIN или SHIFTOUT, или если кто-нибудь знает, как решить эту проблему.
К сожалению, скорость передачи команды DEBUGIN изменить нельзя. Альтернативой является использование пользовательской версии (включая преобразование текста в числа) с использованием команды последовательного порта на более низкой скорости (которая использует дополнительное ценное пространство, которого в моем проекте мало).
Если публикация на StackEchange является неправильным форумом, выполните миграцию и укажите причину переноса.