18.06.2016, 11:02 | #31 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 |
Re: AVR (mega328p)
Может быть и запрещено... но отрабатывает нормально
Причина найдена. но непонятна. |
14.08.2016, 21:57 | #32 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: AVR (mega328p)
В Cyberwrt есть модуль Light control. http://cyber-place.ru/showthread.php?t=1854
Возможно что это то что, тебе нужно В модуле можно конфигурировать пины ардуино http://cyber-place.ru/showpost.php?p=24022&postcount=5 |
15.08.2016, 07:27 | #33 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 |
Re: AVR (mega328p)
Сам код ещё не смотрел. Но по описанию не совсем то.
Я имел ввиду что на сервере хранятся шаблоны скетчей для avr. Выбранные пользователем шаблоны конфигурируюся, путем замены переменных конкретными значениями пинов, объединяются и дополняются кодом логики работы. Потом все это компилируется и отправляется на прошивку. В примере лайтконтроля прошивка в ардуине остается неизменной. |
15.08.2016, 11:27 | #34 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: AVR (mega328p)
прошивка не меняется, но готовые процедуры работы пинов уже прошиты в ардуине
Ардуине посылаешь команду как и какой сконфигурировать порт и в качестве чего работать. То есть можно удаленно конфигурировать порты на вход/выход включать ШИМ, принимать с порта значения и отправлять в порт значения, управлять таймером и т.д. А прошивать можно через ser2net, socat или avrdude http://cyber-place.ru/showthread.php...BD%D0%B0%D1%8F В первых двух случаях пробрасывается порт что то типа беспроводный UART А во втором случаи ардуина программируется так же как на ПК в Arduino IDE. Для удобства остается только обыграть все это в веб интерфейсе |
21.08.2016, 17:19 | #35 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 |
Re: AVR (mega328p)
Так а еще теоретические вопросы по бутлоадеру:
1. Я правильно понял, что использование и стартовый адрес бутлоадера задаются фьюзами BOOTRST и BOOTSZ0,1? 2. А как avrdude понимает, что именно этот hex является бутлоадером и его нужно класть в конец памяти? 3. Если не снимая фьюзов попытаться записать весь объем памяти полностью, то загрузчик затрется или выдаст ошибку? |
21.08.2016, 23:38 | #36 | ||
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: AVR (mega328p)
Цитата:
Вот так прошивается bootloader Цитата:
-b <baudrate> - позволяет переопределить указанную для программатора в конфигурации программы скорость подключения -C <config-file> - в качестве <config-file> указываем полный путь к файлу конфигурации с необходимыми нам настройками программы. -c <programmer> - в качестве <programmer> указываем псевдоним используемого программатора, например "usbasp". -D - опция запрещает автоматическое стирание Flash-памяти. Автоматическое стирание не используется в микроконтроллерах семейства ATxmega; -P <port> - в качестве значения <port> указываем используемый программатором порт. -F - опция для отключения проверки сигнатуры микроконтроллера. По умолчанию перед программированием avrdude проверяет сигнатуру микроконтроллера, которая в некоторых случаях может быть повреждена, при этом микроконтроллер может продолжать нормально функционировать; -e - стирает содержимое FLASH и EEPROM памяти (заполнение значениями 0xFF), очищаются fuse-bits (биты защиты). Исключением являются микроконтроллеры семейства ATxmega в которых используется постраничная запись; -U <memtype>:r|w|v:<filename>[:format] - комплексная опция для указания производимой с памятью операции (чтение. запись, проверка); -n - запрет на запись в микроконтроллер, используется для отладки avrdude; -V - отключение автоматической проверки записанной информации; -u - отключить режим безопасной (safe mode) проверки и сопоставления ячеек конфигурации (fuse bits) до и по завершению программирования. Данная опция необходима если нужно изменить значения фьюзов (fuse bits), в противном случае avrdude в качестве меры безопасности изменит их значения на те которые были прочитаны перед программированием; |
||
23.09.2016, 23:43 | #37 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 |
Re: AVR (mega328p)
Все равно ничего не понимаю...
Ну первая строка устанавливает фьюзы, последняя ставит lock фьюз. А вот как во второй строке происходит понимание, что шить надо не с нуля , а (условно) с 0x3F00? или это внутри самого hex'а опознается? |
24.09.2016, 09:24 | #38 |
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: AVR (mega328p)
Честно говоря я так глубоко не копал
|
27.09.2016, 20:42 | #39 |
Moderator
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031 |
Re: AVR (mega328p)
Что -то второй день не могу сформулировать запрос для гугля... Может кто натолкнет на мысль.Есть переменная unsigned char которая, если верить тому что я прочитал, содержит аж целый байт.
Этот байт (опять же, в моем понимании) можно записать в разных видах: 00 - FF 0 - 255 00000000 - 11111111 Пока все правильно? А дальше интереснее, я бы хотел сравнить ее значения по кускам, ну например значение 01 - выключить подтяжку на 1 пине, а 15 включить на 5-м. То есть первая половина байта определяет действие, а вторая точно определяет номер пина. Возможно ли сравнивать байт по кускам, и имеет ли это хоть какой-то смысл в экономии оперативки? |
27.09.2016, 20:46 | #40 | ||
Administrator
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823 |
Re: AVR (mega328p)
Цитата:
Цитата:
для выделения битов используются битовые маски |
||
Здесь присутствуют: 3 (пользователей: 0 , гостей: 3) | |
|
|