ptr128 писал(а):Никто не запрещает, выходить из прерывания по JMP, не забыв проинициализировать SP
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
ptr128 писал(а):Никто не запрещает, выходить из прерывания по JMP, не забыв проинициализировать SP
а тот факт, что эти флаги могли быть установлены по итогам приема байта, не попавшего в обработчик, ибо busy==1 было - это вас не смущает?Z_h_e писал(а):На счет данных флагов камень принимаю.
Предположим, что байты нам достаются даже реже, чем каждые 10мс, но так как мы разрешаем прерывания, между этими байтами может быть обработка еще нескольких других прерываний, не имеющих никакого отношения к UART. И если таких прерываний произойдет больше одного, то мы будем выгребать уже два байта из UART, а если больше 2-3, то вообще увидим установленный DORnARV писал(а):предположим, байты в УАРТ сыплятся каждые 10 мс
Оно не не требуется, его нельзя использовать.ptr128 писал(а):У Вас навязчивая идея?
ptr128 писал(а):
sei перед выходом из прерывания действительно не требуется.
так разве в этом случае хоть запрещай, хоть не запрещай, все равно получится бяка? мы же на время 11 мс блокируем обработку УАРТа, разрешая одновременно все прочие прерывания - не так ли? если такое произойдет, то один или больше принятых байтов просто пропадут. о чем я ранее и писалptr128 писал(а):а если больше 2-3, то вообще
если мы не успеваем обработать принятый байт, то причина этой "медлительности" уже неинтересна - из-за долгой обработки или из-за вмешательства других прерываний.ARV писал(а):это тот же каюк, но с другой стороны...
Вы же сами попросили меня привести кокретный примерZ_h_e писал(а):обсуждение шло тоже обобщенное.
Меня очень сильно смущает алгоритм вложенных прерываний, который Вы первый предложили, а товарищ его доразвил. А камень я принял только по факту метода сброса именно этих флагов и не более, о чем собственно и написал.ARV писал(а):а тот факт, что эти флаги могли быть установлены по итогам приема байта, не попавшего в обработчик, ибо busy==1 было - это вас не смущает?Z_h_e писал(а):На счет данных флагов камень принимаю.
вся эта тема таким бредом пахнет... обсуждение классического сферического коня...
Вы можете внятно сказать, чего Вы от меня хотите?Z_h_e писал(а):ptr128 писал(а):ptr128 писал(а):У Вас навязчивая идея?
sei перед выходом из прерывания действительно не требуется.
Оно не не требуется, его нельзя использовать.
Нет у меня навязчивой идеи.
Тролль?Z_h_e писал(а): Сначала Вы говорите что так в ДШ, потом говорите, что его надо ставить если выход по ret. Я Вам сообщанию свое непринятие таких утверждений. Особенно на фоне, когда Вы попрекаете коллег тем, что они могу запутать новичков.
Куда угодно. Хоть по вектору RESETZ_h_e писал(а): Куда Вы собрались выходить по команде JMP ?
Допускаю непринятие Вами утверждения других, в том числе моих, но не допускаю оскорблений . Так что идите пожалуйста на любой вектор.ptr128 писал(а):Тролль?
Меня тоже, о чем я уже Вам писал:Z_h_e писал(а):Меня очень сильно смущает алгоритм вложенных прерываний, который Вы первый предложили, а товарищ его доразвил.
Добавлено after 1 minute 33 seconds:ptr128 писал(а): Хотя тут я с Вами согласен и сам предпочитаю организацию очереди событий, разгребаемой основной программой.
Например, кольцевой буфер из N структур, состоящих из указателя на обработчик события и параметр для этого обработчика.
Не вопрос, Вы в игноре.Z_h_e писал(а):Допускаю непринятие Вами утверждения других, в том числе моих, но не допускаю оскорблений . Так что идите пожалуйста на любой вектор.ptr128 писал(а):Тролль?
Почему? Например, МК в реальном времени управляет каким-то механизмом. Кроме того, воспринимает команды пользователя по последовательному порту через UART. А значит, если мы приняли команду и обработали - ответим по тому же последовательному порту "OK". Если пользователь слишком быстро послал несколько команд и мы не успели какую-то принять (возникло переполнение UART) - ответим "ERR OVERFLOW". А пользователь тогда поймет, что команду следует послать повторно, если она еще актуальна. Как раз вполне адекватное и прогнозируемое поведение программы получится.ARV писал(а):так разве в этом случае хоть запрещай, хоть не запрещай, все равно получится бяка?