Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 27.10.2011, 02:26  
KoliaZP
Частый гость
 
Регистрация: 09.10.2010
Адрес: Киев
Сообщений: 20
Сказал спасибо: 34
Сказали Спасибо 28 раз(а) в 4 сообщении(ях)
KoliaZP на пути к лучшему
По умолчанию Netduino (.net mf)

Пару недель назад приехала ко мне платка на базе ARM FEZ Panda II (более известная по совместимости с netduino). Играюсь...
Программируется на C# с использованием .Net Micro Framework.
Есть здесь люди кодящие под на .net mf? Было бы интересно пообщаться.
Реклама:

Последний раз редактировалось KoliaZP; 27.10.2011 в 02:30. Причина: добавил картинку
KoliaZP вне форума  
Непрочитано 31.10.2011, 19:33  
KoliaZP
Частый гость
 
Регистрация: 09.10.2010
Адрес: Киев
Сообщений: 20
Сказал спасибо: 34
Сказали Спасибо 28 раз(а) в 4 сообщении(ях)
KoliaZP на пути к лучшему
По умолчанию Re: netduino (.net mf)

Ну, раз единодумцев нету, буду описывать свое знакомство с .Net MF, может еще кого заинтересую.

Очень понравилось программировать микроконтроллер с использованием C# и ООП — мне, как прикладному программисту, так значительно приятнее писать код. Не говоря уже об IDE — Visual Studio значительно удобнее любой из IDE с которыми мне приходилось сталкиваться (конечно же IMHO).
Прикрутил к нему экранчик на базе PCF8833 и очень разочаровался...

Кто не знает, программы написанные с .Net Framework исполняются в виртуальной машине CLR, как Java. На микроконтроллере так же. Производительность соответствующая.
Код типа
Код:
while (true) pin = !pin;
мигает пином с частотой 5.4KHz (при частоте МК — 72MHz).
При программном SPI экранчик очищается за 20–25 сек. Аппаратное SPI (предоставляемое в framework'е GHI, разработчика платы) задействовать не выходит, т.к. PCF8833 принимает 9-битные посылки, а SPI умеет работать только с байтами.
Решения проблемы — писать на базовый код на C и юзать его в C# (еще не попробовал). Правда возникла мысль попробовать общаться с экранчиком 9-байтными посылками... Но еще не успел попробовать.

Но общие впечатления крайне положительные. На днях прикручу экранчик с параллельным интерфейсом, хорошо что пинов предостаточно, думаю там эта проблема сразу исчезнет.

Последний раз редактировалось KoliaZP; 31.10.2011 в 19:44.
KoliaZP вне форума  
Непрочитано 31.10.2011, 22:03  
ut1wpr
Почётный гражданин KAZUS.RU
 
Аватар для ut1wpr
 
Регистрация: 19.08.2006
Адрес: Львов
Сообщений: 1,616
Сказал спасибо: 65
Сказали Спасибо 315 раз(а) в 264 сообщении(ях)
ut1wpr на пути к лучшему
По умолчанию Re: netduino (.net mf)

Сообщение от KoliaZP Посмотреть сообщение
При программном SPI экранчик очищается за 20–25 сек.
Не ошибся? Может, миллисекунд? Или оно там байты ножками в дисплей относит?
ut1wpr вне форума  
Непрочитано 31.10.2011, 23:33  
KoliaZP
Частый гость
 
Регистрация: 09.10.2010
Адрес: Киев
Сообщений: 20
Сказал спасибо: 34
Сказали Спасибо 28 раз(а) в 4 сообщении(ях)
KoliaZP на пути к лучшему
По умолчанию Re: netduino (.net mf)

Не, не ошибся. 20 мс я бы и не заметил.
Даже в теории:
5.4KHz мигание пином — 10 800 изменений состояния пина в секунду.
Очистить дисплей:
1. Выбрать диапазон строк (3 посылки)
2. Выбрать диапазон столбцов (3 посылки)
3. Команда записи в память (1 посылка)
4. Данные (1-байтный цвет — 130*130 посылок)
Итого 16 906 посылок.
1 посылка — 9 бит, 9*3 изменений состояния пина.
456 462 изменений пина, 42.6 секунды.

Я добился скорости в 20 секунд за счет того, что не изменяю состояния пина данных если оно не изменилось.

UPD:
Не сразу дошел вопрос. Да, очистка дисплея на практике это установка каждого пикселя в отдельности.

Последний раз редактировалось KoliaZP; 31.10.2011 в 23:34. Причина: Дошел смысл вопроса :)
KoliaZP вне форума  
Непрочитано 01.11.2011, 03:17  
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: netduino (.net mf)

Сообщение от KoliaZP Посмотреть сообщение
Очень понравилось программировать микроконтроллер с использованием C# и ООП...
Да, у меня сложилось такое же ощущение. Программировать легко и приятно. Единственно, что не понравилось - графика из-под MicroFramework тормозит очень.
Пробовал модуль Embedded Master + VGA TFT. В этом модуле используется проц LPC2478, у которого встроен контроллер экрана. Удалось достичь сносных 12 fps, при этом программа не тормозила заметно. При выставлении же человеческих 60fps всё жутко тормозило, время реакции на нажатие на кнопку составляло 2-3 секунды!

Сообщение от KoliaZP Посмотреть сообщение
мигает пином с частотой 5.4KHz
Кстати, эти ребята из GHI Electronics предлагают технологию RLP. То есть особо тяжёлые куски программы писать в нативном С, компилировать и использовать как внешние процедуры уже в С#. Попробуйте написать таким образом Вашу процедуру
Код:
while (true) pin = !pin;
и легко получите пару МГц
Yurkin2007 вне форума  
Непрочитано 01.11.2011, 09:11  
qwerky
Вид на жительство
 
Регистрация: 21.11.2009
Сообщений: 342
Сказал спасибо: 4
Сказали Спасибо 149 раз(а) в 66 сообщении(ях)
qwerky на пути к лучшему
По умолчанию Re: netduino (.net mf)

чем этот изврат лучше С++ ? тем более что на таких толстых контроллерах можно писать с использованием STL,Boost и многими новыми фишками С++11, получится ненамного хуже .Net.
qwerky вне форума  
Непрочитано 01.11.2011, 09:58  
KoliaZP
Частый гость
 
Регистрация: 09.10.2010
Адрес: Киев
Сообщений: 20
Сказал спасибо: 34
Сказали Спасибо 28 раз(а) в 4 сообщении(ях)
KoliaZP на пути к лучшему
По умолчанию Re: netduino (.net mf)

Сообщение от Yurkin2007 Посмотреть сообщение
Кстати, эти ребята из GHI Electronics предлагают технологию RLP.
Да, я тоже об этом думал. Не успел попробовать...
Сообщение от qwerky Посмотреть сообщение
чем этот изврат лучше С++ ?
Оно не лучше. Оно другое.
Сообщение от qwerky Посмотреть сообщение
получится ненамного хуже .Net.
Я думаю даже лучше, т.к. производительность будет соизмерима с нативным ассемблерным кодом. Но я все равно бы не отказался бы от C# в пользу полноценного C++ — мне, все же, на C# гораздо приятнее программировать. Хотя подозреваю, что в таком моем выборе играет роль и менее удобная IDE...

Ты когда нибудь кодил на Java, C# или VB.net? На них гораздо проще писать код (особенно C#). У тебя уже сразу есть огромное кол-во абстракций (делегаты, события, разные виды контейнеров), огромное кол-во готовых методов для работы с ними (LINQ содержит всевозможные операции над множествами). И конечно же сборшик мусора... Ты программируешь думая о том, что тебе нужно сделать, не задумываясь о том что где-то забыл освободить память.

Плата за все это — низкая производительность; все таки код выполняется в виртуальной машине. Но сейчас уже компьютеры достаточно производительны, и эта разница совершенно не заметна.

Последний раз редактировалось KoliaZP; 01.11.2011 в 10:01.
KoliaZP вне форума  
Непрочитано 01.11.2011, 11:45  
qwerky
Вид на жительство
 
Регистрация: 21.11.2009
Сообщений: 342
Сказал спасибо: 4
Сказали Спасибо 149 раз(а) в 66 сообщении(ях)
qwerky на пути к лучшему
По умолчанию Re: netduino (.net mf)

Цитата:
Ты когда нибудь кодил на Java, C# или VB.net?
на этих нет, но постоянно пишу на Scala и Python
Цитата:
У тебя уже сразу есть огромное кол-во абстракций
ну да, но зачем это все на контроллере, не понимаю
qwerky вне форума  
Непрочитано 01.11.2011, 12:08  
KoliaZP
Частый гость
 
Регистрация: 09.10.2010
Адрес: Киев
Сообщений: 20
Сказал спасибо: 34
Сказали Спасибо 28 раз(а) в 4 сообщении(ях)
KoliaZP на пути к лучшему
По умолчанию Re: netduino (.net mf)

Сообщение от qwerky Посмотреть сообщение
на этих нет, но постоянно пишу на Scala и Python
А хотелось бы на них кодить МК? Хотя бы ради научного интереса?

Сообщение от qwerky Посмотреть сообщение
ну да, но зачем это все на контроллере, не понимаю
Для реальных применений думаю они малополезны (как минимум из-за производительности). А если просто "поиграться" — с ними гораздо интересней.
Например работа с файлами... Не сильно знаю как это делалось бы на ARM с использованием C/C++, на C# это делается так же легко как и на компе (msdn)...
KoliaZP вне форума  
Непрочитано 01.11.2011, 12:21  
qwerky
Вид на жительство
 
Регистрация: 21.11.2009
Сообщений: 342
Сказал спасибо: 4
Сказали Спасибо 149 раз(а) в 66 сообщении(ях)
qwerky на пути к лучшему
По умолчанию Re: netduino (.net mf)

Цитата:
Например работа с файлами... Не сильно знаю как это делалось бы на ARM с использованием C/C++
гляньте fatfs, ее функционала достаточно для примитивных операций с файлами, что-то более сложное на контроллерах делать не приходилось, и не факт что придется. Если задействовать обертку на STL/Boost то работа с файлами будет не намного сложнее приведенного вами примера. http://www.decompile.com/cpp/faq/file_to_vector.htm

Последний раз редактировалось qwerky; 01.11.2011 в 12:25.
qwerky вне форума  
 

Закладки

Метки
.net, arm, netduino
Опции темы

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
VB.NET USB HID Easyrider83 Микроконтроллеры, АЦП, память и т.д 28 27.09.2011 12:43
вопрос по turbobit.net ndreich Отвлекитесь, эмбеддеры! 4 22.01.2010 09:58
[Решено] подключение NET-3631AS GunFighter Электроника - это просто 1 02.11.2009 17:46
net в p-cad... Mozart Proteus, KiCAD и другие ECAD 4 28.12.2006 12:23
[Решено] Чертежей.net.ru Василий Proteus, KiCAD и другие ECAD 0 15.03.2005 23:41


Часовой пояс GMT +4, время: 07:51.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot