<root>
<document schema='101' license='1,canary_wharfe,B4YVR5' title='' description='' target='PIC.16F.16F877A' >
	<config data='!0,3f72%0,2%2,0%3,0%6,1%7,0%9,3%b,1%8,1%d,1' clkspd='19660800' simspd='1' usewdt='0' constif='0' />
	<plugins >
		<dll_dbg_icd enabled='0' >
			<data name='debug' value='1' />
			<data name='userpins' value='0' />
			<data name='speed' value='0' />
			<data name='usev9' value='0' />
			<data name='breaks' value='8' />
			<data name='stacks' value='8' />
			<data name='clkport' value='1' />
			<data name='clkbit' value='6' />
			<data name='dataport' value='1' />
			<data name='databit' value='7' />
			<data name='ghostype' value='0' />
			<data name='monitor' value='1' />
			<data name='ictloop' value='0' />
			<data name='ictrate' value='20000' />
			<data name='ictmask' value='0' />
			<data name='anlpres' value='19' />
			<data name='digmask1' value='-1' />
			<data name='digmask2' value='-1' />
		</dll_dbg_icd>
		<dll_models enabled='1' />
		<dll_upgrader enabled='1' />
		<dll_webhelp enabled='1' />
	</plugins>
	<supplement use='0' head='' body='' />
	<debug >
		<watch expr='count' />
		<watch expr='prepare_node_addr' />
		<watch expr='prepare_node_addr2' />
		<watch expr='temp' />
		<watch expr='total_bus_nodes' />
	</debug>
	<ghost >
		<FK2 >
			<data name='FK2D0' port='4294967295' pin='4294967295' />
			<data name='FK2D1' port='4294967295' pin='4294967295' />
			<data name='FK2D2' port='4294967295' pin='4294967295' />
			<data name='FK2D3' port='4294967295' pin='4294967295' />
			<data name='FK2D4' port='4294967295' pin='4294967295' />
			<data name='FK2D5' port='4294967295' pin='4294967295' />
			<data name='FK2D6' port='4294967295' pin='4294967295' />
			<data name='FK2D7' port='4294967295' pin='4294967295' />
			<data name='FK2D8' port='4294967295' pin='4294967295' />
			<data name='FK2D9' port='4294967295' pin='4294967295' />
			<data name='FK2D10' port='4294967295' pin='4294967295' />
			<data name='FK2D11' port='4294967295' pin='4294967295' />
			<data name='FK2D12' port='4294967295' pin='4294967295' />
			<data name='FK2D13' port='4294967295' pin='4294967295' />
			<data name='FK2D14' port='4294967295' pin='4294967295' />
			<data name='FK2D15' port='4294967295' pin='4294967295' />
			<data name='FK2A0' port='4294967295' pin='4294967295' />
			<data name='FK2A1' port='4294967295' pin='4294967295' />
			<data name='FK2A2' port='4294967295' pin='4294967295' />
			<data name='FK2A3' port='4294967295' pin='4294967295' />
			<data name='FK2A4' port='4294967295' pin='4294967295' />
			<data name='FK2A5' port='4294967295' pin='4294967295' />
		</FK2>
		<ICD >
			<data name='AnalogPrescaleValue' value='19' />
			<data name='DigitalSampleRate' value='100000' />
			<data name='BreakpointCount' value='8' />
			<data name='CallStackDepthCount' value='8' />
			<data name='ClockPort' value='1' />
			<data name='ClockPin' value='6' />
			<data name='DataPort' value='1' />
			<data name='DataPin' value='7' />
			<data name='UseDefaultPins' value='1' />
			<data name='WrapEnabled' value='1' />
			<data name='CommsDelayOverridden' value='0' />
			<data name='CommsDelay' value='9' />
			<data name='CalculatedCommsDelay' value='9' />
		</ICD>
		<pins >
			<digital A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
			<analog A='0' B='0' C='0' D='0' E='0' F='0' G='0' H='0' I='0' J='0' K='0' L='0' M='0' N='0' O='0' P='0' Q='0' R='0' S='0' T='0' U='0' V='0' W='0' X='0' Y='0' Z='0' />
		</pins>
	</ghost>
	<components >
		<settings autoimg='1' center='1' unitscale='0' fixedscale='0' fixedx='1' fixedy='1' fixedz='1' headcode='0' />
		<definition guid='' vstate='40' vmin='0' vmaj='1' srcleaf='' visiblename='' description='' category='' catenable='1' author='' manuname='' manucode='' sysinfo='0' keywords='' dynamic='0' iconpath='' />
		<component class_type='root' codename='panel' x='0' y='0' z='0' xsz='1' ysz='1' zsz='1' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' interactive='1' solid='1' layer='0' poslock='0' >
			<resources />
			<properties />
			<values />
			<events />
			<apis />
			<variables >
				<variable public='0' >
					<def class_type='variable' name='count' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='prepare_node_addr' type='s16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='temp' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='prepare_node_addr2' type='s16' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='my_count_str' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='2' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='my_data_str' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='20' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='RxVal_Str' type='T8' description='' isconst='0' isinit='0' usrinit='&quot;&quot;' setinit='' >
						<array size='3' />
					</def>
				</variable>
				<variable public='0' >
					<def class_type='variable' name='RxVal' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
				<variable public='0' >
					<def class_type='variable' name='total_bus_nodes' type='u8' description='' isconst='0' isinit='0' usrinit='0' setinit='' />
				</variable>
			</variables>
			<macros >
				<macro >
					<flowline name='Main' description='' >
						<return name='Return' type='v0' description='' isconst='0' isinit='0' usrinit='' setinit='' />
						<command class_type='call' title='Init UART1' cmdcolor='1975743' cmdcolor_sec='1975743' component='UART1' macro='Initialise' />
						<command class_type='delay' title='Delay' cmdcolor='7895044' cmdcolor_sec='7895044' exp='40' type='1' />
						<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='Start' />
						<command class_type='delay' title='Delay' cmdcolor='7895044' cmdcolor_sec='7895044' exp='500' type='1' />
						<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='Clear' />
						<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='Cursor' >
							<argument exp='0' />
							<argument exp='0' />
						</command>
						<command class_type='delay' title='Delay' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='40' type='1' />
						<command class_type='comment' title='' comment='Insert the number of slaves 
wanted on the bus HERE' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
						<command class_type='comment' title='' comment='//////////////////////////////////////////////
//////////////////////////////////////////////
//////////////////////////////////////////////' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
						<command class_type='calculation' title='Calculation' cmdcolor='7895044' cmdcolor_sec='7895044' >
							<exp exp='total_bus_nodes = 1' />
						</command>
						<command class_type='comment' title='' comment='////////////////////////////////////////////
////////////////////////////////////////////
////////////////////////////////////////////' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
						<command class_type='calculation' title='Calculation' cmdcolor='7895044' cmdcolor_sec='7895044' >
							<exp exp='count = 0' />
							<exp exp='prepare_node_addr = 0x101' />
							<exp exp='prepare_node_addr2 = 0x181' />
						</command>
						<command class_type='loop' title='Loop' textarea='36,0,511,300' cmdcolor='3568629' cmdcolor_sec='3568629' type='0' exp='1' >
							<flowline >
								<command class_type='comment' title='' comment='Write count value to node &apos;n&apos;' textarea='12,0,487,300' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='output' title='Enable transmission' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' mode='1' port='1048578' mask='32' exp='1' />
								<command class_type='delay' title='Settling time' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='10' type='0' />
								<command class_type='call' title='Send node address and write' cmdcolor='1975743' cmdcolor_sec='1975743' component='UART1' macro='SendChar' >
									<argument exp='prepare_node_addr' />
								</command>
								<command class_type='delay' title='Allow data to be transmitted' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='3' type='1' />
								<command class_type='comment' title='' comment='Send &apos;count&apos; value to slave where
it will be processed in the
&apos;MyMessage = 1&apos; loop. There is a
read UART instruction inside that
loop which is the point when the
&apos;count&apos; value is read into the
RxVal.' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='call' title='Send data' cmdcolor='1975743' cmdcolor_sec='1975743' component='UART1' macro='SendChar' >
									<argument exp='count' />
								</command>
								<command class_type='delay' title='Allow data to be transmitted' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='3' type='1' />
								<command class_type='output' title='Disable transmission' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' mode='1' port='1048578' mask='32' exp='0' />
								<command class_type='comment' title='' comment='End of message' textarea='12,0,487,300' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='delay' title='Delay' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='50' type='1' />
								<command class_type='output' title='Enable transmission' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' mode='1' port='1048578' mask='32' exp='1' />
								<command class_type='delay' title='Settling time' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='10' type='0' />
								<command class_type='call' title='Send node address and read' cmdcolor='1975743' cmdcolor_sec='1975743' component='UART1' macro='SendChar' >
									<argument exp='prepare_node_addr2' />
								</command>
								<command class_type='delay' title='Allow data to be transmitted' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='3' type='1' />
								<command class_type='output' title='Disable transmission' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' mode='1' port='1048578' mask='32' exp='0' />
								<command class_type='delay' title='Delay' cmdcolor='7895044' cmdcolor_sec='7895044' exp='10' type='0' />
								<command class_type='call' title='Read returned data' cmdcolor='1975743' cmdcolor_sec='1975743' component='UART1' macro='ReceiveChar' >
									<return exp='RxVal' />
									<argument exp='100' />
								</command>
								<command class_type='comment' title='' comment='Allow at least 20mS delay for the 
data to come over the wire, out of
the Rx buffers and loaded into the
variable. (9600 baud).' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='delay' title='Delay' cmdcolor='7895044' cmdcolor_sec='7895044' exp='20' type='1' />
								<command class_type='comment' title='' comment='Convert input byte data RxVal 
and current node number into
strings.' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='calculation' title='Create individual strings' cmdcolor='7895044' cmdcolor_sec='7895044' >
									<exp exp='temp = count + 1' />
									<exp exp='RxVal_Str = ToString$ (RxVal)' />
									<exp exp='my_count_str = ToString$ (temp)' />
								</command>
								<command class_type='calculation' title='Create single string from individual strings' cmdcolor='7895044' cmdcolor_sec='7895044' >
									<exp exp='my_data_str = &quot;N:&quot; + my_count_str + &quot; $&quot; + RxVal_Str + &quot;#&quot;' />
								</command>
								<command class_type='comment' title='' comment='Print the whole string &apos;my_data_str&apos;
to the LCD.' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='PrintString' >
									<argument exp='my_data_str' />
								</command>
								<command class_type='delay' title='Delay' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='100' type='1' />
								<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='ClearLine' >
									<argument exp='0' />
								</command>
								<command class_type='call' title='Call Component Macro' textarea='36,0,511,300' cmdcolor='1975743' cmdcolor_sec='1975743' component='v5__lcddisplay0' macro='Cursor' >
									<argument exp='0' />
									<argument exp='0' />
								</command>
								<command class_type='comment' title='' comment='End of message' textarea='12,0,487,300' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='delay' title='Delay' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' exp='40' type='1' />
								<command class_type='calculation' title='Calculation' textarea='36,0,511,300' cmdcolor='7895044' cmdcolor_sec='7895044' >
									<exp exp='count = count + 1' />
									<exp exp='prepare_node_addr = prepare_node_addr + 1' />
									<exp exp='prepare_node_addr2 = prepare_node_addr2 + 1' />
								</command>
								<command class_type='comment' title='' comment='Check to see if the value held in
&apos;count&apos; has reached the value held
in &apos;total_bus_nodes&apos; which is the 
number of nodes on the bus and if 
so then we reset &apos;count&apos; to 0, and 
reset the &apos;prepare_node_addr/addr2&apos; 
to their starting values (i.e. node 
addr 1). 
' textarea='12,0,12,0' cmdcolor='1975743' cmdcolor_sec='1975743' />
								<command class_type='decision' title='Decision' cmdcolor='3568629' cmdcolor_sec='3568629' exp='count = total_bus_nodes' swap='0' >
									<flowline >
										<command class_type='calculation' title='Calculation' cmdcolor='7895044' cmdcolor_sec='7895044' >
											<exp exp='count = 0' />
											<exp exp='prepare_node_addr = 0x101' />
											<exp exp='prepare_node_addr2 = 0x181' />
										</command>
									</flowline>
									<flowline />
								</command>
							</flowline>
						</command>
					</flowline>
				</macro>
			</macros>
			<component class_type='ref' guid='0953aac0-9c23-4c2f-9843-88954a4191ea' vmin='4' vmaj='2' codename='v5__lcddisplay0' x='48' y='5.71429' z='0' xsz='78.2857' ysz='13.1429' zsz='1.14286' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' interactive='1' solid='1' layer='0' poslock='0' >
				<resources />
				<properties />
				<values >
					<value target='LCD_Mode' data='000' />
					<value target='Pin_Data_0' data='$PORTB0.0' />
					<value target='Pin_Data_1' data='$PORTB0.1' />
					<value target='Pin_Data_2' data='$PORTB0.2' />
					<value target='Pin_Data_3' data='$PORTB0.3' />
					<value target='Pin_Data_4' data='$PORTA.1' />
					<value target='Pin_Data_5' data='$PORTA.1' />
					<value target='Pin_Data_6' data='$PORTA.1' />
					<value target='Pin_Data_7' data='$PORTA.1' />
					<value target='LCD_Port' data='$PORTA' />
					<value target='Pin_RS' data='$PORTB0.4' />
					<value target='Pin_E' data='$PORTB0.5' />
					<value target='LCD_Use_Write' data='0' />
					<value target='Pin_RW' data='$PORTA.0' />
					<value target='Rows' data='2' />
					<value target='Columns' data='16' />
					<value target='RemapCharacters' data='0' />
					<value target='DelayTiming' data='100' />
					<value target='BackgroundColor' data='0x808080' />
					<value target='LineColor' data='0' />
					<value target='TextColor' data='0x00FF00' />
					<value target='Font' data='Fixedsys' />
					<value target='CursorPosX' data='0' />
					<value target='CursorPosY' data='0' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
			<component class_type='ref' guid='c73616d1-7ad0-45d9-aada-69ccfa4c5efc' vmin='0' vmaj='2' codename='UART1' x='-50' y='10' z='0' xsz='60' ysz='26' zsz='1.51' xang='0' yang='0' zang='0' xquat='0' yquat='0' zquat='0' wquat='1' visible='1' interactive='1' solid='1' layer='0' poslock='0' >
				<resources />
				<properties />
				<values >
					<value target='cal_uart::CHANNEL' data='001' />
					<value target='BAUD_LIST' data='004' />
					<value target='BAUD' data='9600' />
					<value target='DBITS' data='009' />
					<value target='RETURN' data='001' />
					<value target='ToutVal' data='512' />
					<value target='FLOWEN' data='000' />
					<value target='ECHO' data='000' />
					<value target='cal_uart::TX' data='$PORTC.6' />
					<value target='cal_uart::TXAlt' data='0' />
					<value target='cal_uart::RX' data='$PORTC.7' />
					<value target='cal_uart::RXAlt' data='0' />
					<value target='cal_uart::OutputPins' data='007' />
					<value target='cal_uart::InputPins' data='013' />
					<value target='CTS' data='$PORTB.1' />
					<value target='RTS' data='$PORTB.2' />
					<value target='label' data='UART' />
					<value target='ScopeTraces' data='0' />
					<value target='ConsoleData' data='0' />
					<value target='ConsoleColumns' data='64' />
					<value target='DataSource' data='001' />
					<value target='com_port' data='003' />
					<value target='Injector' data='000' />
					<value target='InjectorHandle' data='' />
				</values>
				<events />
				<apis />
				<variables />
				<macros />
			</component>
		</component>
	</components>
	<keymap />
	<panel2d shadows='0' lighting='2' brightness='0' perspective='0' >
		<background rgb='2105930' img='' style='0' />
		<camera xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
	</panel2d>
	<panel3d shadows='0' lighting='2' brightness='0' perspective='0' >
		<background rgb='8409120' img='' style='0' />
		<table rgb='7360576' img='' style='0' size='25' />
		<camera xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey0 xe='0' ye='0' ze='300' xt='0' yt='0' zt='0' xquat='0' yquat='0' zquat='0' wquat='1' />
		<camerakey1 xe='-3.67394e-14' ye='0' ze='-300' xt='0' yt='0' zt='0' xquat='0' yquat='1' zquat='0' wquat='6.12323e-17' />
		<camerakey2 xe='0' ye='-300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.707107' yquat='0' zquat='0' wquat='0.707107' />
		<camerakey3 xe='-3.67394e-14' ye='300' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-4.32978e-17' yquat='0.707107' zquat='0.707107' wquat='4.32978e-17' />
		<camerakey4 xe='-300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='0.5' zquat='0.5' wquat='0.5' />
		<camerakey5 xe='300' ye='-6.66134e-14' ze='6.66134e-14' xt='0' yt='0' zt='0' xquat='-0.5' yquat='-0.5' zquat='-0.5' wquat='0.5' />
		<camerakey6 xe='-173.205' ye='-173.205' ze='173.205' xt='0' yt='0' zt='0' xquat='-0.424708' yquat='0.17592' zquat='0.339851' wquat='0.820473' />
	</panel3d>
	<layout >
		<view type='0' name='Main' mode='0' placement='LAAAAAAAAAABAAAA---------------------wUAAAAYAAAASgMAAOMBAAA' zoom='75' scrollx='0' scrolly='3138' flags='0' />
	</layout>
</document>
</root>
