<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://wiki.mcselec.com/bavr/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=CLOSE%2Fde</id>
		<title>CLOSE/de - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://wiki.mcselec.com/bavr/index.php?action=history&amp;feed=atom&amp;title=CLOSE%2Fde"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CLOSE/de&amp;action=history"/>
		<updated>2026-04-27T18:39:30Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.18.6</generator>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=CLOSE/de&amp;diff=2119&amp;oldid=prev</id>
		<title>Admin: 1 revision</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CLOSE/de&amp;diff=2119&amp;oldid=prev"/>
				<updated>2013-02-15T19:13:10Z</updated>
		
		<summary type="html">&lt;p&gt;1 revision&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
		&lt;tr valign='top'&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;← Older revision&lt;/td&gt;
		&lt;td colspan='1' style=&quot;background-color: white; color:black;&quot;&gt;Revision as of 19:13, 15 February 2013&lt;/td&gt;
		&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>http://wiki.mcselec.com/bavr/index.php?title=CLOSE/de&amp;diff=2118&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span class=&quot;f_Header&quot;&gt;Action&lt;/span&gt; =  Closes an opened device.  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/span&gt;  &lt;span style=&quot;font-family: Arial;&quot;&gt;&amp;nbsp;&lt;/span&gt;  = &lt;span c...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=CLOSE/de&amp;diff=2118&amp;oldid=prev"/>
				<updated>2013-02-07T18:12:28Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =  Closes an opened device.  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;  &amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt; &amp;lt;/span&amp;gt;  = &amp;lt;span c...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== (**COPIED FROM ENGLISH PAGE**) === &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Closes an opened device.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Syntax&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
OPEN &amp;quot;device&amp;quot; for MODE As #channel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;f_Syntax&amp;quot;&amp;gt;CLOSE&amp;lt;/span&amp;gt;&amp;amp;nbsp;#channel&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Remarks&amp;lt;/span&amp;gt; =&lt;br /&gt;
&amp;lt;div style=&amp;quot;padding: 0px; margin: 0px 0px 0px 4px;&amp;quot;&amp;gt;&lt;br /&gt;
{| width=&amp;quot;604&amp;quot; cellspacing=&amp;quot;0&amp;quot; cellpadding=&amp;quot;1&amp;quot; border=&amp;quot;1&amp;quot; style=&amp;quot;border: 2px solid rgb(0, 0, 0); border-spacing: 0px; border-collapse: collapse;&amp;quot;&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;14%&amp;quot; style=&amp;quot;width: 81px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
Device&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 514px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
The default device is COM1 and you don't need to open a channel to use INPUT/OUTPUT on this device.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
With the implementation of the software UART, the compiler must know to which pin/device you will send/receive the data.&lt;br /&gt;
&lt;br /&gt;
So that is why the OPEN statement must be used. It tells the compiler about the pin you use for the serial input or output and the baud rate you want to use.&lt;br /&gt;
&lt;br /&gt;
COMB.0:9600,8,N,2 will use PORT B.0 at 9600 baud with 2 stop bits.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The format for COM1 is&amp;amp;nbsp;: COM1:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Some chips have 2 UARTS. You can use COM2: to open the second HW UART.&lt;br /&gt;
&lt;br /&gt;
Other chips might have 4 or 8 UARTS.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The format for the software UART is: COMpin:speed,8,N,stop bits[,INVERTED]&lt;br /&gt;
&lt;br /&gt;
Where pin is the name of the PORT-pin.&lt;br /&gt;
&lt;br /&gt;
Speed must be specified and stop bits can be 1 or 2.&lt;br /&gt;
&lt;br /&gt;
An optional parameter ,INVERTED can be specified to use inverted RS-232.&lt;br /&gt;
&lt;br /&gt;
Open &amp;quot;COMD.1:9600,8,N,1,INVERTED&amp;quot; For Output As #1 , will use pin PORTD.1 for output with 9600 baud, 1 stop bit and with inverted RS-232.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;14%&amp;quot; style=&amp;quot;width: 81px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
MODE&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 514px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
You can use BINARY or RANDOM for COM1 and COM2, but for the software UART pins, you must specify INPUT or OUTPUT.&lt;br /&gt;
&lt;br /&gt;
|- style=&amp;quot;vertical-align: top;&amp;quot;&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;14%&amp;quot; style=&amp;quot;width: 81px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
Channel&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 514px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
The number of the channel to open. Must be a positive constant &amp;gt;0.&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The statements that support the device are PRINT , INPUT and INPUTHEX , INKEY, WAITKEY.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Every opened device must be closed using the CLOSE #channel statement. Of course, you must use the same channel number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The best place for the CLOSE statement is at the end of your program.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The INPUT statement in combination with the software UART, will not echo characters back because there is no default associated pin for this.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File:Notice.jpg|left|Notice.jpg]]&amp;amp;nbsp;For the AVR-DOS file system, you may place the CLOSE at any place in your program. This because the file system supports real file handles.&lt;br /&gt;
&lt;br /&gt;
For the UART, SPI or other devices, you do not need to close the device. Only AVR-DOS needs a CLOSE so the file will be flushed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;See also&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
[[OPEN]]&amp;amp;nbsp;,&amp;amp;nbsp;[[PRINT]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-family: Arial;&amp;quot;&amp;gt;&amp;amp;nbsp;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Example&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&amp;lt;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
'-----------------------------------------------------------------------------------------&lt;br /&gt;
'name : open.bas&lt;br /&gt;
'copyright : (c) 1995-2005, MCS Electronics&lt;br /&gt;
'purpose : demonstrates software UART&lt;br /&gt;
'micro : Mega48&lt;br /&gt;
'suited for demo : yes&lt;br /&gt;
'commercial addon needed : no&lt;br /&gt;
'-----------------------------------------------------------------------------------------&lt;br /&gt;
 &lt;br /&gt;
$regfile = &amp;quot;m48def.dat&amp;quot; ' specify the used micro&lt;br /&gt;
$crystal = 10000000 ' used crystal frequency&lt;br /&gt;
$baud = 19200 ' use baud rate&lt;br /&gt;
$hwstack = 32 ' default use 32 for the hardware stack&lt;br /&gt;
$swstack = 10 ' default use 10 for the SW stack&lt;br /&gt;
$framesize = 40 ' default use 40 for the frame space&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Dim B As Byte&lt;br /&gt;
 &lt;br /&gt;
'Optional you can fine tune the calculated bit delay&lt;br /&gt;
'Why would you want to do that?&lt;br /&gt;
'Because chips that have an internal oscillator may not&lt;br /&gt;
'run at the speed specified. This depends on the voltage, temp etc.&lt;br /&gt;
'You can either change $CRYSTAL or you can use&lt;br /&gt;
'BAUD #1,9610&lt;br /&gt;
 &lt;br /&gt;
'In this example file we use the DT006 from www.simmstick.com&lt;br /&gt;
'This allows easy testing with the existing serial port&lt;br /&gt;
'The MAX232 is fitted for this example.&lt;br /&gt;
'Because we use the hardware UART pins we MAY NOT use the hardware UART&lt;br /&gt;
'The hardware UART is used when you use PRINT, INPUT or other related statements&lt;br /&gt;
'We will use the software UART.&lt;br /&gt;
Waitms 100&lt;br /&gt;
 &lt;br /&gt;
'open channel for output&lt;br /&gt;
Open &amp;quot;comd.1:19200,8,n,1&amp;quot; For Output As #1&lt;br /&gt;
Print #1 , &amp;quot;serial output&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'Now open a pin for input&lt;br /&gt;
Open &amp;quot;comd.0:19200,8,n,1&amp;quot; For Input As #2&lt;br /&gt;
'since there is no relation between the input and output pin&lt;br /&gt;
'there is NO ECHO while keys are typed&lt;br /&gt;
Print #1 , &amp;quot;Number&amp;quot;&lt;br /&gt;
'get a number&lt;br /&gt;
Input #2 , B&lt;br /&gt;
'print the number&lt;br /&gt;
Print #1 , B&lt;br /&gt;
 &lt;br /&gt;
'now loop until ESC is pressed&lt;br /&gt;
'With INKEY() we can check if there is data available&lt;br /&gt;
'To use it with the software UART you must provide the channel&lt;br /&gt;
Do&lt;br /&gt;
'store in byte&lt;br /&gt;
 B = Inkey(#2)&lt;br /&gt;
'when the value &amp;gt; 0 we got something&lt;br /&gt;
If B &amp;gt; 0 Then&lt;br /&gt;
 Print #1 , Chr(b) 'print the character&lt;br /&gt;
End If&lt;br /&gt;
Loop Until B = 27&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
Close #2&lt;br /&gt;
Close #1&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'OPTIONAL you may use the HARDWARE UART&lt;br /&gt;
'The software UART will not work on the hardware UART pins&lt;br /&gt;
'so you must choose other pins&lt;br /&gt;
'use normal hardware UART for printing&lt;br /&gt;
'Print B&lt;br /&gt;
'When you dont want to use a level inverter such as the MAX-232&lt;br /&gt;
'You can specify ,INVERTED :&lt;br /&gt;
'Open &amp;quot;comd.0:300,8,n,1,inverted&amp;quot; For Input As #2&lt;br /&gt;
'Now the logic is inverted and there is no need for a level converter&lt;br /&gt;
'But the distance of the wires must be shorter with this&lt;br /&gt;
End&lt;br /&gt;
&amp;lt;/source&amp;gt;&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM Language Reference/de]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>