Arduino + Delphi
- Войдите на сайт для отправки комментариев
Вс, 22/01/2012 - 22:12
Добрый день!
Я решил написать собственный email-нотификатор.(Просто загорается лампочка при новом письме).
Програма на Arduino -
int outPin = 12; // Output connected to digital pin 12 int mail = LOW; // Is there new mail? int val; // Value read from the serial port void setup() { pinMode(outPin, OUTPUT); // sets the digital pin as output Serial.begin(9600); Serial.flush(); } void loop() { // Read from serial port if (Serial.available()) { val = Serial.read(); Serial.println(val); if (val == 'M') mail = HIGH; else if (val == 'N') mail = LOW; } // Set the status of the output pin digitalWrite(outPin, mail); }
Но я решил сделать все true) И хочу написать програму на Delphi, которая проверяля бы письма на ящике.
Так вот вопрос, кто-нибудь знает, как сделать проверку на все com-порты? То есть я втыкаю через USB Arduino, a Delphi прозванивает их все и находит нужный? И еще, как отправить подтверждение нового письма с Delphi на Arduino.
Сам только новичок, так что не судите строго.
Заранее благодарю!
Delphi прозванивает их все и находит нужный?
Занимался подобной темой и немного знаком. Скажите ,а чем отличается нужный COM от ненужного?
У меня есть большой проект работы с СОМ портом на Делфи . После некоторых переделок им можно воспользоваться.
У меня система отопления построена на Arduino ,а управление и контроль параметров из внешней программы на Делфи. Там применены блоки из этого исходника. Исходник могу дать. Проект большой, есть что изучать.
Так вот вопрос, кто-нибудь знает, как сделать проверку на все com-порты? То есть я втыкаю через USB Arduino, a Delphi прозванивает их все и находит нужный? И еще, как отправить подтверждение нового письма с Delphi на Arduino.
Delphi-компонент для работы с COM-портами имеется?
разработайте свой протокол общения с Arduino (набор команд-ответов) - он вам в любом случае понадобится для пересылки информации о поступивших письмах. Среди прочего определите и Handshake-команду (что-то типа "здорово" - "здоровее видали"). Последовательно во все найденные COM-порты посылаете с компьютера Handshake-команду и тот порт, который ответит правильно, и есть ваше Ардуинко.
Как отправить сообщение о поступлении писем? Да отправляете в COM-порт любую белиберду типа "arrived: 15 mails", а уж микроконтроллер, получив все это в UART-буфер (почитайте о классе Serial в разделе Программирование), читает информацию с помощью Serial.read(), расшифровывает и реагирует соответственно.
Delphi прозванивает их все и находит нужный?
Занимался подобной темой и немного знаком. Скажите ,а чем отличается нужный COM от ненужного?
У меня есть большой проект работы с СОМ портом на Делфи . После некоторых переделок им можно воспользоваться.
У меня система отопления построена на Arduino ,а управление и контроль параметров из внешней программы на Делфи. Там применены блоки из этого исходника. Исходник могу дать. Проект большой, есть что изучать.
Был бы очень рад исходникам! :) Спасибо!
Delphi-компонент для работы с COM-портами имеется?
Имеете ввиду Serial библиотеку?
разработайте свой протокол общения с Arduino (набор команд-ответов) - он вам в любом случае понадобится для пересылки информации о поступивших письмах. Среди прочего определите и Handshake-команду (что-то типа "здорово" - "здоровее видали"). Последовательно во все найденные COM-порты посылаете с компьютера Handshake-команду и тот порт, который ответит правильно, и есть ваше Ардуинко.
Как отправить сообщение о поступлении писем? Да отправляете в COM-порт любую белиберду типа "arrived: 15 mails", а уж микроконтроллер, получив все это в UART-буфер (почитайте о классе Serial в разделе Программирование), читает информацию с помощью Serial.read(), расшифровывает и реагирует соответственно.
Я думал тупо отправлять команду в Delphi "whoareyou" на все порты и eсли ответ с порта "Arduino", то считать этот порт нужным.
Я думал тупо отправлять команду в Delphi "whoareyou" на все порты и eсли ответ с порта "Arduino", то считать этот порт нужным.
Ну это оно и есть - очень низки шансы того, что какое-нибудь другое устройство, кроме вашего, получив по COM-порту ваше "whereareyou", поймет эту команду и тем более ответит в точности до последней буковки и ее регистра.
Имеете ввиду Serial библиотеку?
Давно с Delphi не работал - может быть и Serial.
compconnect.ru/2010/04/rabota-s-com-portom-v-delphi-pri-pomoshhi-winapi/ - здесь написано как работать с ком-портом через WinAPI.
Зачем в вашем проекте ардуина?
Хотя...поиграться тоже можно...
Зачем в вашем проекте ардуина?
Хотя...поиграться тоже можно...
Можно как то обойтись?
Я решил написать собственный email-нотификатор.(Просто загорается лампочка при новом письме)
Если ардуина только для этого - да, ну а если хочется "поиграться" с ардуиной (что присуще многоим) - то без неё никак)))
Я решил написать собственный email-нотификатор.(Просто загорается лампочка при новом письме)
Если ардуина только для этого - да, ну а если хочется "поиграться" с ардуиной (что присуще многоим) - то без неё никак)))
Нет, нужен именно нотификатор))
Скачайте себе AsyncFree104.zip . Это реально работающий проект. Модифицируйте его и получите работу с СОМ портом.
Хочу заметить ,что в вашей задумке СОМ порт не так сложен, как опросить почту из Делфи, здесь можно столкнуться с множеством всевозможных ньюансов. Работайте .Удачи.
Если не сможете скачать дайте хоть почту Вашу.
Можно скроллок на клавиатуре зажигать, и ардуина не нужна ))))
Вот и доп**лся.. надо писать программу, которая
1) слушает (listen) порт на tcpip и получает на него данные
2) обрабатывает (группирует данные в массив)
3) отправляет все это дело в компорт..
С компортов пока вопросов нет, но посоветуйте решение под 1) вопрос? Еще не работал на таком уровне, да и дельфи последний раз пять лет назад пользовал.. и то в основном - базы и отчеты..
как с вами связаться?? скинте на почту проект gbi0000010@hotmail.ru
Delphi прозванивает их все и находит нужный?
Занимался подобной темой и немного знаком. Скажите ,а чем отличается нужный COM от ненужного?
У меня есть большой проект работы с СОМ портом на Делфи . После некоторых переделок им можно воспользоваться.
У меня система отопления построена на Arduino ,а управление и контроль параметров из внешней программы на Делфи. Там применены блоки из этого исходника. Исходник могу дать. Проект большой, есть что изучать.
как с вами связаться?? скинте на почту проект gbi0000010@hotmail.ru