<?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=RB_CHANGEPIN</id>
		<title>RB CHANGEPIN - 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=RB_CHANGEPIN"/>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=RB_CHANGEPIN&amp;action=history"/>
		<updated>2026-04-29T16:06:32Z</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=RB_CHANGEPIN&amp;diff=5232&amp;oldid=prev</id>
		<title>Admin: Created page with &quot;= &lt;span class=&quot;f_Header&quot;&gt;Action&lt;/span&gt; =  Changes the defined output pin at run time  &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;...&quot;</title>
		<link rel="alternate" type="text/html" href="http://wiki.mcselec.com/bavr/index.php?title=RB_CHANGEPIN&amp;diff=5232&amp;oldid=prev"/>
				<updated>2015-06-15T20:59:35Z</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; =  Changes the defined output pin at run time  &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;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= &amp;lt;span class=&amp;quot;f_Header&amp;quot;&amp;gt;Action&amp;lt;/span&amp;gt; =&lt;br /&gt;
&lt;br /&gt;
Changes the defined output pin at run time&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;
&amp;lt;span style=&amp;quot;font-weight: bold; color: rgb(0, 0, 128);&amp;quot;&amp;gt;RB_CHANGEPIN&amp;amp;nbsp;&amp;lt;/span&amp;gt;Port , Pin&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;font-size: 13.3333330154419px; padding: 0px; margin: 0px 0px 0px 4px;&amp;quot;&amp;gt;&lt;br /&gt;
{| 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;11%&amp;quot; style=&amp;quot;width: 106px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
Port&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 881px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A numeric variable or constant with the I/O address of the port. Notice that this is an absolute memory address. For ports in the normal IO range, you need to add a value of &amp;amp;H20 to the address.&lt;br /&gt;
&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
Example&amp;amp;nbsp;:&lt;br /&gt;
&lt;br /&gt;
Const nprt=varptr(portb) + &amp;amp;H20&lt;br /&gt;
&lt;br /&gt;
Rb_ChangePIN nprt, 1&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;11%&amp;quot; style=&amp;quot;width: 106px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
Led&lt;br /&gt;
&lt;br /&gt;
| valign=&amp;quot;top&amp;quot; width=&amp;quot;100%&amp;quot; style=&amp;quot;width: 881px; border: 1px solid rgb(0, 0, 0);&amp;quot; | &lt;br /&gt;
A numeric variable or constant with the pin number in the range from 0-7&lt;br /&gt;
&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
&lt;br /&gt;
When you want to use multiple stripes with the same color, it would require CONFIG RAINBOW to set up all these stripes.&lt;br /&gt;
&lt;br /&gt;
But each configured pin will use memory for the RGB information. When you change the pin at run time, you will use the color information of one stripe.&lt;br /&gt;
&lt;br /&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;
[[RB ADDCOLOR|RB_ADDCOLOR]] , [[RB ANDCOLOR|RB_ANDCOLOR]] , [[RB ORCOLOR|RB_ORCOLOR]], [[RB SUBCOLOR|RB_SUBCOLOR]], [[RB CLEARSTRIPE|RB_CLEARSTRIPE]] , [[RB CLEARCOLORS|RB_CLEARCOLORS]] , [[RB FILL|RB_FILL]] , [[RB FILLCOLORS|RB_FILLCOLORS]] , [[RB FILLSTRIPE|RB_FILLSTRIPE]] , [[RB SELECTCHANNEL|RB_SELECTCHANNEL]] , [[RB SEND|RB_SEND]], [[RB SETCOLOR|RB_SETCOLOR]] , [[RB SWAPCOLOR|RB_SWAPCOLOR]] , [[RB ROTATELEFT|RB_ROTATELEFT]] , [[RB ROTATERIGHT|RB_ROTATERIGHT]] , [[RB SHIFTLEFT|RB_SHIFTLEFT]] , [[RB SHIFTRIGHT|RB_SHIFTRIGHT]] , '''RB_CHANGEPIN''' , [[RB SETTABLECOLOR|RB_SETTABLECOLOR]] , [[RB GETCOLOR|RB_GETCOLOR]] , [[RB LOOKUPCOLOR|RB_LOOKUPCOLOR]]&lt;br /&gt;
&lt;br /&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;source lang=&amp;quot;bascomavr&amp;quot;&amp;gt;&lt;br /&gt;
'-------------------------------------------------------------------------------&lt;br /&gt;
' rainbow_ws2812_Demo.bas&lt;br /&gt;
'-------------------------------------------------------------------------------&lt;br /&gt;
$Regfile = &amp;quot;m88pdef.dat&amp;quot;&lt;br /&gt;
$Crystal = 8000000&lt;br /&gt;
$hwstack = 40&lt;br /&gt;
$swstack = 16&lt;br /&gt;
$framesize = 32&lt;br /&gt;
Config RAINBOW=1, RB0_LEN=8, RB0_PORT=PORTB,rb0_pin=0&lt;br /&gt;
' ^ connected to pin 0&lt;br /&gt;
' ^------------ connected to portB&lt;br /&gt;
' ^-------------------------- 8 leds on stripe&lt;br /&gt;
' ^------------------------------------- 1 channel&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
'Global Color-variables&lt;br /&gt;
Dim Color(3) as Byte&lt;br /&gt;
R alias Color(_base) : G alias Color(_base + 1) : B alias Color(_base + 2)&lt;br /&gt;
 &lt;br /&gt;
'CONST&lt;br /&gt;
const numLeds=8&lt;br /&gt;
 &lt;br /&gt;
'----[MAIN]---------------------------------------------------------------------&lt;br /&gt;
Dim n as Byte, state as Byte, tel as Byte&lt;br /&gt;
state=0 : tel=0&lt;br /&gt;
 &lt;br /&gt;
RB_SelectChannel 0 ' select first channel&lt;br /&gt;
R = 50 : G = 0 : B = 100 ' define a color&lt;br /&gt;
RB_SetColor 0 , color(1) ' update led on the left&lt;br /&gt;
RB_SetColor 7 , color(1) ' update led on the right&lt;br /&gt;
RB_Send&lt;br /&gt;
 &lt;br /&gt;
Do&lt;br /&gt;
 For n = 1 to Numleds/2 - 1&lt;br /&gt;
 rb_Shiftright 0 , Numleds/2 'shift to the right&lt;br /&gt;
 rb_Shiftleft 4 , Numleds/2 'shift to the left all leds except the last one&lt;br /&gt;
 Waitms 100&lt;br /&gt;
 RB_Send&lt;br /&gt;
 Next&lt;br /&gt;
 For n = 1 to Numleds/2 - 1&lt;br /&gt;
 rb_Shiftleft 0 , Numleds/2 'shift to the left all leds except the last one&lt;br /&gt;
 rb_Shiftright 4 , Numleds/2 'shift to the right&lt;br /&gt;
 Waitms 100&lt;br /&gt;
 RB_Send&lt;br /&gt;
 Next&lt;br /&gt;
 'waitms 500 'wait a bit&lt;br /&gt;
 select case state&lt;br /&gt;
 case 0 : r=r+5 : Rb_AddColor 0, color(1) : rb_send: tel=tel+1&lt;br /&gt;
 case 1: g=g+5 : Rb_subColor 0, color(1) : rb_send:tel=tel+1&lt;br /&gt;
 case 2: b=b+5 : Rb_orColor 0, color(1) : rb_send: tel=tel+1&lt;br /&gt;
 case 3: Rb_ClearStripe : tel=4&lt;br /&gt;
 case 4: rb_send : tel=5&lt;br /&gt;
 case 5: Rb_Fill color(1) : tel=5&lt;br /&gt;
 case 6: const nprt=varptr(portb) + &amp;amp;H20 : Rb_ChangePIN nprt, 1&lt;br /&gt;
 case else&lt;br /&gt;
 state=0&lt;br /&gt;
 end select&lt;br /&gt;
 if tel&amp;gt;=2 then&lt;br /&gt;
 state=state+1 : tel=0&lt;br /&gt;
 end if&lt;br /&gt;
Loop&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;{{Languages}}&lt;br /&gt;
&lt;br /&gt;
[[Category:BASCOM Language Reference]]&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>