Arduino nano на ch340g
- Сообщения: 26671
- Зарегистрирован: Пт май 18, 2007 22:56:58
Хм... А без кварца можно вообще рассчитывать на стабильную работу с uart?
Не променяю медь на ржавую несгорайку!
- Реклама
С мегами пока проблем не было, а вот с тинками (конкретно с 2313) были… некоторые тини2313 без кварца на отрез отказывались передавать/принимать без ошибок.
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
Upgrader, на низкой скорости должно приемлемо быть, если ус-но не уличное, т.е. температура если не сильно уплывает. Если температура плавает, есть варианты калибровки на ходу разные. Главное чтобы за время сна не сильно менялась температура окружения. Ну и подобрать baud такой, чтобы попадала частота точно, с низким процентов родных ошибок: https://trolsoft.ru/ru/uart-calc
Проверьте фьюзы. Ибо во фьюзах для той же меги8, ЕМНИП, можно выставить 256, 1024 или 16384 такта от кварца ждать и ПЛЮС еще 0/4/64 мс.
Соответственно на кварце 16 МГц при старте 16К+64 мс будет задержка 16384 мкс+64 мс = 80 миллисекунд. При том, что на 9600 один такт - порядка 0.1 мс.
На внутреннем RC нет обязательных 256 клоков осциллятора, минимально всего 6 клоков, т.е. менее 1 мкс при 8 мгц.
Соответственно на кварце 16 МГц при старте 16К+64 мс будет задержка 16384 мкс+64 мс = 80 миллисекунд. При том, что на 9600 один такт - порядка 0.1 мс.
На внутреннем RC нет обязательных 256 клоков осциллятора, минимально всего 6 клоков, т.е. менее 1 мкс при 8 мгц.
[uquote="GoldenAndy",url="/forum/viewtopic.php?p=3960556#p3960556"]можно выставить 256,[/uquote]
Так и было выставлено при тактовой 16 МГц… Но это не помогало, пока не задействован был внутренний генератор.
Так и было выставлено при тактовой 16 МГц… Но это не помогало, пока не задействован был внутренний генератор.
- Реклама
- Сообщения: 26671
- Зарегистрирован: Пт май 18, 2007 22:56:58
Заинтриговали прямо. Закажу программатор и попробую поиграться без кварца 
Не променяю медь на ржавую несгорайку!
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
[uquote="GoldenAndy",url="/forum/viewtopic.php?p=3960556#p3960556"]Проверьте фьюзы. Ибо во фьюзах для той же меги8, ЕМНИП, можно выставить 256, 1024 или 16384 такта от кварца ждать и ПЛЮС еще 0/4/64 мс.
Соответственно на кварце 16 МГц при старте 16К+64 мс будет задержка 16384 мкс+64 мс = 80 миллисекунд. При том, что на 9600 один такт - порядка 0.1 мс.
На внутреннем RC нет обязательных 256 клоков осциллятора, минимально всего 6 клоков, т.е. менее 1 мкс при 8 мгц.[/uquote]
Это при подаче питания дополнительное ожидание регулируется только. При выходе из сна, на кристалле ВСЕГДА 16К тиков. Это прямо написано таблицей в ДШ. При подаче питания те же 16К циклов минимум ВСЕГДА + регулируемое битами SUT дополнительное ожидание.


Добавлено after 38 minutes 3 seconds:
Еще как вариант конечно заменить кристалл на керамику: https://www.chipdip.ru/product/zta-8.00
Там быстрее "раскачка", 258 тиков можно сделать. Может стабильнее внутреннего RC будет, но я лично с керамикой никогда не пробовал запускать. И фьюзы менять всё-равно придется.
Добавлено after 2 minutes 49 seconds:
Ну как пишут тут: https://www.maximintegrated.com/en/desi ... /2154.html керамика всё-таки должна быть ближе к кристаллу по точности. Но при это по ДШ разгоняется она в разы быстрее. 258 тиков на 8МГц это всего ~33 мкс задежрки, а не 2 мс.
Соответственно на кварце 16 МГц при старте 16К+64 мс будет задержка 16384 мкс+64 мс = 80 миллисекунд. При том, что на 9600 один такт - порядка 0.1 мс.
На внутреннем RC нет обязательных 256 клоков осциллятора, минимально всего 6 клоков, т.е. менее 1 мкс при 8 мгц.[/uquote]
Это при подаче питания дополнительное ожидание регулируется только. При выходе из сна, на кристалле ВСЕГДА 16К тиков. Это прямо написано таблицей в ДШ. При подаче питания те же 16К циклов минимум ВСЕГДА + регулируемое битами SUT дополнительное ожидание.
Добавлено after 38 minutes 3 seconds:
Еще как вариант конечно заменить кристалл на керамику: https://www.chipdip.ru/product/zta-8.00
Там быстрее "раскачка", 258 тиков можно сделать. Может стабильнее внутреннего RC будет, но я лично с керамикой никогда не пробовал запускать. И фьюзы менять всё-равно придется.
Добавлено after 2 minutes 49 seconds:
Ну как пишут тут: https://www.maximintegrated.com/en/desi ... /2154.html керамика всё-таки должна быть ближе к кристаллу по точности. Но при это по ДШ разгоняется она в разы быстрее. 258 тиков на 8МГц это всего ~33 мкс задежрки, а не 2 мс.
- Вложения
-
- atmega8-6ck.png
- (7.85 КБ) 709 скачиваний
-
- atmega8-16ck.png
- (11.31 КБ) 702 скачивания
NStorm, Оу, этот момент я не знал. Вот мега вдоль и поперек исхожена, а такое не знал. Ибо задачи не было такой. Да и в основном всё, что должно спать - почти всегда делал на внутреннем RC. Ну вот так вот сложилось.
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
[uquote="NStorm",url="/forum/viewtopic.php?p=3960806#p3960806"]Но при это по ДШ разгоняется она в разы быстрее. 258 тиков на 8МГц это всего ~33 мкс задежрки, а не 2 мс.[/uquote]
При BAUD = 1200, 1 бит передается за 834 мкс. Поэтому -33 мкс на старт МК тут всё еще должны быть приемлемыми для нормальной регистрации 1ого байта посылки, т.к. < 4% потери сигнала 1го бита.
Т.е. керамический резонатор вполне себе вариант для решения, если стабильности внутреннего RC не хватит.
При BAUD = 1200, 1 бит передается за 834 мкс. Поэтому -33 мкс на старт МК тут всё еще должны быть приемлемыми для нормальной регистрации 1ого байта посылки, т.к. < 4% потери сигнала 1го бита.
Т.е. керамический резонатор вполне себе вариант для решения, если стабильности внутреннего RC не хватит.
- Сообщения: 26671
- Зарегистрирован: Пт май 18, 2007 22:56:58
Посоветуйте стоит ли загружать обновления программы arduino ide, внутренние обновления плат, и т.д. ?
Вы пользуетесь старой версией или всегда новой? Не будет такого что в новой версии есть несовместимость с предыдущими там библиотеками?
Вы пользуетесь старой версией или всегда новой? Не будет такого что в новой версии есть несовместимость с предыдущими там библиотеками?
Не променяю медь на ржавую несгорайку!
[uquote="Upgrader",url="/forum/viewtopic.php?p=3964068#p3964068"]Посоветуйте стоит ли загружать обновления программы arduino ide, внутренние обновления плат, и т.д. ?[/uquote]
Если я не ошибаюсь, в этом вопросе хорошо разбирается BOB51. Я же платы ардуины использую при необходимости как удобный шильд затерев загрузчик.
Если я не ошибаюсь, в этом вопросе хорошо разбирается BOB51. Я же платы ардуины использую при необходимости как удобный шильд затерев загрузчик.
- Сообщения: 1978
- Зарегистрирован: Ср июл 17, 2013 13:55:57
Upgrader, всегда обновлялся. Проблемы были только пару раз. Известная с ArduinoJson - когда они при переходе с 5ой версии к 6ой сломали API. И С либой ArduinoHeatpumpIR когда ESP8266 SDK обновился до версии 2.0.0 вроде. С ArduinoJSON решается легко - откатиться до 5ой версии всегда элементарно, она до сих пор есть в списке. С SDK можно было также, но я пофиксил либу и закоммитил пул реквест автору либы, приняли, починили. В общем обновлятесь - это не страшно! )
Надо понимать, что среду разработки делают одни люди, а компилятор исходного кода - другие.
При обновлении среды, вы, скорее всего, получите какие-то доп удобства в работе с ней.
При обновлении среды, вы, скорее всего, получите какие-то доп удобства в работе с ней.
[uquote="Upgrader",url="/forum/viewtopic.php?p=3964068#p3964068"]Посоветуйте стоит ли загружать обновления программы arduino ide, внутренние обновления плат, и т.д. ?
Вы пользуетесь старой версией или всегда новой? Не будет такого что в новой версии есть несовместимость с предыдущими там библиотеками?[/uquote]
Если на компе стоит WINXP - однозначно полный запрет автоматического обновления по тырнету.
Допускается (вероятно - сам не пробовал) обновление в ручном режиме (скачиваем с сайта/гитхаба и ставим лапками).
Если на компе виндовс 7ка и выше - там можно пользоватьсяя автоматическим обновлением.
Однако бывают и "казусы" - некоторые платформы снимаются с поддержки - тогда проблемную лучше полностью удалить.
Текущие актуальные версии (у меня установленные):
под ХР х32 = arduinoIDE 1.8.9
под 7ку и выше = arduinoIDE 1.8.13
А вот касательно линукса - не ведаю - у меня только "форточки"...

Вы пользуетесь старой версией или всегда новой? Не будет такого что в новой версии есть несовместимость с предыдущими там библиотеками?[/uquote]
Если на компе стоит WINXP - однозначно полный запрет автоматического обновления по тырнету.
Допускается (вероятно - сам не пробовал) обновление в ручном режиме (скачиваем с сайта/гитхаба и ставим лапками).
Если на компе виндовс 7ка и выше - там можно пользоватьсяя автоматическим обновлением.
Однако бывают и "казусы" - некоторые платформы снимаются с поддержки - тогда проблемную лучше полностью удалить.
Текущие актуальные версии (у меня установленные):
под ХР х32 = arduinoIDE 1.8.9
под 7ку и выше = arduinoIDE 1.8.13
А вот касательно линукса - не ведаю - у меня только "форточки"...
- Сообщения: 1405
- Зарегистрирован: Вт июн 07, 2011 08:03:18
[uquote="Карбофос",url="/forum/viewtopic.php?p=3964121#p3964121"]Надо понимать, что среду разработки делают одни люди, а компилятор исходного кода - другие.
При обновлении среды, вы, скорее всего, получите какие-то доп удобства в работе с ней.[/uquote]
Давеча человеку делал проектик с LCD 2004 по i2c. Так вот он текст (из примеров) на этот свой LCD смог вывести только установив "старинную" IDE 1.6.5.
При обновлении среды, вы, скорее всего, получите какие-то доп удобства в работе с ней.[/uquote]
Давеча человеку делал проектик с LCD 2004 по i2c. Так вот он текст (из примеров) на этот свой LCD смог вывести только установив "старинную" IDE 1.6.5.
- Сообщения: 26671
- Зарегистрирован: Пт май 18, 2007 22:56:58
Возвращаясь ко сну. Испытал Arduino Pro Mini 8 МГц от li-ion аккумулятора засадив в самый глубокий сон. От платы отпаял только светодиод питания (жрет 2 мА)! Больше ничего не менял.
Потребление 9 мкА вместе с кое чем еще (тоже в спящем режиме)
Мультиметр может не точно показывает, ориентировочно. Что может быть лучше!!!
Меньше даже не вижу смысла что-то еще ковырять. Это по поводу того что ардуинки якобы со спящим режимом не дружат - вранье всё это!
Для сравнения, на Arduino Nano было в том же режиме 80 мкА. Это уже не то конечно, но тоже вполне разумная экономия.
Управление питанием библиотека #include <LowPower.h>
Потребление 9 мкА вместе с кое чем еще (тоже в спящем режиме)
Для сравнения, на Arduino Nano было в том же режиме 80 мкА. Это уже не то конечно, но тоже вполне разумная экономия.
Управление питанием библиотека #include <LowPower.h>
Не променяю медь на ржавую несгорайку!
Если не отключил компаратор, то отключи, ещё меньше будет потреблять. Компаратор по умолчанию всегда включен. неиспользуемые выводы подтяни внутренними резисторами... тоже помогает снизить потребление. 
- Сообщения: 26671
- Зарегистрирован: Пт май 18, 2007 22:56:58
Код: Выделить всё
Глобальные переменные используют 2074 байт (101%) динамической памяти, оставляя -26 байт для локальных переменных. Максимум: 2048 байт.А так все хорошо начиналось
Не променяю медь на ржавую несгорайку!
- Сообщения: 1405
- Зарегистрирован: Вт июн 07, 2011 08:03:18
Любая программа содержит хотя бы одну ошибку.
Любую программу можно укоротить хотя бы на один байт.
Любую программу можно укоротить хотя бы на один байт.





