Aus RN-Wissen.de
Version vom 22. September 2007, 11:59 Uhr von 2Of4 (Diskussion | Beiträge) (Versenden von Emails's direkt vom RN-Control-Board aus)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
LiFePO4 Speicher Test

Versenden von Emails's direkt vom RN-Control aus


Der WebServer "MicroWebServ" (Download von www.csmicrosystems.com [1]) ermöglicht das Versenden von Emails direkt vom RN-Control aus. Durch bestimmte Parameter im RN-Control-Source-Code wird die Email über die COM-Schnittstelle an den WEB-Server übergeben. Der WEB-Server leitet darauf hin sofort die Email an den im Board eingestellten Email-Server weiter. Hier die Parameter für den Board-Source-Code (siehe Help-Datei des WebServers):

E0 = MailServer

E1 = Send To

E1Cc = Carbon Copy to

E1BCc = Blind Carbon Copy

E2 = Mail From

E3 = Mail Subject

E4 = File Attachment

E5 = Message Text

Zu verstehen ist das am besten an einem Beispiel.

Hier nun ein Beispiel für das generelle versenden einer Email:

$regfile = "m32def.dat"                                     ' Bestimmung des Prozessors
$crystal = 16000000                                         ' Quarzfrequenz
$baud = 9600                                                ' RS232-Uebertragungsrate
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Status As Word
Const Mailserver = "E0=eigener.emailserver.de"
Const Mailto = "empfaenger@emailadresse.de"
Const Mailfrom = "eigene@emailadresse.de"
Print Mailserver;
Print "&E1=" ; : Print Mailto;
Print "&E2= " ; : Print Mailfrom;
Print "&E3=RN-Control-Mitteilung";
Print "&E5=Das ist eine Mitteilung des RN-Control-";
End

Hier nun ein Beispiel, bei der eine Email versendet wird, nachdem die Taste 1 gedrückt wurde:

Declare Sub Senden()
Declare Function Tastenabfrage() As Byte
Declare Sub Nichts()
$regfile = "m32def.dat"                                     ' Bestimmung des Prozessors
$crystal = 16000000                                         ' Quarzfrequenz
$baud = 9600                                                ' RS232-Uebertragungsrate
$hwstack = 32
$framesize = 32
$swstack = 32
Dim Taste As Byte
Dim Ton As Integer
config ADC = Single , Prescaler = Auto
Config Pina.7 = Input                                       ' Für die Tastenabfrage konfigurieren
Porta.7 = 1                                                 ' Port für Tastenabfrage in einen definierten Zustand stellen
  Print "Programm ist gestartet"
  Do
     Taste = Tastenabfrage()                               ' Ist eine Taste gedrückt gedrückt worden?
     If Taste <> 0 Then
        Select Case Taste
           Case 1
            Print "Taste 1 wurde gedrückt"
            Gosub Senden                                   ' Wird Taste 1 gedrückz, dann versende eine Email
           Case 2
              Print "Taste 2 wurde gedrückt"
              Gosub Nichts                                 ' es soll keine Email versendet werden
           Case 3
              Print "Taste 3 wurde gedrückt"
              Gosub Nichts                                 ' es soll keine Email versendet werden
           Case 4
              Print "Taste 4 wurde gedrückt"
              Gosub Nichts                                 ' es soll keine Email versendet werden
           Case 5
              Print "Taste 5 wurde gedrückt"
              Gosub Nichts                                 ' es soll keine Email versendet werden
        End Select
     End If
  Loop
End
Function Tastenabfrage() As Byte
  Local Ws As Word
  Tastenabfrage = 0
  Ton = 600
  Start Adc
  Ws = Getadc(7)
  If Ws < 500 Then
     Select Case Ws
        Case 400 To 450
           Tastenabfrage = 1
           Ton = 550
        Case 330 To 380
           Tastenabfrage = 2
           Ton = 450
        Case 260 To 305
           Tastenabfrage = 3
           Ton = 450
        Case 180 To 220
           Tastenabfrage = 4
           Ton = 400
        Case 90 To 130
           Tastenabfrage = 5
           Ton = 350
        Case Else
           Print "Tastenabfrage anpassen ADC-Wert=" ; Ws
     End Select
  End If
End Function
Sub Senden()
  Dim Status As Word
  Const Mailserver = "E0=eigener.emailserver.de"               ' Emailseerver, über die die Email versendet werden soll
  Const Mailto = "empfaenger@emailadresse.de"              ' Adresse des Empfängers
  Const Mailfrom = "eigene@emailadresse.de"              ' Adresse des Absenders
  Print Mailserver;
  Print "&E1=" ; : Print Mailto;
  Print "&E2= " ; : Print Mailfrom;
  Print "&E3=RN-Control-Mitteilung";                     ' Subject der zu versendenen Email
  Print "&E5=Das ist beine Mitteilung des RN-Control";       ' Textinhalt der zu versendenen Email
End Sub
Sub Nichts()
  Print " Bla Bla Bla Nichts!"
End Sub

LiFePO4 Speicher Test