Инициализация USART ATTiny2313

  • user warning: Table './drupal/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT COUNT(sid) AS count FROM sessions WHERE timestamp >= 1780747978 AND uid = 0 in /var/www/fendercustomsh/data/www/avrlab.com/includes/session.inc on line 119.
  • user warning: Table './drupal/sessions' is marked as crashed and last (automatic?) repair failed query: SELECT DISTINCT u.uid, u.name, s.timestamp FROM users u INNER JOIN sessions s ON u.uid = s.uid WHERE s.timestamp >= 1780747978 AND s.uid > 0 ORDER BY s.timestamp DESC in /var/www/fendercustomsh/data/www/avrlab.com/modules/user/user.module on line 764.

Написал программу для ATTiny 2313, в которой есть часть, касающяся
инициализации USART. По умолчанию он настроен на передачу 8 бит и 1 бит Стоп.
Но, если все же, записать 0000 0110 в регистр UCSRC, то одновременно с UCSRC это число попадает в регистр UBRRH. Кто подскажет, где ошибка?

Проблему еще не решил?

Проблему еще не решил?

Инициализация USART

Дело в том, что регистры UCSRC UBRRH используют
один и тот же адрес. Проблема решается так: если
старший бит байта равен 1, то при записи он попадает
в регистр UCSRC, если ноль, то в UBRRH.