Atmel, имитирующий связь UART

Я работаю над проектом с элементами управления UART. Я пытаюсь имитировать отправку и получение сообщений через UART. UART будет подключен к приемопередатчику RS-485 в реальном мире, но я буду обеспечивать ввод/вывод через файл test.c.

В настоящее время я должен приостановить выполнение программы в симуляторе, вручную перевернуть бит и снова вернуть программу к выполнению, чтобы UART отправил около байта.

Мой вопрос к группе: могу ли я автоматически установить бит TXC для имитации успешной передачи байтов? В настоящее время я читаю документацию Atmel и расшифровываю, как настроить файл стимулов.

Это помогло бы, так как я хотел бы сделать тестирование связи более сложным, чем глубже я погружаюсь в разработку.

Спасибо, Райан


person user3826668    schedule 18.09.2014    source источник


Ответы (1)


Мне довольно сложно понять ваш английский...

установите бит TXC для имитации успешной передачи

На реальном оборудовании вы не можете установить TXC вручную.

Если вы говорите о среде моделирования, я использую http://www.nongnu.org/simulavr только для делать такого рода работы. В этом симуляторе вы просто можете добавить тестовую программу c/c++, которая работает на хосте в родном режиме хоста, и подключить смоделированный uart к симулятору, который запускает вашу программу avr.

person Klaus    schedule 18.09.2014
comment
Извиняюсь за плохой английский. Бит TXC является 6-м битом в UCSR0A (TXC0) или UCSR1A (TXC1). Это будет сигнализировать о завершении передачи в регистре, что приведет к запуску процедуры ISR. Программа simulavr, бесплатная ли она и поставляется ли с хорошей документацией/учебниками? Можно ли добавить его в AtmelStudio 6 через плагин? - person user3826668; 18.09.2014
comment
Есть пример, который использует UART из симуляции. Для AvrStudio нет плагина или чего-то еще. Программа или библиотека автономны и работают из командной строки. Вы можете запустить его из любого отладчика или добавить графический интерфейс python или tcl для тестирования. Для изучения требуется немного времени, но это очень помогает при моделировании реального оборудования. Я не знаю другого инструмента, который мог бы помочь вам с прерываниями и анализом времени выполнения. - person Klaus; 18.09.2014