Easyelectronics.ru

Электроника для всех
Текущее время: 29 окт 2020, 22:37

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/5шт. два слоя. $5/5шт. четыре слоя
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 22 ] 
Автор Сообщение
 Заголовок сообщения: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 16:46 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
ATMega дорожает, ARM дешевеет, еще и халява проскальзывает. Решил пересесть на ARM. И чтобы не долго мучаться с выбором посчупать камни обоих самых распространенных производителей. Заодно и среду разработки подобрать одну на всех и поудобней.
По началу много было вопросов, начиная от создания голого проекта в кейле, до выбора RTOS-а.
Может мой пост поможет кому то начать или сделать выбор камня.
Сейчас на обоих камнях крутятся RTOS-ы от KEIL-a (не знаю как она называется официально), запущены RTC, вывод времени на LCD. На LPC вывод информации и времени по UART-у на комп, HTTP сервер с пустой статичной страничкой на основе опять же кейловского стека.
В перспективе ближайшей, клиент NTP и синхронизация времени обоих плат, подключение к HTTP CGI, чтобы смотреть состояние периферии через WEB и менять состояние ног.
Если будет интерес, выложу проекты для обоих плат.

Все перенес туда:
http://we.easyelectronics.ru/lexanet/stm32vldiscoverymbed-nxp-lpc1768rtoskeil.html
Продолжение:
http://we.easyelectronics.ru/lexanet/stm32vldiscoverymbed-nxp-lpc1768rtoskeil-chast-2.html


Вложения:
plata2.jpg
plata2.jpg [ 127.34 Кб | Просмотров: 13569 ]
plata.jpg
plata.jpg [ 129.09 Кб | Просмотров: 13569 ]


Последний раз редактировалось lexanet 01 апр 2011, 13:04, всего редактировалось 2 раз(а).
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 17:17 
Старожил
Аватара пользователя

Зарегистрирован: 30 окт 2010, 17:43
Сообщения: 372
канечно интересно.по крайней мере мне.

_________________
"Арфы нет!Возьмите бубен."


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 17:56 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Начало.

Среда разработки: MDK ARM 4.14 + RL-ARM 4.12

Голый проект:

Show STM32


В папку с проектом кладем:
C:\Keil\ARM\INC\ST\STM32F10x\stm32f10x.h (в файле разкоменчиваем одну из строк с 50 по 57)
C:\Keil\ARM\Startup\ST\STM32F10x.s

Это пустышка достаточная для начала создания ЛЮБОЙ программы, все что нужно еще, это reference manual.

Show LPC1768


В папку с проектом кладем:
C:\Keil\ARM\Startup\NXP\LPC17xx\startup_LPC17xx.s
C:\Keil\ARM\INC\NXP\LPC17xx\LPC17xx.h

Опять же пустышка для любой фантазии.

Будет продолжение ...


Последний раз редактировалось lexanet 31 мар 2011, 21:42, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 18:14 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Дальше.

Если не хотим ручками и reference manual-ом устанавливать источник тактирования и частоту работы проца,
то добавляем немного файлов в свой проект и одну строчку кода.

Show LPC1768


В папку с проектом добавляем:
C:\Keil\ARM\Startup\NXP\LPC17xx\system_LPC17xx.c
После этого мышкой ставим галочки и меняем делители и умножители для получения эелаемой частоты
в файле system_LPC17xx.c.

Show STM32


В папку с проектом добавляем:
C:\Keil\ARM\Startup\ST\STM32F10x\system_stm32f10x.c

И все. Частота работы STM будет выбрана в соответствии с раскоментированной строкой в файле stm32f10x.h.
Для переключения источников тактирования и изменения частоты по ходу выполнения программы, можно использовать
отдельные функции из stm32f10x.h (SetSysClockToHSE(void), SetSysClockTo24(void) и т.д.) или выдрать куски кода
и пользовать их как хочется.

Будет продолжение ...


Последний раз редактировалось lexanet 31 мар 2011, 21:43, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 18:25 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Дальше.

У STM есть классный файлик STM32_Init.c.
Кроме частоты и источника тактирования с помощью него не читая reference manual, можно проинициализировать всю
переферию камня.

Добавляем две строчки, или добавляем при желании использовать предыдущий конфиг (system_stm32f10x.c).

Show STM32


В папку с проектом добавляем:
STM32_Init.c
STM32_Init.h
STM32_Reg.h

Откуда они беруться изначально я не знаю, я брал их в папках с примерами к кейловским платам: C:\Keil\ARM\Boards\Keil\

После добавления файлов в проект в STM32_Init.c можно мышкой понаставить галочек и запустить нужную переферию.

Будет продолжение ...


Последний раз редактировалось lexanet 31 мар 2011, 21:47, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 18:46 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Дальше.

Чтобы из обычной вышеприведенной пустышки сделать RTOS-пустышку, нужно добавить чуток файлов и несколько строчек кода.
Код будет приводится один, изменения для обоих камней будет идентичное.

Show LPC1768


В папку с проектом добавляем:
C:\Keil\ARM\Startup\RTX_Conf_CM.c

В меню кейла: Project->Options for target ... в закладке Target меняем Operating system на RTX Kernel.
И все. На камне работает типа ОСь. Осталось на создавать задач и наслаждаться.

Будет продолжение ...


Последний раз редактировалось lexanet 31 мар 2011, 21:45, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 19:18 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Дальше.

Помыргать светодиодиками в RTOS-е.

У моей LPC 4 светодиода (P1.18, P1.20, P1.21, P1.23), у STM-а 2 светодиода, (PC.8, PC.9).

Порядок такой, прописываем функции инициализации светодиодов, функции включить, выключить, создаем задачи под каждый светодиод,
запускаем задачи, в главной процедуре инитим светодиоды перед запуском RTOS.

Show LPC1768


Все, 4 светодиода будут мигать каждый со своей частотой.

Show STM32


Все, 2 светодиода будут мигать каждый со своей частотой.

Будет продолжение ...


Последний раз редактировалось lexanet 31 мар 2011, 21:47, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 20:26 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
HTTP server на LPC1768.

Назначаем персональный стек для HTTP Server-a, создаем задачу с минимальным приоритетом, с пользовательским стеком, задержку в задаче
не задаем. Перед запуском ОСи не забываем инитить. Добавляем несколько файлов к проекту.

C:\Keil\ARM\RV31\LIB\TCP_CM3.lib
C:\Keil\ARM\RV31\LIB\TCPD_CM3.lib
C:\Keil\ARM\RL\TCPnet\Drivers\EMAC_LPC17xx.c
C:\Keil\ARM\RL\TCPnet\Drivers\EMAC_LPC17xx.h
C:\Keil\ARM\RL\TCPnet\SRC\Net_Config.c
C:\Keil\ARM\RL\TCPnet\SRC\Net_Debug.c
C:\Keil\ARM\RL\TCPnet\SRC\Net_Config.h

Show LPC1768



После всего этого, контроллер будет пинговаться по адресу, заданному в Net_Config.c.
Там же включаются дополнительные сетевые сервисы, например HTTP Server. Если его включить и зайти после заливки
IE по адресу контроллера, получим страницу с ошибкой. Но сервак уже работает, осталось добавить свою страницу.

PS. У меня при пинге и любой попытке достучаться по сети до контроллера RTOS висла, в RTX_Conf_CM.c поставил галочку
в Run in privileged mode и все заработало.

Про WEB-страничку дальше будет ...


Последний раз редактировалось lexanet 31 мар 2011, 21:48, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 21:10 
Супермодератор
Аватара пользователя

Зарегистрирован: 23 апр 2010, 12:58
Сообщения: 5892
Откуда: Москва/Саратов
Хм... а почему-бы вам не выложить все это в виде статьи на http://we.easyelectronics.ru ? Форум все-таки больше для обсуждения и т.п., а вот на we этот материал будет очень кстати.

_________________
http://d.64h.me/


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 21:17 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Не писатель я, слог суховат, да и маловато для статьи, имхо, пара постов осталось. И как раз хотелось бы обсуждения, я же новичек, пишу в слепую, может не правильно, народ почитает и поправит.
Но, если администрация настоит, перенесу.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 22:25 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Чуток назад.

Тактирование на STM32. Выдрано из system_stm32f10x.c и оформлено в виде отдельных функций.

Show STM32 Clock


В процессе выполнения кода можно вызывать функции SetClockHSI (void), SetClockHSE (void), SetClockPLL (void) и менять производительность/прожорливость камня. А еще, вроде, можно затактировать от RTC-овского кристала, если он есть и от встроенного LSI на 40 Кгц.

Дальше будет ...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 23:23 
Старожил

Зарегистрирован: 29 окт 2010, 23:55
Сообщения: 327
Да в таком же формате (даже этот же текст) можно выложить

_________________
http://angel5a.narod.ru - LPC/STM8/anything yet?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 31 мар 2011, 23:27 
Заглядывает иногда

Зарегистрирован: 10 фев 2010, 00:33
Сообщения: 198
Откуда: Нижний Новгород
Здорово)))) Тоже надо заняться STM)))

_________________
http://chyvack.ru/ Умные используют компьютер для экономии времени, дураки - чтобы его потратить...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 00:56 
Старожил
Аватара пользователя

Зарегистрирован: 06 ноя 2010, 15:24
Сообщения: 711
Откуда: Украина, Николаев
Не понял как запустить RTOS.
Где взять RTX_Conf_CM.c ???


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 01:09 
Старожил

Зарегистрирован: 23 окт 2010, 22:18
Сообщения: 277
Откуда: г. Пермь
Да, да... Выложите это лучше в личный блог на WE. Читать гораздо удобней будет чем на форуме. А в комментах там и обсудить можно, ну и здесь обсуждение тоже можно оставить..
Я тоже не писатель. А когда успел с десяток тем в блог накатать и еще за сотню комментариев - сам поражаюсь. Тем более что в ЖЖ у меня блог больше года висит и там всего 3 коротеньких заметки :D


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 08:03 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
kontroller писал(а):
Не понял как запустить RTOS.
Где взять RTX_Conf_CM.c ???


У меня этот файл лежит тут: C:\Keil\ARM\Startup\RTX_Conf_CM.c. Еще его можно найти в каждом кейловском примере, посвященном RTX и Cortex-M3: C:\Keil\ARM\Boards\Keil.

Например:
C:\Keil\ARM\Boards\Keil\MCB1700\RTX_Traffic
C:\Keil\ARM\Boards\Keil\MCBSTM32\RTX_Traffic


Вложения:
RTX_Conf_CM.c [5.88 Кб]
Скачиваний: 561
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 09:48 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
dcoder писал(а):
Хм... а почему-бы вам не выложить все это в виде статьи на http://we.easyelectronics.ru ? Форум все-таки больше для обсуждения и т.п., а вот на we этот материал будет очень кстати.


Перенес все на http://we.easyelectronics.ru/lexanet/stm32vldiscoverymbed-nxp-lpc1768rtoskeil.html, пожалуйста, удалите кто нить посты с исходниками.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 10:09 
Старожил

Зарегистрирован: 23 окт 2010, 22:18
Сообщения: 277
Откуда: г. Пермь
lexanet писал(а):
Перенес все на http://we.easyelectronics.ru/lexanet/stm32vldiscoverymbed-nxp-lpc1768rtoskeil.html, пожалуйста, удалите кто нить посты с исходниками.


Ссылка битая. Проверьте блог. Я Вашей статьи там не нашел.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 12:41 
Старожил
Аватара пользователя

Зарегистрирован: 30 окт 2010, 17:43
Сообщения: 372
да не надо удалять,на форуме обсуждать удобней,имхо

_________________
"Арфы нет!Возьмите бубен."


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 01 апр 2011, 13:05 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Продолжение:
http://we.easyelectronics.ru/lexanet/stm32vldiscoverymbed-nxp-lpc1768rtoskeil-chast-2.html

Лучше код с форума убрать, я все равно сюда больше выкладывать не буду, получиться чтото тут, а остальное там.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 05 апр 2011, 13:11 
Заглядывает иногда

Зарегистрирован: 31 мар 2011, 16:37
Сообщения: 141
Откуда: Анапа
Изображение

Отличная книжка по RTX RTOS от кейла и о Real-Time Library в том числе:

Getting Started KEIL RL-ARM


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32VLDISCOVERY+mbed NXP LPC1768+RTOS+KEIL
СообщениеДобавлено: 05 апр 2011, 19:19 
Заглядывает иногда

Зарегистрирован: 28 янв 2010, 23:58
Сообщения: 99
где lpc1768 mbed купил?


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 22 ] 


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB