Цитата(Сергей Владимирович @ May 24 2013, 20:10)

Вот схема...
Это точно полная схема? или та часть, которую Вы посчитали нужной показать?
1. Нет конденсаторов от кварца на землю.
2. Нет конденсатора по питанию на RS485 и на PIC18
Но это думаю не основное. По исходнику сказать что-то сложно, у меня, например, сейчас для PIC18 ничего не установлено. дайте хекс, тогда хоть правильность конфигурационных битов в симуляторе сразу видно будет, да и все прочее тоже.
Про программу сходу вопрос: почему Вы не устанавливаете остальные относящиеся к USART регистр BAUDCTL в нужное состояние?
ну ладно, пусть оно по ресету в нуле, тогда получается что BRGH == 0; BRG16 == 0; (иначе бы частота была еще больше, но не ниже как у Вас в реале)
BR = 20e6/(64*130) = 2404 . похоже на то что нужно. Но осциллограф думает иначе. Значит несоответствие реальной частоты задающего генератора ожидаемой. Либо кварц и его обвязка виноваты, либо конфигурация неправильная.
Очень может быть что просто кварц у вас гармониковый и заводится на своих 6.6 МГц. Или даже на 4 МГц. А не на 20.
1. обязательно поставьте конденсаторы от кварца в землю согласно даташиту.
2. Посмотрите осциллографом на 3-й ногеПИКа частоту, может и увидите на какой он заводится (обычно генерацию хорошо видно)
3. Попробуйте другой кварц, скажем на 4 МГц и сравните.
4. просто подадите извне частоту на 2-ю ногу заместо выпаянного кварца.