Dazu schau ich im Projekt im PED in dem linken Block auf den internen Variablen nach und such mir eine, die passen könnte. Bisschen probieren ist dabei angesagt, aber man findet sowas recht schnell.
@Frank: Variable auf einem Display ausgeben, ein paar Daten empfangen, ein paar aus dem Puffer holen. So findest du das schnell raus.
Hier (siehe Bild) unter System sieht man die internen Variablen und kann so z.B heraus finden, daß der Grafikspeicher GraphColArr heißt .
Hallo Harry, Danke für den Tipp, ich habe gerade mal nachgeschaut,
aber so richtig etwas gefunden habe ich nicht.
Das müsste ja min ein var als Word sein und nicht als Byte.
_RXCOUNTCDC : Byte; // fällt mir gerade auf, aberr auch nur als Byte.
wäre schon schön wenn man das so machen könnte
Code
var count : word;
count:= SerInpBlockP_TO(UsartCDC, @RxBuff_cdc, 254, 5);
Ähm Frank, ist das bei einem CDC anders als bei einem normalen UART?
Zitat
RXBUFFER (RXBUFFER1), RAMpage Definition der RX-Buffer Länge (Ringbuffer). RXBUFFER erfüllt zwei Funktionen: zum einen werden die Speicherstellen in der gewünschten Anzahl (4..254) bereitgestellt, zum anderen wird, der Receiver im Interrupt betrieben, ansonsten im Polling (wenn RxBuffer nicht definiert ist). Bei der Definition der Bufferlänge mit RxBuffer muss beachtet werden, dass die meisten Prozessoren nur einen relativ kleinen Ram Speicher haben.
Nein das gilt auch hier. Das was du da hast, ist dein privater, eigener Buffer und hat nichts mit dem Define zu tun(?)
Harry
Harry
Moderator
Geschlecht: Herkunft: zwischen Augsburg und Ulm Alter: 61 Beiträge: 2177 Dabei seit: 03 / 2003
Woher weiß ich wieviele Zeichen jetzt im RxBuff_E0 sind ?
Um diese Frage noch zu beantworten: Genau so viele, wie vorher im RxBufferE0 waren.
Aber eines versteh ich immer noch nicht: Wenn der RxBufferE0 max. 255 (oder laut Handbuch 254) Byte groß sein kann, wieso ist dann dein RxBuff_E0 so groß?
TheBeginner
Schreiberling
Geschlecht: keine Angabe Herkunft: Wunsiedel Bayern Alter: 69 Beiträge: 797 Dabei seit: 06 / 2013