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

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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.07.2015, 10:20   #21
ALS
Senior Member
 
Регистрация: 03.11.2013
Адрес: Севастополь
Сообщений: 347
Вес репутации: 0
ALS is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

... именно поэтому в такую, довольно тормозную по своему принципу систему просто просится SPI-RAM. На запись пакета даже в килобайт размером там времени нужно будет "не 2-3 порядка", а меньше миллисекунды.
ALS вне форума   Ответить с цитированием
Старый 16.07.2015, 12:35   #22
Arhat109
Senior Member
 
Регистрация: 14.06.2015
Адрес: СССР
Сообщений: 122
Вес репутации: 0
Arhat109 is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Это и есть "2-3 порядка". Команда проца отрабатывается за 62.5 НАНО секунды.
Arhat109 вне форума   Ответить с цитированием
Старый 16.07.2015, 13:59   #23
ALS
Senior Member
 
Регистрация: 03.11.2013
Адрес: Севастополь
Сообщений: 347
Вес репутации: 0
ALS is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Не, я про отзывчивость всей системы в целом. Сравнивал с теми самыми 7-8мсек, что отдаются серве.
ALS вне форума   Ответить с цитированием
Старый 16.07.2015, 14:57   #24
Arhat109
Senior Member
 
Регистрация: 14.06.2015
Адрес: СССР
Сообщений: 122
Вес репутации: 0
Arhat109 is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Так конечный автомат, запуская серву на "поворот" - не ждет жеж "сложа ручки" ... он следующее событие в очереди отрабатывает, если оно есть и если может. Пока серва вертится, те самые 7-8 миллисекунд, проц способен отработать ещё событий, суммарно на 8000 микросекунд * (8-16 команд) ... итого на 64-128 ТЫСЯЧ команд.

А подключение SPI-RAM к процу, да превращает его "двуручный тормоз": только из-за последовательного интерфейсу, надо отдать "хотя бы" 16 бит адреса и отдать/получить 8 бит данных + команда, хотя бы в пару бит (читать/писать/это адрес/..) + начало/конец сеансу ... итого даже для 64к имеем 26 - 28 циклов передачи ... то бишь УЖЕ БОЛЬШЕ ПОРЯДКА. А если учесть, что передача одного бита у вас никак не влезет менее чем в 3-4 команды "итого", то имеем ПОЧТИ ДВА порядка ... а ежели учесть что это все подпрогаммы, да писанная либа, да с учетом "разных краевых эффектов" ... то вот вам и все ТРИ ПОРЯДКА.

... как итого: это не "проц тормозной". Это подключение SPI-RAM ДЕЛАЕТ ЕГО ТАКОВЫМ. потому как ежели родной памяти "нехватат", то усё - "труба".

... вот и хочу "выйти" через нормальный выход, предусмотренный авторами проца. Дабы "отзывчивость всей системы" соответствовала ВОЗМОЖНОСТЯМ микроконтроллера, а не самой "крайней дырки в бочке".

P.S.
связка "датчик - серва" это далеко не "вся система". В итого уже насобиралось:
1. 8 серво двигателей на ножках 16-и битных таймеров 1,3 и 4 (чем будут заняты расписано уже 6шт);
2. 4 маршевых двигателя на ножках 8-и битных таймеров (4шт) + UART1,2,3 (2х3=6) + T0in + T4ICP ... по три ноги на движок: "вперед/назад/скорость" (эти расписаны все);
3. датчик HC-SR04 на ноге T5_ICP (echo по прерыванию) + аналог13 (trig)
4. 20,21 - I2C, на который садятся: гироскоп GY-521 + гирокомпас GY-271 (как ведомый к GY-521) + альтиметр BMP180 + дисплей LCD1602
5. 50-53 - SPI с каналом приема/передачи по беспроводному интерфейсу типа nrf905;
6. Аналоги 0,1,2,3 - пара микрофонных ушей для возможности обработки в дифференциальном режиме ADC с усилениями 10/200;
7. Аналоги 4,5,6,7 - 4 ИК датчика обнаружения препятствий и слежения за линией (можно по парно, можно все 4 одного типа - уже опробовано тоже);
8. Аналоги 14,15 - датчик PIR + датчик Tilt;
9. Аналоги 8,9,10,11,12 + T5in + T5outA,B,C - "итого" 9 ножек ... всё что остается на пару датчиков обнаружения цвета TCS3200.
10. UART0 - на последовательную связь с компом и/или работу с SD-картами.
... и xmem + D42,D43 на контроллер "внешней памяти" 128кило или 2метра.

... итого нехватает одной ножки.

Последний раз редактировалось Arhat109; 16.07.2015 в 15:18.
Arhat109 вне форума   Ответить с цитированием
Старый 17.07.2015, 07:55   #25
Arhat109
Senior Member
 
Регистрация: 14.06.2015
Адрес: СССР
Сообщений: 122
Вес репутации: 0
Arhat109 is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Вот, кстати наткнулся на шикарное в части доходчивости описание конечных автоматов на простом примере: http://ru.wikipedia.org/wiki/%D0%90%...BD%D0%B8%D0%B5

Практически "вся теория конечных автоматов".

Самое печальное в том, что микроконтроллеры, как устройства управления именно так и должны программироваться. А типовой Wiring толи по незнанию авторов толи по какой ещё причине не содержит даже намеков на этот подход. И это сильно осложняет создание действительно эффективных применений микроконтроллеров.

Администратору форума настоятельно рекомендую воткнуть это описание куда-то в общедоступный раздел по теории. Проще, наверное и не изложишь.
Arhat109 вне форума   Ответить с цитированием
Старый 17.07.2015, 12:10   #26
ALS
Senior Member
 
Регистрация: 03.11.2013
Адрес: Севастополь
Сообщений: 347
Вес репутации: 0
ALS is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Та ладно. При чем тут wiring и ардуино ? Задача их разрабов - обучить программированию каждую домохозяйку.
А те, кто не считает себя таковыми, либо переделывают под себя стандартные библиотеки, либо просто берут ардуиновские платы и программируют их "нормальными" языками (вышеупомянутые асм и чистый Си). И получают на выходе конфету, шоколадную и с орехами.
ALS вне форума   Ответить с цитированием
Старый 17.07.2015, 18:01   #27
Arhat109
Senior Member
 
Регистрация: 14.06.2015
Адрес: СССР
Сообщений: 122
Вес репутации: 0
Arhat109 is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Так вот как раз и вопрос "чему и как учить"...

Использован "типовой" подход к созданию либы ... фактически, с использованием Wiring, КА строится "строго последовательно" ... а "железяка" хочет выдерживать тайминги, имеет разные состояния и правила переходов.

Как следствие, имеем примеры сплошь и рядом обставленные задержками. А при попытке соединить две железки - кучу проблем. Поскольку они управляться должны как-бы "независимо"... ан нет: delay() - "наше всё".

Помножьте это на "отсутсвие знаний, навыков и умений" у домохозяек. Собственно тут и лежит "мнение" что микроконтроллер - это тормоза.

На самом деле, 16Мгц с тактированием 1 команда = 1 такт, это "достаточно круто". К примеру, это примерно производительность i286 без FPU (в среднем 2-4 такта на команду, помнится и теже 12-16Мгц). А, в свое время, им пользовались и для достаточно серъезных задач, в частности программирование игр. И последние модели оснащались мегабайтами памяти...

А, ежели иметь "встроенный" КА, то все выглядит несколько иначе. И подход к программированию МК - совсем иной. ... и delay() внезапно избыточен. И этот подход к программированию управления железом - как раз интуитивно прост и понятен.
Arhat109 вне форума   Ответить с цитированием
Старый 22.07.2015, 07:39   #28
Arhat109
Senior Member
 
Регистрация: 14.06.2015
Адрес: СССР
Сообщений: 122
Вес репутации: 0
Arhat109 is an unknown quantity at this point
По умолчанию Re: xmem shield, расширение SRAM

Ещё "одна задача" для расширенной памяти: вывод на видеокарты. От старых компов осталось полно разного VGA-хлама, почему бы не организовать вывод "на монитор" напрямую с микроконтроллера, ась?

Нереально? Да, ладно.

VGA 640x480 = 0.3Мп, а самое интересное, что имеет режимы "текстового" и "псевдотекстового" показу. Это где есть такое понятие как "шрифт" - матрица из 8х8, а то и 9х16 точек экрана с заранее прописанными символами-рисунками. И, в этом случае, весь экран внезапно превращается в размер 80х60 картинок... то бишь 4800 .. байт. Даже в память Меги влезет и без расширения. Кстати, помнится VGA позволял хоть всю излишнюю память упихать картинками и переключать их банками по 32шт. или около того (сейчас уже плохо помню).

... когда-то делал такую "псевдографику" для 286-го на EGA ... получал скорость перерисовки экрана до 16 кадров в сек. ... неужели этот микроконтроллер не справится? Почему я в это не верю?
Arhat109 вне форума   Ответить с цитированием
Старый 22.07.2015, 09:54   #29
Admin
Administrator
 
Аватар для Admin
 
Регистрация: 12.04.2010
Адрес: Москва
Сообщений: 9,616
Вес репутации: 9820
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: xmem shield, расширение SRAM

Я как то давно, пытался сделать на ардуине приставку к камере заднего хода.
Нажмите на изображение для увеличения
Название: park.jpg
Просмотров: 211
Размер:	66.7 Кб
ID:	2931

А вот проект с исходниками игры тетрис
Admin вне форума   Ответить с цитированием
Старый 22.07.2015, 12:28   #30
Alex19279
Senior Member
 
Регистрация: 20.09.2014
Сообщений: 145
Вес репутации: 0
Alex19279 will become famous soon enough
По умолчанию Re: xmem shield, расширение SRAM

Девайсов куча по сопряжению атмега и мониторов vga, вот ссылка на один из них:

tinyvga.com/avr-isa-vga
Alex19279 вне форума   Ответить с цитированием
Ответ

Метки
расширение памяти, sram extended, xmem


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

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

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


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


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