Форум обсуждения систем  

Вернуться   Форум обсуждения систем "Умный дом", проектов Ардуино, OpenWRT и других DIY устройств > Разное > Курилка

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.06.2016, 11:02   #31
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: AVR (mega328p)

Может быть и запрещено... но отрабатывает нормально
Причина найдена. но непонятна.
Tohin вне форума   Ответить с цитированием
Старый 14.08.2016, 21:57   #32
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: AVR (mega328p)

В Cyberwrt есть модуль Light control. http://cyber-place.ru/showthread.php?t=1854
Возможно что это то что, тебе нужно
В модуле можно конфигурировать пины ардуино http://cyber-place.ru/showpost.php?p=24022&postcount=5
Admin вне форума   Ответить с цитированием
Старый 15.08.2016, 07:27   #33
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: AVR (mega328p)

Сам код ещё не смотрел. Но по описанию не совсем то.
Я имел ввиду что на сервере хранятся шаблоны скетчей для avr. Выбранные пользователем шаблоны конфигурируюся, путем замены переменных конкретными значениями пинов, объединяются и дополняются кодом логики работы. Потом все это компилируется и отправляется на прошивку.
В примере лайтконтроля прошивка в ардуине остается неизменной.
Tohin вне форума   Ответить с цитированием
Старый 15.08.2016, 11:27   #34
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: AVR (mega328p)

прошивка не меняется, но готовые процедуры работы пинов уже прошиты в ардуине
Ардуине посылаешь команду как и какой сконфигурировать порт и в качестве чего работать. То есть можно удаленно конфигурировать порты на вход/выход включать ШИМ, принимать с порта значения и отправлять в порт значения, управлять таймером и т.д.


А прошивать можно через ser2net, socat или avrdude http://cyber-place.ru/showthread.php...BD%D0%B0%D1%8F
В первых двух случаях пробрасывается порт что то типа беспроводный UART
А во втором случаи ардуина программируется так же как на ПК в Arduino IDE. Для удобства остается только обыграть все это в веб интерфейсе
Admin вне форума   Ответить с цитированием
Старый 21.08.2016, 17:19   #35
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: AVR (mega328p)

Так а еще теоретические вопросы по бутлоадеру:
1. Я правильно понял, что использование и стартовый адрес бутлоадера задаются фьюзами BOOTRST и BOOTSZ0,1?
2. А как avrdude понимает, что именно этот hex является бутлоадером и его нужно класть в конец памяти?
3. Если не снимая фьюзов попытаться записать весь объем памяти полностью, то загрузчик затрется или выдаст ошибку?
Tohin вне форума   Ответить с цитированием
Старый 21.08.2016, 23:38   #36
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: AVR (mega328p)

Цитата:
2. А как avrdude понимает, что именно этот hex является бутлоадером и его нужно класть в конец памяти?
Не понимает он, ему нужно указывать куда прошивать

Вот так прошивается bootloader
Цитата:
avrdude -F -C avrdude.conf -c diecimila -P ft0 -p m328p -b 9600 -U hfuse:w:0xda:m -U lfuse:w:0xff:m -U efuse:w:0x05:m
avrdude -F -C avrdude.conf -c diecimila -P ft0 -p m328p -b 230400 -e -U flash:w:ATmegaBOOT_168_atmega328.hex
avrdude -F -c diecimila -P ft0 -p m328p lock:w:0x0F:m
-p <partno> - является обязательной опцией, здесь мы в качестве <partno> указываем краткий псевдоним AVR микроконтроллера;

-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 в качестве меры безопасности изменит их значения на те которые были прочитаны перед программированием;
Admin вне форума   Ответить с цитированием
Старый 23.09.2016, 23:43   #37
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: AVR (mega328p)

Все равно ничего не понимаю...
Ну первая строка устанавливает фьюзы, последняя ставит lock фьюз.
А вот как во второй строке происходит понимание, что шить надо не с нуля , а (условно) с 0x3F00? или это внутри самого hex'а опознается?
Tohin вне форума   Ответить с цитированием
Старый 24.09.2016, 09:24   #38
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: AVR (mega328p)

Честно говоря я так глубоко не копал
Admin вне форума   Ответить с цитированием
Старый 27.09.2016, 20:42   #39
Tohin
Moderator
 
Регистрация: 20.07.2014
Адрес: МСК
Сообщений: 991
Вес репутации: 1031
Tohin is a jewel in the roughTohin is a jewel in the roughTohin is a jewel in the rough
По умолчанию Re: AVR (mega328p)

Что -то второй день не могу сформулировать запрос для гугля... Может кто натолкнет на мысль.Есть переменная unsigned char которая, если верить тому что я прочитал, содержит аж целый байт.
Этот байт (опять же, в моем понимании) можно записать в разных видах:
00 - FF
0 - 255
00000000 - 11111111

Пока все правильно?

А дальше интереснее, я бы хотел сравнить ее значения по кускам, ну например значение 01 - выключить подтяжку на 1 пине, а 15 включить на 5-м. То есть первая половина байта определяет действие, а вторая точно определяет номер пина.
Возможно ли сравнивать байт по кускам, и имеет ли это хоть какой-то смысл в экономии оперативки?
Tohin вне форума   Ответить с цитированием
Старый 27.09.2016, 20:46   #40
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,618
Вес репутации: 9823
Admin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant futureAdmin has a brilliant future
По умолчанию Re: AVR (mega328p)

Цитата:
Пока все правильно?
да
Цитата:
Возможно ли сравнивать байт по кускам, и имеет ли это хоть какой-то смысл в экономии оперативки?
Если не создаются переменные и массивы, то оперативка не используется
для выделения битов используются битовые маски
Admin вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 3 (пользователей: 0 , гостей: 3)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 02:39. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Яндекс.Метрика