Что и требовалось доказать, принимая байт следующий за 63 он пишет его в следующую ячейку памяти контроллера, и если по этому адресу находится область размещения стэка то произойдет то. что я описал выше
Кто пишет? Зачем именно туда, на каком основании?
Что за бред?
Если вы знаете ссылку на C файл arduino где прописана функция available() дайте. Я точно не помню находил я исходник или нет. Но хотелось бы освежить в памяти...
Блин, но я же видел кольцевой буфер, хз где. Лады, признаю, не силен в ардуино, но проверка показала что останов на 63-м байте, 64-й в нуле и всё, выход.
Блин, но я же видел кольцевой буфер, хз где. Лады, признаю, не силен в ардуино, но проверка показала что останов на 63-м байте, 64-й в нуле и всё, выход.
оно, если задуматься и не нужно - толку с того буфера.
negavoid, насколько я понял, такие очевидные аргументы не канают.
Почему не канают. Аргумент с которым не поспоришь. Предусмотрели значит.
предусмотрели, что бы защитить границы областей стека памяти?.. или что там было - я путаюсь в ужасе.
расскажи, где про границы стека памяти почитать можно.
При инициализации процессора как правило после перехода за область памяти програм где расположены адреса прерываний перефирии первым делом в регистры инициализируют SPL и SPH в которые записывается указатель стека процессора, там хранятся адреса возврата из подпрограмм. По поводу програмного ограничения буффера, это защита данных программы, если этого не сделать , то стек бы вел себя как я писал, заполнялся бы до предела снося все на своем пути как цунами.
По поводу програмного ограничения буффера, это защита данных программы, если этого не сделать , то стек бы вел себя как я писал, заполнялся бы до предела снося все на своем пути как цунами.
слушай, меня не волнует, что было бы, если бы у бабушки были яйца - ты безапеляционно заявил, что будет с буфером сериала, если он будет переполнен.
я тебе сказал, что проверил - буфер сериала не переполняется никогда от слова НИКОГДА.
в ответ ты мне дал кусок какого-то кода, который должен был меня в чём-то убедить.
затем оказалось, что ты даже кода волнующих тебя available() и flush(), но точно уверен, что с ними что-то не так.
вопрос: ты будешь продолжать или в какой-то момент остановишься и прекратишь генерить бред?
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
при чём тут битность процессора?
на 32-х битных и выше другие законы логики работают?
оно, если задуматься и не нужно - толку с того буфера.
Не вник. А куда складать?
Переведу глумливое объяснение Клапа. При передачи данных от одного устройства к другому надо передовать по 64(128) байт для UNO(Mega), обрабатывать и принимать следующую пачку. Или принимать кусками, складывать, обрабатывать целиком. И нормальных средах разработки используются стандартные библиотеки C\C++ здесь итальянские чудики изобрели велосипед.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
при чём тут битность процессора?
на 32-х битных и выше другие законы логики работают?
Ноль и единица, вот что в них одинаково. А вот идеология и построение перефирии день и ночь. Ну и как вы заметили там можно работать с Word без приобразований типа за 1 такт. Не путайте логические операции и их прикладное применение. Вам просто надо, если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек. Ну и в быстродействии кроются свои ньюансы.
не нужно было, что бы я не вносил правки в перевод
diger67 пишет:
При передачи данных от одного устройства к другому надо передовать по 64(128) байт для UNO(Mega), обрабатывать и принимать следующую пачку. Или принимать кусками, складывать, обрабатывать целиком.
размер мешков и количество награбленного в мешках не важно, если ты быстро бегаешь.
diger67 пишет:
И нормальных средах разработки используются стандартные библиотеки C\C++ здесь итальянские чудики изобрели велосипед.
какие стандартные библиотеки C\C++ ? - сейчас мы их прикрутим к Дуино.
если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек.
Я всю свою жизнь пишу в иар, но так и не понял чего вы хотите добиться? Тем более, что в иар нет никаких встроенных библиотек типа "ардуино иде". Если по чеснаку, то продолжайте писать в иар, по приему байта от уапп складывайте куда хотите... хоть на ддр3... нахер задевать эту иде? Создайте буфер в 7 кбайт на хмеге128-й. И не будет говна в ограничении в 64 байта.
Ноль и единица, вот что в них одинаково. А вот идеология и построение перефирии день и ночь. Ну и как вы заметили там можно работать с Word без приобразований типа за 1 такт. Не путайте логические операции и их прикладное применение. Вам просто надо, если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек.
почему, внезапно, это мне что-то нужно, если я не программист?
я тебе задаю уточняющие вопросы на твой поток бреда, в ответ ты всё дальше уходишь от темы топика и продолжаешь генерить бред.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
А можно я вопрос задам? А как в нормально написанной программе можно не успеть обработать 64 байта ком порта, они же целую вечность сыпаться будут, даже на 115200?
А можно я вопрос задам? А как в нормально написанной программе можно не успеть обработать 64 байта ком порта, они же целую вечность сыпаться будут, даже на 115200?
Не такую уж и вечность, чуть более 5мсек. И если, к примеру, в это время очищать графический экран 320х240 то запросто можно получить переполнение бухера и без делеев.
negavoid, насколько я понял, такие очевидные аргументы не канают.
Что и требовалось доказать, принимая байт следующий за 63 он пишет его в следующую ячейку памяти контроллера, и если по этому адресу находится область размещения стэка то произойдет то. что я описал выше
Кто пишет? Зачем именно туда, на каком основании?
Что за бред?
Если вы знаете ссылку на C файл arduino где прописана функция available() дайте. Я точно не помню находил я исходник или нет. Но хотелось бы освежить в памяти...
Код писать ненадо, создай макрос для любой терминалки, не ардуиновской и отправь по UART в контроллер.
что куда отправить? я хочу скетч, где будет случаться ужасное при отправке в сериал более необходимого - размера приёмного буфера сериала.
C:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino\HardwareSerial.cpp
Gippopotam
у меня сегодня день психологического аутотренинга по терпеливости :)
negavoid, насколько я понял, такие очевидные аргументы не канают.
Почему не канают. Аргумент с которым не поспоришь. Предусмотрели значит.
negavoid, насколько я понял, такие очевидные аргументы не канают.
Почему не канают. Аргумент с которым не поспоришь. Предусмотрели значит.
предусмотрели, что бы защитить границы областей стека памяти?.. или что там было - я путаюсь в ужасе.
расскажи, где про границы стека памяти почитать можно.
Блин, но я же видел кольцевой буфер, хз где. Лады, признаю, не силен в ардуино, но проверка показала что останов на 63-м байте, 64-й в нуле и всё, выход.
Блин, но я же видел кольцевой буфер, хз где. Лады, признаю, не силен в ардуино, но проверка показала что останов на 63-м байте, 64-й в нуле и всё, выход.
оно, если задуматься и не нужно - толку с того буфера.
negavoid, насколько я понял, такие очевидные аргументы не канают.
Почему не канают. Аргумент с которым не поспоришь. Предусмотрели значит.
предусмотрели, что бы защитить границы областей стека памяти?.. или что там было - я путаюсь в ужасе.
расскажи, где про границы стека памяти почитать можно.
При инициализации процессора как правило после перехода за область памяти програм где расположены адреса прерываний перефирии первым делом в регистры инициализируют SPL и SPH в которые записывается указатель стека процессора, там хранятся адреса возврата из подпрограмм. По поводу програмного ограничения буффера, это защита данных программы, если этого не сделать , то стек бы вел себя как я писал, заполнялся бы до предела снося все на своем пути как цунами.
оно, если задуматься и не нужно - толку с того буфера.
Не вник. А куда складать?
По поводу програмного ограничения буффера, это защита данных программы, если этого не сделать , то стек бы вел себя как я писал, заполнялся бы до предела снося все на своем пути как цунами.
слушай, меня не волнует, что было бы, если бы у бабушки были яйца - ты безапеляционно заявил, что будет с буфером сериала, если он будет переполнен.
я тебе сказал, что проверил - буфер сериала не переполняется никогда от слова НИКОГДА.
в ответ ты мне дал кусок какого-то кода, который должен был меня в чём-то убедить.
затем оказалось, что ты даже кода волнующих тебя available() и flush(), но точно уверен, что с ними что-то не так.
вопрос: ты будешь продолжать или в какой-то момент остановишься и прекратишь генерить бред?
Не вник. А куда складать?
ну, так понимаю, что нужно высыпать награбленное в укромное место и вернуться с пустыми мешками.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
при чём тут битность процессора?
на 32-х битных и выше другие законы логики работают?
оно, если задуматься и не нужно - толку с того буфера.
Не вник. А куда складать?
Переведу глумливое объяснение Клапа. При передачи данных от одного устройства к другому надо передовать по 64(128) байт для UNO(Mega), обрабатывать и принимать следующую пачку. Или принимать кусками, складывать, обрабатывать целиком. И нормальных средах разработки используются стандартные библиотеки C\C++ здесь итальянские чудики изобрели велосипед.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
при чём тут битность процессора?
на 32-х битных и выше другие законы логики работают?
Ноль и единица, вот что в них одинаково. А вот идеология и построение перефирии день и ночь. Ну и как вы заметили там можно работать с Word без приобразований типа за 1 такт. Не путайте логические операции и их прикладное применение. Вам просто надо, если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек. Ну и в быстродействии кроются свои ньюансы.
Переведу глумливое объяснение Клапа.
не нужно было, что бы я не вносил правки в перевод
При передачи данных от одного устройства к другому надо передовать по 64(128) байт для UNO(Mega), обрабатывать и принимать следующую пачку. Или принимать кусками, складывать, обрабатывать целиком.размер мешков и количество награбленного в мешках не важно, если ты быстро бегаешь.
И нормальных средах разработки используются стандартные библиотеки C\C++ здесь итальянские чудики изобрели велосипед.
какие стандартные библиотеки C\C++ ? - сейчас мы их прикрутим к Дуино.
Хотябы string, функцию sprintf(). Тогда библиотеки для работы с потоками и вводом выодом от arduino писать не пришлосьбы.
если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек.
Я всю свою жизнь пишу в иар, но так и не понял чего вы хотите добиться? Тем более, что в иар нет никаких встроенных библиотек типа "ардуино иде". Если по чеснаку, то продолжайте писать в иар, по приему байта от уапп складывайте куда хотите... хоть на ддр3... нахер задевать эту иде? Создайте буфер в 7 кбайт на хмеге128-й. И не будет говна в ограничении в 64 байта.
Ноль и единица, вот что в них одинаково. А вот идеология и построение перефирии день и ночь. Ну и как вы заметили там можно работать с Word без приобразований типа за 1 такт. Не путайте логические операции и их прикладное применение. Вам просто надо, если не пробовали написать программу в нормальной среде разработки. В IAR например. Пора вылезать из коротких штанишек.
почему, внезапно, это мне что-то нужно, если я не программист?
я тебе задаю уточняющие вопросы на твой поток бреда, в ответ ты всё дальше уходишь от темы топика и продолжаешь генерить бред.
Высказал мысли в слух. И тут поднялся вой из песочницы.
Хотябы string, функцию sprintf(). Тогда библиотеки для работы с потоками и вводом выодом от arduino писать не пришлосьбы.
покажите кто товарищу исходники Дуино ИДЕ - пусть он перестанет бредить.
Высказал мысли в слух. И тут поднялся вой из песочницы.
из песочницы тебя просят прекратить бредить.
Да, для восьмибиток это верх совешенства. Причем посмотрев код разработчиков ужаснулся количеству кода приводящего к черепашъей скорости выполнения программы.
Вы не родственник Архату и Онкелю?
А можно я вопрос задам? А как в нормально написанной программе можно не успеть обработать 64 байта ком порта, они же целую вечность сыпаться будут, даже на 115200?
А можно я вопрос задам? А как в нормально написанной программе можно не успеть обработать 64 байта ком порта, они же целую вечность сыпаться будут, даже на 115200?
делаи, сэррр.
Не такую уж и вечность, чуть более 5мсек. И если, к примеру, в это время очищать графический экран 320х240 то запросто можно получить переполнение бухера и без делеев.