В данной статье демонстрируется возможность отправки уведомлений на компьютер и далее на iПодобные устройства.
Цели могут быть различными — фиксирование изменения температур, давления и прочих диагностических вещей. Каждый решит что именно ему нужно.
Микроконтроллеры Renesas, содержащий в себе 165 DMIPS RX600 ядро, 512 Кбайт флеш-памяти, и периферийные
хорошо подходят благодаря наличию уже готовых к применению оценочных комплектов, которые будут использованы без внесения, с нашей стороны, каких-либо изменений.

Для получения информации с микроконтроллера у нас должны быть установлены Growl и Prowl программные компоненты.
Growl — система уведомления для MacOS и Windows о событиях, произошедших в системе пользователя. Например, о принятой почте или о завершении загрузки файла, отображение событий, происходящих на удаленном компьютере.
Prowl — клиентская часть сервера Growl, которые и будут использоваться нами на iPhone,IPad и IPod touch.
Благодаря этому приложению компьютер, подключенный к Интернету, через сервер Growl способен отправлять сообщения на устройство на базе iOS, которые будут определяться как push-уведомления. Такая функция дает возможность пользователю не сидеть перед компьютером в ожидании новых Growl-сообщений, поскольку они могут быть автоматически перенаправлены на Prowl-клиент. Приложение доступно для приобретения с iTunes App Store и его цена составляет $2,99.

В данном примере используется Node.js (серверная реализация языка программирования JavaScript, основанная на движке V8. Предназначена для создания масштабируемых распределённых сетевых приложений, таких как веб-сервер. Node.js по целям использования сходен с фреймворками Twisted на языке Python и EventMachine на Ruby. В отличие от большинства программ JavaScript, этот фреймворк исполняется не в браузере клиента, а на стороне сервера), но может быть реализовано с помощью PHP прокси-сервера.
Полный листинг кода доступен в информации по применению на сайте Renesas.
В нашем демонстрационном приложении микроконтроллер Renesas RX62N взаимодействует с Node.js-сервером через протокол TCP/IP на базе интерфейса Ethernet.Приложение для RX62N содержит в себе процесс AppProwlTask(), который ответственен за обработку нажатий кнопок на плате и отправку соответствующих сообщений через UDP на Node.js-сервер. Когда происходит нажатие кнопки SW1 (IRQ8), вызывается соответствующая ему подпрограмма обработки прерывания (ISR) и записывается значение «8» в очередь, которую AppProwlTask() и ожидает. По получению из очереди этого сообщения с температурного датчика на плате считывается температура, значение которой затем передается через UDP на Node.js-сервер.
Информация о применении, содержащая полный листинг исходного кода для Node.js, может быть загружена с веб-сайта компании Renesas. Этот код обеспечивает функциональность сервера, отправляющего запрос от RX62N-устройства на Prowl-сервер через Интернет посредством Prowl API. Скрипт UDP_Server.js также доступен для загрузки вместе с информацией о его применении.
Чтобы использовать скрипт, необходимы некоторые настройки:
• Встроке №5 содержится определение переменной prowlApiKey. Эта строка должна быть модифицирована так, чтобы пользовательский Prowl API-ключ был вставлен в одиночные кавычки. Ключ Prowl API доступен на сайте Prowl после регистрации по адресу [http://www.prowlapp.com/api.php].
• Строка скрипта №74 содержит IP-адрес машины, на которой запущен скрипт. Этот IP должен быть изменен на соответствующий адрес пользовательской системы.
rX62N-приложения Средства разработки, требуемые для сборки и запуска приложения RX62N на базе платы YRDKRX62N, могут быть загружены из [http://am.renesas.com/products/tools/introductory_evaluation_tools/renesas_demo_kits/yrdkrx62n/child_folder/peer/install_child.jsp].
После установки загрузите и установите компилятор GNURX v11.02 MP1 [ www.kpitgnutools.com/latestToolchain.php]. Рабочая среда для интегрированной среды программирования HEW (High-Performance Embedded Workshop) вместе с указаниями по применению в zip-файле может быть открыта или двойным кликом, или посредством навигации в файле ..\Software\EvalBoards\Renesas\YRDKRX62N\GNURX\GNURX.hws.
Файл app.c содержит код процесса AppProwlTask(). Этот процесс ожидает готовности TCP/IP-стека и интерфейса, а затем ждет сообщений, помещаемых в очередь. Ключевая информация в очереди используется для определения нажатой кнопки, после чего формируется соответствующая текстовая строка, которая и передается через UDP по IP-адресу Node.js-сервера. Этот IP-адрес жестко запрограммирован в нашей задаче, но, если необходимо, может конфигурироваться динамически. В демонстрационном исходном коде используется порт 40000.
После передачи очередного сообщения процесс переходит к ожиданию следующего в очереди. Пользователю будет необходимо изменить IP-адрес, используемый для адресации Node.js-сервера.
Литература.
1.RX62N SendingiOS Push Notifications to aniPhone,
Ipod touch or iPad — Micrium MicroC/OS-III &
MicroC/TCP-IPVersion. www.renesas.com
products/mpumcu/rx/Application_Notes.jsp
2. Информация о отладочном наборе RSKRX62N
(Renesas Starter Kit). www.renesas.eu
products/tools/introductory_evaluation_tools/
renesas_starter_kits/rsk_rx62n/rsk_rx62n.jsp
3. Richardson M. Snail mail push alerts. blog.
makezine.com/archive/2010/12/snail-mail-pushalerts.html
4. Универсальная глобальная система оповещения
пользователя в операционной системе Mac OSX
Growl. www.growl.info
5. Prowl-Growl-клиент. www.prowlapp.com
Цели могут быть различными — фиксирование изменения температур, давления и прочих диагностических вещей. Каждый решит что именно ему нужно.
Микроконтроллеры Renesas, содержащий в себе 165 DMIPS RX600 ядро, 512 Кбайт флеш-памяти, и периферийные
- Ethernet-контроллер
- контроллер прямого доступа к памяти для Ethernet-контроллера
- таймер для генерации интервалов времени(16-разрядный)
хорошо подходят благодаря наличию уже готовых к применению оценочных комплектов, которые будут использованы без внесения, с нашей стороны, каких-либо изменений.

Для получения информации с микроконтроллера у нас должны быть установлены Growl и Prowl программные компоненты.
Growl — система уведомления для MacOS и Windows о событиях, произошедших в системе пользователя. Например, о принятой почте или о завершении загрузки файла, отображение событий, происходящих на удаленном компьютере.
Prowl — клиентская часть сервера Growl, которые и будут использоваться нами на iPhone,IPad и IPod touch.
Благодаря этому приложению компьютер, подключенный к Интернету, через сервер Growl способен отправлять сообщения на устройство на базе iOS, которые будут определяться как push-уведомления. Такая функция дает возможность пользователю не сидеть перед компьютером в ожидании новых Growl-сообщений, поскольку они могут быть автоматически перенаправлены на Prowl-клиент. Приложение доступно для приобретения с iTunes App Store и его цена составляет $2,99.

В данном примере используется Node.js (серверная реализация языка программирования JavaScript, основанная на движке V8. Предназначена для создания масштабируемых распределённых сетевых приложений, таких как веб-сервер. Node.js по целям использования сходен с фреймворками Twisted на языке Python и EventMachine на Ruby. В отличие от большинства программ JavaScript, этот фреймворк исполняется не в браузере клиента, а на стороне сервера), но может быть реализовано с помощью PHP прокси-сервера.
Полный листинг кода доступен в информации по применению на сайте Renesas.
В нашем демонстрационном приложении микроконтроллер Renesas RX62N взаимодействует с Node.js-сервером через протокол TCP/IP на базе интерфейса Ethernet.Приложение для RX62N содержит в себе процесс AppProwlTask(), который ответственен за обработку нажатий кнопок на плате и отправку соответствующих сообщений через UDP на Node.js-сервер. Когда происходит нажатие кнопки SW1 (IRQ8), вызывается соответствующая ему подпрограмма обработки прерывания (ISR) и записывается значение «8» в очередь, которую AppProwlTask() и ожидает. По получению из очереди этого сообщения с температурного датчика на плате считывается температура, значение которой затем передается через UDP на Node.js-сервер.
Настройка и запуск Node.js-скрипта
Информация о применении, содержащая полный листинг исходного кода для Node.js, может быть загружена с веб-сайта компании Renesas. Этот код обеспечивает функциональность сервера, отправляющего запрос от RX62N-устройства на Prowl-сервер через Интернет посредством Prowl API. Скрипт UDP_Server.js также доступен для загрузки вместе с информацией о его применении.
Чтобы использовать скрипт, необходимы некоторые настройки:
• Встроке №5 содержится определение переменной prowlApiKey. Эта строка должна быть модифицирована так, чтобы пользовательский Prowl API-ключ был вставлен в одиночные кавычки. Ключ Prowl API доступен на сайте Prowl после регистрации по адресу [http://www.prowlapp.com/api.php].
• Строка скрипта №74 содержит IP-адрес машины, на которой запущен скрипт. Этот IP должен быть изменен на соответствующий адрес пользовательской системы.
Настройка, сборка и запуск RX62N-приложения
rX62N-приложения Средства разработки, требуемые для сборки и запуска приложения RX62N на базе платы YRDKRX62N, могут быть загружены из [http://am.renesas.com/products/tools/introductory_evaluation_tools/renesas_demo_kits/yrdkrx62n/child_folder/peer/install_child.jsp].
После установки загрузите и установите компилятор GNURX v11.02 MP1 [ www.kpitgnutools.com/latestToolchain.php]. Рабочая среда для интегрированной среды программирования HEW (High-Performance Embedded Workshop) вместе с указаниями по применению в zip-файле может быть открыта или двойным кликом, или посредством навигации в файле ..\Software\EvalBoards\Renesas\YRDKRX62N\GNURX\GNURX.hws.
Файл app.c содержит код процесса AppProwlTask(). Этот процесс ожидает готовности TCP/IP-стека и интерфейса, а затем ждет сообщений, помещаемых в очередь. Ключевая информация в очереди используется для определения нажатой кнопки, после чего формируется соответствующая текстовая строка, которая и передается через UDP по IP-адресу Node.js-сервера. Этот IP-адрес жестко запрограммирован в нашей задаче, но, если необходимо, может конфигурироваться динамически. В демонстрационном исходном коде используется порт 40000.
После передачи очередного сообщения процесс переходит к ожиданию следующего в очереди. Пользователю будет необходимо изменить IP-адрес, используемый для адресации Node.js-сервера.
Литература.
1.RX62N SendingiOS Push Notifications to aniPhone,
Ipod touch or iPad — Micrium MicroC/OS-III &
MicroC/TCP-IPVersion. www.renesas.com
products/mpumcu/rx/Application_Notes.jsp
2. Информация о отладочном наборе RSKRX62N
(Renesas Starter Kit). www.renesas.eu
products/tools/introductory_evaluation_tools/
renesas_starter_kits/rsk_rx62n/rsk_rx62n.jsp
3. Richardson M. Snail mail push alerts. blog.
makezine.com/archive/2010/12/snail-mail-pushalerts.html
4. Универсальная глобальная система оповещения
пользователя в операционной системе Mac OSX
Growl. www.growl.info
5. Prowl-Growl-клиент. www.prowlapp.com