Aktuelle Zeit: 25.01.2020 01:13

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 16 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 02.04.2011 12:43 
Offline

Registriert: 24.08.2005 19:52
Wohnort: Stadtallendorf
Was soll das?

Code:

For i=0 To 6
  Debug @Byte(i)
Next



wohl eher so:

Code:

For i=0 To 6
  Debug Byte(i)
Next


_________________
PB v5.62 x86/x64
Windows 10 Pro 64bit


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 02.04.2011 13:16 
Offline

Registriert: 15.10.2004 17:42
Evtl. liegt es ja an dem Array.
Definiere mal für jedes Byte eine Variable.
Code:
ADC.b
Portb.b
Portc.b
Portd.b
DatenPortB.b
DatenPortC.b
DatenPortD.b


und schicke die nacheinander rüber. Der AVR kann
sowieso nur Byte für Byte einlesen. Dann mal beides
probieren :

Code:
WriteSerialPortData(port, @ADC)
WriteSerialPortData(port, @Portb)
usw.
oder
WriteSerialPortString(port, Chr(ADC))
WriteSerialPortString(port, Chr(Portb))
usw.


oder halt mal einzelne Strings evtl. mal
mit Chr(13).

Da gibts ja viele Möglichkeiten, die man ausprobieren
kann.

Wie sieht denn das Empfangen (Request) aus ?
Evtl. nimmt der AVR die Daten an und die Empfangs-
routine stimmt nicht. Da würde ich auch nur immer
byteweise empfangen :

Code:
While AvailableSerialPortInput(port)
        ReadSerialPortData(port, @s_byte,1)
        ; s_byte ist eine Chr - Variable --> s_byte.c
        text2 = Chr(s_byte)
        ; hier mal testen, ob Bytes kommen
 Wend 


Wie oben schon gesagt, gibt es mehrere Möglichkeiten.

_________________
PB 5.60


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 02.04.2011 14:50 
Offline
Admin
Benutzeravatar

Registriert: 29.08.2004 11:27
µPIO.pdf
µPIO Software
in Profilab Expert werden noch weitere Links ausgegeben:

http://www.electronic-software-shop.com ... pio-c-2_28

Vielleicht kann man ohne Hardware damit was anfangen.
[Edit]
Zitat:
...PS: 49 € ist aber ganz schön teuer für so ein Board
mit USB + TTL Wandler, AVR, und ein paar Kleinigkeiten.


Er hätte auch dieses Board ungeflasht nehmen können.
http://www.electronic-software-shop.com ... pio-c-2_28
Dann hätte er ca. 20€ gespart, wenn er den AVR selbst über ISP programmieren kann.

Ich habe den Source oben nochmal angepasst, da es eigentlich sieben Bytes sind, die geschickt werden müssen.
Bei Dim.. müssten dann auch 7 angegeben werden, womit erst dann eine Antwort vom AVR ausgelöst werden
würde und daraufhin müssten 15 Bytes erst empfangen werden, die ausgewertet werden können.

[/Edit]


Gruß Falko

_________________
Bild
Win10 Pro 64-Bit, PB_5.4,GFA-WinDOS, Powerbasic9.05-Windows, NSBasic/CE, NSBasic/Desktop, NSBasic4APP, EmergenceBasic


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 03.04.2011 10:15 
Offline

Registriert: 06.12.2006 02:29
Wohnort: Bayern
Habe leider keine Ahnung von AVR programmieren.
Bin aber ein Stück weiter gekommen, da ich jetzt wenigstens eine Antwort vom AVR bekomme.
Das Delay(70) hat gefehlt.

Code:
Dim Request.b(6)
Dim Response.b(14)

Request(0)=%000001
Request(1)=%111111
Request(2)=%111111
Request(3)=%111111
Request(4)=%111111
Request(5)=%111111
Request(6)=%111111

OpenSerialPort(6, "COM6", 57600, #PB_SerialPort_NoParity, 8, 1, #PB_SerialPort_NoHandshake, 1024, 1024)
Delay(70)

WriteSerialPortData(6, @Request(), 7)

ReadSerialPortData(6, @Response(), 15)

CloseSerialPort(6)

For i=0 To 14
  Debug Response(i)
Next


Debugger Ausgabe.

63
63
61
3
-1
3
-1
3
-1
3
-1
3
-1
3
-1

Gruß, tinux


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 03.04.2011 11:16 
Offline

Registriert: 15.10.2004 17:42
Da lag ich mit dem Delay() ja richtig.
Mußt halt nur in deiner Doku schauen, was
da zurück kommt bzw. wie es interpretiert
werden sollte.

Kommt halt darauf an, wie der AVR programmiert
ist. Also ob nur über Polling auf die Daten an der
RS232 gewartet wird, oder halt über Interrupt.
Ich machs am liebsten über Interrupt, da hier
keine Daten verloren gehen können.

Da die Karte (bzw. der AVR) auch selbst programmiert
werden kann, kannst auch mal bei http://www.myAvr.de
vorbeischauen.
Und die Demo von BASCOM kann bis 4 KB große Programme
compilieren. Das dürfte für kleine Sachen wie hier gerade reichen.
Ich habe mir auf mein AVR MK II Programmer einfach einen
10poligen Wannenstecker gelötet. Somit kann ich mit einem
Flachbandkabel auch andere Boards per ISP programmieren.

_________________
PB 5.60


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: Digitale PIO Karte ansprechen.
BeitragVerfasst: 03.04.2011 20:03 
Offline
Admin
Benutzeravatar

Registriert: 29.08.2004 11:27
Da PB ja auch die Ein und Ausgänge überwachen kann, könnte man
doch auch ohne dem delay folgendes machen, oder?
Code:
;....
While AvailableSerialPortOutput(6)>0
  WriteSerialPortData(6, @Request(), 7)
Wend
;.....
While AvailableSerialPortInput(15)>0
  ReadSerialPortData(6, @Response(), 15)
Wend

;.....
Gruß, Falko

_________________
Bild
Win10 Pro 64-Bit, PB_5.4,GFA-WinDOS, Powerbasic9.05-Windows, NSBasic/CE, NSBasic/Desktop, NSBasic4APP, EmergenceBasic


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 16 Beiträge ]  Gehe zu Seite Vorherige  1, 2

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye