INKEY/de
(→(**COPIED FROM ENGLISH PAGE**) =) |
(→Beispiel) |
||
(3 intermediate revisions by one user not shown) | |||
Line 17: | Line 17: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | = <span class="f_Header"> | + | = <span class="f_Header">Anmerkungen</span> = |
<div style="padding: 0px; margin: 0px 0px 0px 4px;"> | <div style="padding: 0px; margin: 0px 0px 0px 4px;"> | ||
{| width="488" cellspacing="0" cellpadding="1" border="1" style="border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;" | {| width="488" cellspacing="0" cellpadding="1" border="1" style="border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;" | ||
Line 25: | Line 25: | ||
| valign="top" width="100%" style="width: 395px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="100%" style="width: 395px; border: 1px solid rgb(0, 0, 0);" | | ||
− | Byte, Integer, Word, Long | + | Byte-, Integer-, Word-, Long- oder String-Variable. |
|- style="vertical-align: top;" | |- style="vertical-align: top;" | ||
Line 32: | Line 32: | ||
| valign="top" width="100%" style="width: 395px; border: 1px solid rgb(0, 0, 0);" | | | valign="top" width="100%" style="width: 395px; border: 1px solid rgb(0, 0, 0);" | | ||
− | + | Konstante Nummer des Software-UART-Kanals. | |
|} | |} | ||
Line 38: | Line 38: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Wenn kein Zeichen ansteht dann wird Null zurückgegeben. | |
− | + | Benutzen Sie IsCharWaiting() um zu prüfen ob ein Zeichen ansteht. | |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Die INKEY-Funktion kann benutzt werden wenn eine serielle Schnittstelle benutzt wird. | |
− | + | Die serielle Schnittstelle kann mit einem Com-Port eines PCs verglichen werden. | |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | + | Eine Null (0) wird zurückgegeben wenn kein Zeichen ansteht. Die Funktion eignet sich daher nur bedingt wenn auch Nullen empfangen werden sollen. Man kann nicht unterscheiden zwischen einer empfangenen Null und dem Fall dass kein Zeichen ansteht. | |
− | In | + | In so einem Fall kann man IsCharwaiting benutzen um herauszufinden ob ein Zeichen ansteht. |
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
Line 58: | Line 58: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | = <span class="f_Header"> | + | = <span class="f_Header">Siehe auch</span> = |
[[WAITKEY]] , [[ISCHARWAITING]] | [[WAITKEY]] , [[ISCHARWAITING]] | ||
Line 66: | Line 66: | ||
<span style="font-family: Arial;"> </span> | <span style="font-family: Arial;"> </span> | ||
− | = <span class="f_Header"> | + | = <span class="f_Header">Beispiel</span> = |
<br/><source lang="bascomavr"> | <br/><source lang="bascomavr"> | ||
Line 79: | Line 79: | ||
$regfile = "m48def.dat" ' specify the used micro | $regfile = "m48def.dat" ' specify the used micro | ||
− | $crystal = 4000000 ' | + | $crystal = 4000000 ' Taktrate |
− | $baud = 19200 ' | + | $baud = 19200 ' Baudrate |
$hwstack = 32 ' default use 32 for the hardware stack | $hwstack = 32 ' default use 32 for the hardware stack | ||
$swstack = 10 ' default use 10 for the SW stack | $swstack = 10 ' default use 10 for the SW stack | ||
Line 87: | Line 87: | ||
Dim A As Byte , S As String * 2 | Dim A As Byte , S As String * 2 | ||
Do | Do | ||
− | A = Inkey() ' | + | A = Inkey() 'ASCII-Zeichen von serieller Schnittstelle empfangen |
's = Inkey() | 's = Inkey() | ||
− | If A > 0 Then ' | + | If A > 0 Then 'es wurde etwas empfangen |
Print "ASCII code " ; A ; " from serial" | Print "ASCII code " ; A ; " from serial" | ||
End If | End If | ||
− | Loop Until A = 27 ' | + | Loop Until A = 27 'bis ESC gedrückt wird |
− | A = Waitkey() ' | + | A = Waitkey() 'Auf ein Zeichen warten |
's = waitkey() | 's = waitkey() | ||
Print Chr(a) | Print Chr(a) | ||
− | ' | + | 'warten bis ESC gedrückt wird |
Do | Do | ||
Loop Until Inkey() = 27 | Loop Until Inkey() = 27 | ||
− | ' | + | 'Wenn binäre Daten und der binäre Wert 0 empfangen werden sollen |
− | ' | + | 'kann man die IScharwaiting() Funktion benutzen. |
− | ' | + | 'IScharwaiting() gibt 1 zurück wenn ein Zeichen empfangen wurde und 0 wenn kein Zeichen empfangen wurde. |
− | ' | + | 'Man kann das Zeichen dann mit inkey oder waitkey einlesen. |
End | End | ||
</source><br/>{{Languages}} | </source><br/>{{Languages}} | ||
[[Category:BASCOM Language Reference/de]] | [[Category:BASCOM Language Reference/de]] |
Latest revision as of 23:42, 21 February 2013
Contents |
Funktion
Gibt den ASCII-Wert des ersten Zeichens aus dem seriellen Buffer zurück.
Syntax
var = INKEY()
var = INKEY(#channel)
Anmerkungen
Var |
Byte-, Integer-, Word-, Long- oder String-Variable. |
Channel |
Konstante Nummer des Software-UART-Kanals. |
Wenn kein Zeichen ansteht dann wird Null zurückgegeben.
Benutzen Sie IsCharWaiting() um zu prüfen ob ein Zeichen ansteht.
Die INKEY-Funktion kann benutzt werden wenn eine serielle Schnittstelle benutzt wird.
Die serielle Schnittstelle kann mit einem Com-Port eines PCs verglichen werden.
Eine Null (0) wird zurückgegeben wenn kein Zeichen ansteht. Die Funktion eignet sich daher nur bedingt wenn auch Nullen empfangen werden sollen. Man kann nicht unterscheiden zwischen einer empfangenen Null und dem Fall dass kein Zeichen ansteht.
In so einem Fall kann man IsCharwaiting benutzen um herauszufinden ob ein Zeichen ansteht.
Siehe auch
Beispiel
'----------------------------------------------------------------------------------------- 'name : inkey.bas 'copyright : (c) 1995-2005, MCS Electronics 'purpose : demo: INKEY , WAITKEY 'micro : Mega48 'suited for demo : yes 'commercial addon needed : no '----------------------------------------------------------------------------------------- $regfile = "m48def.dat" ' specify the used micro $crystal = 4000000 ' Taktrate $baud = 19200 ' Baudrate $hwstack = 32 ' default use 32 for the hardware stack $swstack = 10 ' default use 10 for the SW stack $framesize = 40 ' default use 40 for the frame space Dim A As Byte , S As String * 2 Do A = Inkey() 'ASCII-Zeichen von serieller Schnittstelle empfangen 's = Inkey() If A > 0 Then 'es wurde etwas empfangen Print "ASCII code " ; A ; " from serial" End If Loop Until A = 27 'bis ESC gedrückt wird A = Waitkey() 'Auf ein Zeichen warten 's = waitkey() Print Chr(a) 'warten bis ESC gedrückt wird Do Loop Until Inkey() = 27 'Wenn binäre Daten und der binäre Wert 0 empfangen werden sollen 'kann man die IScharwaiting() Funktion benutzen. 'IScharwaiting() gibt 1 zurück wenn ein Zeichen empfangen wurde und 0 wenn kein Zeichen empfangen wurde. 'Man kann das Zeichen dann mit inkey oder waitkey einlesen. End
Languages | English • Deutsch |
---|