Прошу совета у гуру. Делаю некое устройство, превращающее машину в что-то вроде умного дома на колесах. Устройство делается на основе LPC2378. Большую часть получаемых данных оно обрабатывает само и реагирует тоже само. Почти все данные можно получить с этого устройства на компьютер через USB либо ethernet ну и управляться оно тоже может через эти интерфейсы. Плюс оно имеет свой экран LCD 128x64 и 4 кнопки (esc, enter, <, >). Практически весь код (основа - nichelite) взаимодействия с датчиками машины, gps и компьютером написан, осталось сделать отрисовку данных на экране, меню и т.п. - т.е. интерфейс.
Чтобы не шить постоянно контроллер и проверять как смотрится тот или иной экран с данными решил сделать схему в протеусе и замоделировать интерфейс на нем. Взял в протеусе lpc2138, подключил к нему wg12864, 4 кнопки, кварц, виртуальный uart терминал. Скопировал проект в другой каталог и слегка его подрезал - убрал запуск задач сети, инициализацию usb, подправил загрузчик, отключил инициализацию отсутствующей переферии. Ставлю в keil девайс lpc2138, компилирую с созданием .hex. В настройках контроллера в протеусе указываю файл прошивки. Запускаю симуляцию и фик... Ничего... Тишина. Даже трейсы не показывают что PLL сконфигурен. В логе симуляции пишет что XTAL1 и XTAL2 not modelled - я так понимаю это означает что в симуляторе они не учитываются ? Убрал нафик оптимизацию - не помогло.
Ладно, чтобы посмотреть что за фигня ставлю дрова Proteus VSM AGDI и запускаю симуляцию через keil как отладку. Прохожу потихоньку инициализацию - все нормально. В трейсах пишет что мол PLL enabled FOSC=10Mhz, CCLK=60Mhz, FCCO=240Mhz а потом PLL connected OK. На этапе инициализации воткнул отрисовки логотипа на LCD - все нарисовалось. А дальше начинаются глюки - на ровном месте валится в DAbort (например в ns_printf валится в разных местах). Бывает и инициализацию не проходит. Все что можно уже проверил. Не могу понять в чем дело. Плюс совсем непонятные глюки с UART1 - на 2378 у меня делители расчитывались при инициализации для нужных скоростей, а потом брались уже из таблицы. Тут смотрю виртуальный терминал хрень выдает. Ставлю трейс на UART1 - смотрю в логах скорости совсем бредовые. Считаю делители пихаю их в DLL, DLM - на выходе бред. Ставлю DLL=1 DLM=0, смотрю скорость которую трейс пишет, считаю частоту - получаю как и положено 15Мгц (VPBDIV = 0). Путем экспериментов выяснил, что на любое значение DLM модель реагирует неадекватно и непредсказуемо

Короче потратил фигову кучу времени и получил 0 результата.
Кто-нибуть работал в протеусе с этой моделькой ? Это я что-то не так делаю или она такая глючная ?
З.Ы. Протеус у меня 7.5SP3....
Сообщение отредактировал Regressor - Nov 16 2009, 14:23