Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 18 von 18
  1. #11

    Standard

    Vielen Dank für eure Mühe. So, bin jetzt fertig. Und es läuft.
    Der PC sendet über die Schnittstelle ein Bit, welches eine Aufforderung zur Messung darstellt. Der "Messvorgang" wird gestartet und der Wert wieder zurück an den PC gesendet.

    Dort findet dann die Auswertung statt - ...okay, dass habe ich noch nicht, aber mit PHP wird das schon


    Mein Zusatz:
    Das Bit, welches den Messvorgang einleitet, entscheidet darüber, ob die Diode leuchtet oder nicht. PHP wird dann entscheiden, ob eine 1 (Diode an) oder 0 (Diode aus) gesendet wird. Das kann man ja irgendwie mit einbauen...


    Vielen Dank!

    Beste Grüße
    - ichwillbis -

  2. #12
    Moderator
    Registriert seit
    27.10.2008
    Beiträge
    6.101
    Sprachen
    Bascom Assembler

    Standard

    Hi,

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Vielen Dank für eure Mühe. So, bin jetzt fertig. Und es läuft.
    Der PC sendet über die Schnittstelle ein Bit, welches eine Aufforderung zur Messung darstellt. Der "Messvorgang" wird gestartet und der Wert wieder zurück an den PC gesendet.
    wie jetzt hab ich da irgendwas nicht richtig verstanden ?
    wars das jetzt ? Erst sind alles bömische Dörfer und auf einmal läuft alles ?
    also irgendetwas paßt hier jetzt nicht zusammen. Irgendwie fühle ich
    mich ein wenig verar...t . Sollte das jetzt nen Test sein wie wir reagieren ?

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Dort findet dann die Auswertung statt - ...okay, dass habe ich noch nicht, aber mit PHP wird das schon
    Wär ja mal nicht schlecht wenn du das Assembler (oder was weiß ich
    für ein Programm) hier reinstellst mit dem du über diese Krüppelhardware
    mit dem Tiny13 die Temperaturdaten mißt und per RS232 (oder was weiß ich
    wie) zum PC überträgst.

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Mein Zusatz:
    Das Bit, welches den Messvorgang einleitet, entscheidet darüber, ob die Diode leuchtet oder nicht. PHP wird dann entscheiden, ob eine 1 (Diode an) oder 0 (Diode aus) gesendet wird. Das kann man ja irgendwie mit einbauen...

    Vielen Dank!

    Beste Grüße
    - ichwillbis -
    Erst geht es nach dem Motto : "Hilfe ich kenne mich überhaupt nicht aus"
    und "totaler Laie" als ob nichtmal minimale Kenntnisse vorhanden sind und
    dann fällt wie durch ein Wunder was funktionierendes vom Himmel.
    Also entweder habe ich hier ne Woche nicht mitbekommen oder was geht
    hier eigentlich ab ? ...

    Gruß
    Dino
    Geändert von dino03 (11.02.2011 um 18:25 Uhr)
    Schwerpunkte: Hardware, Assembler & BASCOM

    AVR-Stammtisch (Usertreffen) ->> Thread <<
    SCC - Der Schaumburger Computer Club
    Die Webseite des SCC ->> sccweb.de <<

  3. #13

    Standard

    Nabend...

    Ja, zwei Nächte, 6 Liter Kaffee und einige Stunden Lesen (und ein paar Erklärung vom Lehrer) und dann ging es eigentlich. Ich meine, irgendwann muss ja was passieren und eine Lösung fällt nicht vom Himmel. Ich habe mir ja nur ein paar Erklärungen, Tipps oder Tricks erhofft und wollte wissen, ob meine Gedankenansätze richtig sind.

    Der Fachlehrer meinte auch, dass wir nicht jeden Befehl bis ins kleinste Detail erklären können müssen. Wir haben jetzt auch eine Vorlage von einem ähnlichen Projekt bekommen und mussten es dann "nur noch" umschreiben.

    Aber "sbi" und "return" usw. sind jetzt etwas klarer.

    Meine Art der Lösung kann ich aber erst in ein paar Wochen posten -> Ist ja ein Schulprojekt und jeder Mitstreiter sollte zunächst versuchen, es erstmal selbst zu lösen. Damit meine ich nicht, dass ich ihm nicht helfen oder meine "Lösung" nicht erklären würde.


    MfG
    -Ichwillbis -

  4. #14
    Moderator
    Registriert seit
    27.10.2008
    Beiträge
    6.101
    Sprachen
    Bascom Assembler

    Standard

    Hi,

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Ja, zwei Nächte, 6 Liter Kaffee und einige Stunden Lesen (und ein paar Erklärung vom Lehrer) und dann ging es eigentlich. Ich meine, irgendwann muss ja was passieren und eine Lösung fällt nicht vom Himmel. Ich habe mir ja nur ein paar Erklärungen, Tipps oder Tricks erhofft und wollte wissen, ob meine Gedankenansätze richtig sind.
    Also die Mamutsitzung ohne Party und Kino

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Der Fachlehrer meinte auch, dass wir nicht jeden Befehl bis ins kleinste Detail erklären können müssen. Wir haben jetzt auch eine Vorlage von einem ähnlichen Projekt bekommen und mussten es dann "nur noch" umschreiben.
    was vorgefertigtes ... das erklärt auch die Geschwindigkeit bei der Lösung

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Aber "sbi" und "return" usw. sind jetzt etwas klarer.
    dann kannst du ja jetzt in Assembler weitermachen

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Meine Art der Lösung kann ich aber erst in ein paar Wochen posten -> Ist ja ein Schulprojekt und jeder Mitstreiter sollte zunächst versuchen, es erstmal selbst zu lösen. Damit meine ich nicht, dass ich ihm nicht helfen oder meine "Lösung" nicht erklären würde.
    na dann laß ich mich mal überraschen wie die Lösung aussieht

    Gruß
    Dino
    Schwerpunkte: Hardware, Assembler & BASCOM

    AVR-Stammtisch (Usertreffen) ->> Thread <<
    SCC - Der Schaumburger Computer Club
    Die Webseite des SCC ->> sccweb.de <<

  5. #15

    Standard

    Zitat Zitat von dino03 Beitrag anzeigen
    Hi,
    Also die Mamutsitzung ohne Party und Kino
    Jap, genau.

    Zitat Zitat von dino03 Beitrag anzeigen
    was vorgefertigtes ... das erklärt auch die Geschwindigkeit bei der Lösung
    Naja, als Hilfestellung diente ein Quellcode für eine optische Alarmanlage sowie ein Dimmerungsschalter für die LED. Einfach war's trotzdem nicht, was aber auch keiner erwartet hat...

    Zitat Zitat von dino03 Beitrag anzeigen
    dann kannst du ja jetzt in Assembler weitermachen
    Also ich sehe bei mir bezüglich Assembler keine Zukunft

    Beste Grüße
    - ichwillbis -

  6. #16

    Standard

    Besteht noch Interesse an der Lösung?

    Gruß

  7. #17
    Moderator
    Registriert seit
    27.10.2008
    Beiträge
    6.101
    Sprachen
    Bascom Assembler

    Standard

    Hallo,

    Zitat Zitat von ichwillbis Beitrag anzeigen
    Besteht noch Interesse an der Lösung?
    grundsätzlich besteht immer Interesse an Lösungen

    Laß dich nicht davon stören wenn mal etwas weniger im Forum los ist oder ein Thread mal ein wenig vor sich hin dümpelt. Es kann sein das die Leute grad zuhause stark eingebunden sind (Kinder, Renovierung, Family, Frau, Garten, ...)

    Also immer her damit

    Gruß
    Dino
    Schwerpunkte: Hardware, Assembler & BASCOM

    AVR-Stammtisch (Usertreffen) ->> Thread <<
    SCC - Der Schaumburger Computer Club
    Die Webseite des SCC ->> sccweb.de <<

  8. #18

    Standard

    Zitat Zitat von dino03 Beitrag anzeigen
    ...stark eingebunden sind (Kinder, Renovierung, Family, Frau, Garten, ...)
    Also gerade der 4. Punkt klingt nach richtig Arbeit...


    Hier die Lösung:

    ;ADC3.asm, AD-Wandler mit Referenz 1,1 V

    .include "tn13def.inc"

    .def A = r16
    .def B = r17
    .def Delay = r18
    .def Count = r19

    ;Port B
    .equ TXD = 1
    .equ RXD = 2


    rjmp Anfang
    Anfang:
    sbi ddrb,TXD ;Datenrichtung TXD
    sbi ddrb,3
    sbi portb,3
    sbi ddrb,0
    rcall AdcInit

    Schleife:
    rcall RdCOM
    rcall schalten
    rcall RdADC
    rcall WrCOM
    rjmp Schleife

    AdcInit:
    ldi A,3 ;Clock / 4
    out ADCSRA,A
    sbi ADCSRA,ADEN ;AD einschalten
    ret

    RdADC:
    ldi A,2
    out ADMUX,A
    sbi ADMUX,ADLAR ;Left adjust
    sbi ADMUX,REFS0 ;1,1 V Referenz
    sbi ADCSRA,ADSC ;Wandlung starten
    ADrdy:
    sbic ADCSRA,ADSC
    rjmp ADrdy
    sbi ADCSRA,ADSC
    ADrdyb:
    sbic ADCSRA,ADSC
    rjmp ADrdyb
    in A,ADCH
    ret



    RdCOM: sbis pinb,RXD ;Empfangen
    rjmp RdCOM
    ldi Delay,58
    D1: dec Delay
    brne D1
    ldi A,0
    ldi Count,8
    L1: lsr A
    sbic pinb,RXD
    ori A,128
    ldi Delay, 38
    D2: dec Delay
    brne D2
    dec Count
    brne L1
    ldi Delay, 38
    D3: dec Delay
    brne D3
    com A
    ret

    WrCOM: sbi portb,TXD ;Senden
    ldi Delay,38
    D4: dec Delay
    brne D4
    ldi Count,8
    L2: sbrc A,0
    rjmp OFF
    rjmp ON
    ON: sbi portb,TXD
    rjmp BitD
    OFF: cbi portb,TXD
    rjmp BitD
    BitD: ldi Delay,38
    D5: dec Delay
    brne D5
    lsr A
    dec Count
    brne L2
    cbi PORTB,TXD
    ldi Delay,38
    D6: dec Delay
    brne D6
    ret

    schalten:
    ldi b,128
    cp a,b
    brlo aus
    cp a,b
    brsh an

    ende:
    ret

    aus:
    cbi portb,0
    rjmp ende

    an:
    sbi portb,0
    rjmp ende






    Und wer auch noch Bock hat, sich's in Excel darstellen zu lassen - hier der VBA Quellcode:

    Private Declare Function OPENCOM Lib "RSAPI.DLL" (ByVal COM$) As Integer
    Private Declare Function CLOSECOM Lib "RSAPI.DLL" () As Integer
    Private Declare Function SENDBYTE Lib "RSAPI.DLL" (ByVal B%) As Integer
    Private Declare Function READBYTE Lib "RSAPI.DLL" () As Integer
    Private Declare Function SENDSTRING Lib "RSAPI.DLL" (ByVal Raus$) As Integer
    Private Declare Function READSTRING Lib "RSAPI.DLL" (ByVal Rein$) As Integer
    Private Declare Function TIMEOUT Lib "RSAPI.DLL" (ByVal ms%) As Integer
    Private Declare Function STRLENGTH Lib "RSAPI.DLL" (ByVal l%) As Integer
    Private Declare Sub STRREAD Lib "RSAPI.DLL" (ByVal Anzeige$)
    Private Declare Sub DELAY Lib "RSAPI.DLL" (ByVal ms%)
    Private Declare Function TIMEREAD Lib "RSAPI.DLL" () As Long
    Private Declare Sub TIMEINIT Lib "RSAPI.DLL" ()

    Private Sub CommandButton1_Click()
    Static x ' Als Static, sonst immer wieder auf null gesetzt !!

    ' Schnittstelle COM1 öffnen

    I = OPENCOM("COM2:9600,N,8,1")
    If I = 0 Then
    MsgBox ("Der COM Port ist nicht verfügbar oder wird von einem anderen Programm genutzt!"), vbCritical, "Warnung"
    CLOSECOM
    Exit Sub
    End If

    DELAY 50

    s = TextBox1.Text

    SENDBYTE (s) ' Befehl zum Senden eines Bytes an die Schnittstelle

    wert = READBYTE ' Warten auf Empfang eines Bytes von der Schnittstelle

    TextBox2.Text = wert ' Ausgeben in Textbox

    x = x + 1

    Worksheets("Tabelle1").Cells(x, 1).Value = wert ' Zeile, Spalte

    End Sub

    Der empfangene Wert wird mittels der Formel U = R * I umgerechnet und fertig ist die Temperatur...


    Grundlage dafür sind zwei, drei Systemdateien im System32-Ordner, zu denen ich nicht mehr viel sagen kann. Sie initialisieren den COM-Port und bereiten die Schnittstelle vor.


    Gruß

 

 

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Ähnliche Themen

  1. 3 LEDs mit Attiny13
    Von compiprofi im Forum Software
    Antworten: 17
    Letzter Beitrag: 09.12.2010, 14:29
  2. Windgeschwindigkeit messen
    Von Fuzzy im Forum Messen physikalischer Größen
    Antworten: 25
    Letzter Beitrag: 01.12.2010, 12:56
  3. Wechselspannung mit AVR messen...
    Von nF!n!ty im Forum ADC
    Antworten: 1
    Letzter Beitrag: 03.11.2010, 18:47
  4. Temperatur Messen mit dem Attiny13
    Von GreenArrow im Forum Allgemeines
    Antworten: 7
    Letzter Beitrag: 23.09.2008, 09:18
  5. Frage zum Programmieren des Attiny13
    Von GreenArrow im Forum Programmierung
    Antworten: 2
    Letzter Beitrag: 12.09.2008, 07:50

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  
Powered by vBulletin® Version 4.2.0 (Deutsch)
Copyright ©2014 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.
Alle Zeitangaben in WEZ +2. Es ist jetzt 19:31 Uhr.