Page 2 of 2

Re: IRQ 4 (42 функция )

Posted: Sun Nov 08, 2009 12:57 am
by ДедОк
Приложение terminal после обновления в соответствии с изменением API ядра и у меня работает прекрасно... но до 769 версии... поправьте, если ошибаюсь, но между 768 и 769 версиями принцип настройки железа уарт не изменился... тогда интересно, почему приложение, работающее пол 768 не работает под 769... :?: :roll:

Re: IRQ 4 (42 функция )

Posted: Sun Nov 08, 2009 1:10 am
by diamond
Изменился. svn.768 всегда инициализировала оба COM-порта при определении COM-мышей, в svn.769 этим занято уже не ядро. Если программа что-то не инициализирует или инициализирует неправильно, в svn.768 ошибка может быть сглажена. Далее, ещё одно важное отличие состоит в том, что svn.769 откажется (и правильно сделает) переустанавливать обработчик IRQ, которым кто-то уже владеет.

Re: IRQ 4 (42 функция )

Posted: Mon Nov 09, 2009 7:35 pm
by ДедОк
Вот тут я и прозрел...;) был пропущен нюанс в настройке уарта, который прощало старое ядро, но не простило новое... :) исправил, всё работает...:) всем большое спасибо...

Re: IRQ 4 (42 функция )

Posted: Mon Nov 09, 2009 9:58 pm
by Maxis
ДедОк wrote: До этого данные принимались, хотя и медленно...(9600 бит в секунду)
А с новым ядром скорость увеличилась?

Re: IRQ 4 (42 функция )

Posted: Sat Nov 14, 2009 12:46 am
by ДедОк
А с новым ядром скорость увеличилась?
Да, у меня и старое на 115200 отпахало 1,5 года...:)
Вопрос стоит в том, что по старой версии функции, я вынужден был за каждым байтом по отдельности нырять, а в новой версии, всё складывается в отведённую тобой область...:) вроде удобнее, и быстрее.... но есть один момент... например, идут у меня в ком порт данные... раньше, я их побайтно вылавливал, складировал, пока не набирал пакет нужного мне объёма, и отправлял на обработку.. теперь я решил вытаскивать пакет уже готовым, проверяя 1 подфункцией его размер...:) но с приходом первого же байта прога ловит прерывание 4 и не даёт ничего делать пока я его не сниму... причём проверка объёма не снимает прерывание, и оно висит до тех пор, пока я пакет не заберу...:( такая вот ботва... приходится возвращаться к старой схеме...:( правда, я выкрутился, убрав вообще 4 прерывание из маски, и теперь просто проверяю через интервал времени объём, и забираю когда надо... так намного быстрее, но выход топорный...:(