Merge pull request #1 from HEI-SYND-227-PTR/fix-fore-wired
Fix for wired
This commit is contained in:
		
							
								
								
									
										16
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -83,3 +83,19 @@ | |||||||
| .vscode/settings.json | .vscode/settings.json | ||||||
| .vscode/uv4.log | .vscode/uv4.log | ||||||
| .vscode/uv4.log.lock | .vscode/uv4.log.lock | ||||||
|  | RTE/CMSIS/RTX_Config.c.update@5.1.1 | ||||||
|  | RTE/CMSIS/RTX_Config.h.update@5.5.2 | ||||||
|  | RTE/Compiler/EventRecorderConf.h.update@1.1.0 | ||||||
|  | RTE/Device/STM32F746NGHx/RTE_Device.h.update@1.5.1 | ||||||
|  | RTE/Device/STM32F746NGHx/startup_stm32f746xx.s.update@1.2.2 | ||||||
|  | RTE/Device/STM32F746NGHx/stm32f7xx_hal_conf.h.update@1.2.7 | ||||||
|  | RTE/Device/STM32F746NGHx/system_stm32f7xx.c.update@1.2.2 | ||||||
|  | RTE/Hesso_pack/ext_buttons.c.base@1.0.0 | ||||||
|  | RTE/Hesso_pack/ext_buttons.h.base@1.0.0 | ||||||
|  | RTE/Hesso_pack/ext_keyboard.c.update@1.1.1 | ||||||
|  | RTE/Hesso_pack/ext_keyboard.h.update@1.1.1 | ||||||
|  | RTE/Hesso_pack/ext_led.c.base@1.0.0 | ||||||
|  | RTE/Hesso_pack/ext_led.h.base@1.0.0 | ||||||
|  | RTE/Hesso_pack/ext_uart.c.base@1.0.0 | ||||||
|  | RTE/Hesso_pack/ext_uart.h.base@1.0.0 | ||||||
|  | RTE/uGFX_library/gfxconf.h.update@2.0.0 | ||||||
|   | |||||||
| @@ -23,6 +23,8 @@ void send_DATA_IND(Adresse source, Adresse destination, uint8_t* dataFramePtr) { | |||||||
| 	} | 	} | ||||||
| 	strPtr[dataFramePtr[2]] = '\0'; // null-terminate string | 	strPtr[dataFramePtr[2]] = '\0'; // null-terminate string | ||||||
| 	queueMsg.anyPtr = strPtr; | 	queueMsg.anyPtr = strPtr; | ||||||
|  | 	//retCode = osMemoryPoolFree(memPool, dataFramePtr); | ||||||
|  | 	//CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | ||||||
|  |  | ||||||
| 	switch (destination.sapi) { | 	switch (destination.sapi) { | ||||||
| 		case TIME_SAPI: | 		case TIME_SAPI: | ||||||
|   | |||||||
							
								
								
									
										25
									
								
								mac_sender.c
									
									
									
									
									
								
							
							
						
						
									
										25
									
								
								mac_sender.c
									
									
									
									
									
								
							| @@ -15,7 +15,8 @@ const osMessageQueueAttr_t queue_macData_attr = { | |||||||
|  |  | ||||||
| void sendToken() { | void sendToken() { | ||||||
| 	struct queueMsg_t queueMsg; | 	struct queueMsg_t queueMsg; | ||||||
| 	queueMsg.anyPtr = lastToken; | 	queueMsg.anyPtr = osMemoryPoolAlloc(memPool,osWaitForever); | ||||||
|  | 	memcpy(queueMsg.anyPtr, lastToken, TOKENSIZE-2); | ||||||
| 	queueMsg.type = TO_PHY; | 	queueMsg.type = TO_PHY; | ||||||
| 	osStatus_t retCode = osMessageQueuePut( | 	osStatus_t retCode = osMessageQueuePut( | ||||||
| 		queue_phyS_id, | 		queue_phyS_id, | ||||||
| @@ -60,6 +61,8 @@ void MacSender(void *argument) { | |||||||
| 			//---------------------------------------------------------------------- | 			//---------------------------------------------------------------------- | ||||||
| 			case TOKEN: { | 			case TOKEN: { | ||||||
| 				// Get token and save it | 				// Get token and save it | ||||||
|  | //				osDelay(300); | ||||||
|  | 				//lastToken = osMemoryPoolAlloc(memPool,osWaitForever); | ||||||
| 				memcpy(lastToken, msg, TOKENSIZE-2); | 				memcpy(lastToken, msg, TOKENSIZE-2); | ||||||
|  |  | ||||||
| 				// update token | 				// update token | ||||||
| @@ -70,7 +73,7 @@ void MacSender(void *argument) { | |||||||
|  |  | ||||||
| 				// send to lcd | 				// send to lcd | ||||||
| 				queueMsg.type = TOKEN_LIST; | 				queueMsg.type = TOKEN_LIST; | ||||||
| 				queueMsg.anyPtr = lastToken; | 				memcpy(queueMsg.anyPtr , lastToken, TOKENSIZE-2); | ||||||
| 				retCode = osMessageQueuePut( | 				retCode = osMessageQueuePut( | ||||||
| 					queue_lcd_id, | 					queue_lcd_id, | ||||||
| 					&queueMsg, | 					&queueMsg, | ||||||
| @@ -78,6 +81,9 @@ void MacSender(void *argument) { | |||||||
| 					osWaitForever); | 					osWaitForever); | ||||||
| 				CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | 				CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | ||||||
| 				 | 				 | ||||||
|  | 				retCode = osMemoryPoolFree(memPool, queueMsg.anyPtr); | ||||||
|  | 				CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | ||||||
|  |  | ||||||
| 				// Send one msg from internal queue if exist | 				// Send one msg from internal queue if exist | ||||||
| 				//if (osMemoryPoolGetCount(queue_macData_id) != 0) { // Message in Queue | 				//if (osMemoryPoolGetCount(queue_macData_id) != 0) { // Message in Queue | ||||||
| 				retCode = osMessageQueueGet(queue_macData_id, &queueMsg, NULL, 0); | 				retCode = osMessageQueueGet(queue_macData_id, &queueMsg, NULL, 0); | ||||||
| @@ -196,7 +202,8 @@ void MacSender(void *argument) { | |||||||
| 				} | 				} | ||||||
| 				gTokenInterface.station_list[gTokenInterface.myAddress] = (0x1 << TIME_SAPI) + (gTokenInterface.connected << CHAT_SAPI); | 				gTokenInterface.station_list[gTokenInterface.myAddress] = (0x1 << TIME_SAPI) + (gTokenInterface.connected << CHAT_SAPI); | ||||||
| 				lastToken[gTokenInterface.myAddress+1] = gTokenInterface.station_list[gTokenInterface.myAddress]; | 				lastToken[gTokenInterface.myAddress+1] = gTokenInterface.station_list[gTokenInterface.myAddress]; | ||||||
| 				 | 				sendToken(); | ||||||
|  | 				/* | ||||||
| 				queueMsg.type = TO_PHY; | 				queueMsg.type = TO_PHY; | ||||||
| 				queueMsg.anyPtr = lastToken; | 				queueMsg.anyPtr = lastToken; | ||||||
| 				 | 				 | ||||||
| @@ -206,6 +213,7 @@ void MacSender(void *argument) { | |||||||
| 					osPriorityNormal, | 					osPriorityNormal, | ||||||
| 					osWaitForever); | 					osWaitForever); | ||||||
| 				CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | 				CheckRetCode(retCode, __LINE__, __FILE__, CONTINUE); | ||||||
|  | 				*/ | ||||||
| 				break; | 				break; | ||||||
| 			} | 			} | ||||||
| 			 | 			 | ||||||
| @@ -237,20 +245,18 @@ void MacSender(void *argument) { | |||||||
| 				src.nothing = 0; | 				src.nothing = 0; | ||||||
| 				length = strlen(queueMsg.anyPtr); | 				length = strlen(queueMsg.anyPtr); | ||||||
|  |  | ||||||
| 				if(dst.addr != BROADCAST_ADDRESS) { |  | ||||||
| 					stationStatus.raw = gTokenInterface.station_list[dst.addr]; |  | ||||||
| 				} |  | ||||||
|  |  | ||||||
| 					if( (stationStatus.chat == 1) || (dst.addr == BROADCAST_ADDRESS)) { |  | ||||||
| 						 |  | ||||||
| 				if(dst.addr == BROADCAST_ADDRESS) { | 				if(dst.addr == BROADCAST_ADDRESS) { | ||||||
| 					status.read = 1; | 					status.read = 1; | ||||||
| 					status.ack = 1; | 					status.ack = 1; | ||||||
|  | 					stationStatus.raw = 0; | ||||||
| 				} else { | 				} else { | ||||||
| 					status.read = 0; | 					status.read = 0; | ||||||
| 					status.ack = 0; | 					status.ack = 0; | ||||||
|  | 					stationStatus.raw = gTokenInterface.station_list[dst.addr]; | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
|  | 				if( (dst.addr == BROADCAST_ADDRESS) || (stationStatus.chat == 1)) { | ||||||
|  |  | ||||||
| 					msg = osMemoryPoolAlloc(memPool, 0); | 					msg = osMemoryPoolAlloc(memPool, 0); | ||||||
| 					if(msg == NULL) { | 					if(msg == NULL) { | ||||||
| 						printf("Memory allocation failed #1\r\n"); | 						printf("Memory allocation failed #1\r\n"); | ||||||
| @@ -274,7 +280,6 @@ void MacSender(void *argument) { | |||||||
| 							assert(false); | 							assert(false); | ||||||
| 						} | 						} | ||||||
| 						memcpy(lastSentMsgPtr, msg, length+4); | 						memcpy(lastSentMsgPtr, msg, length+4); | ||||||
| 						// TODO test if station is online |  | ||||||
| 					} | 					} | ||||||
|  |  | ||||||
| 					queueMsg.anyPtr = msg; | 					queueMsg.anyPtr = msg; | ||||||
|   | |||||||
							
								
								
									
										2
									
								
								main.h
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								main.h
									
									
									
									
									
								
							| @@ -16,7 +16,7 @@ | |||||||
| //-------------------------------------------------------------------------------- | //-------------------------------------------------------------------------------- | ||||||
| // Constants to change the system behavior | // Constants to change the system behavior | ||||||
| //-------------------------------------------------------------------------------- | //-------------------------------------------------------------------------------- | ||||||
| #define DEBUG_MODE				1					// mode is physical line (0) or debug (1) | #define DEBUG_MODE				0					// mode is physical line (0) or debug (1) | ||||||
| #define MYADDRESS   			3					// your address choice (table number) | #define MYADDRESS   			3					// your address choice (table number) | ||||||
| #define MAX_BLOCK_SIZE 		100				// size max for a frame | #define MAX_BLOCK_SIZE 		100				// size max for a frame | ||||||
|  |  | ||||||
|   | |||||||
| @@ -157,9 +157,41 @@ | |||||||
|         <Bp> |         <Bp> | ||||||
|           <Number>0</Number> |           <Number>0</Number> | ||||||
|           <Type>0</Type> |           <Type>0</Type> | ||||||
|           <LineNumber>18</LineNumber> |           <LineNumber>108</LineNumber> | ||||||
|           <EnabledFlag>1</EnabledFlag> |           <EnabledFlag>1</EnabledFlag> | ||||||
|           <Address>134311450</Address> |           <Address>134255386</Address> | ||||||
|  |           <ByteObject>0</ByteObject> | ||||||
|  |           <HtxType>0</HtxType> | ||||||
|  |           <ManyObjects>0</ManyObjects> | ||||||
|  |           <SizeOfObject>0</SizeOfObject> | ||||||
|  |           <BreakByAccess>0</BreakByAccess> | ||||||
|  |           <BreakIfRCount>1</BreakIfRCount> | ||||||
|  |           <Filename>.\mac_sender.c</Filename> | ||||||
|  |           <ExecCommand></ExecCommand> | ||||||
|  |           <Expression>\\tokenring_project\mac_sender.c\108</Expression> | ||||||
|  |         </Bp> | ||||||
|  |         <Bp> | ||||||
|  |           <Number>1</Number> | ||||||
|  |           <Type>0</Type> | ||||||
|  |           <LineNumber>110</LineNumber> | ||||||
|  |           <EnabledFlag>1</EnabledFlag> | ||||||
|  |           <Address>134255394</Address> | ||||||
|  |           <ByteObject>0</ByteObject> | ||||||
|  |           <HtxType>0</HtxType> | ||||||
|  |           <ManyObjects>0</ManyObjects> | ||||||
|  |           <SizeOfObject>0</SizeOfObject> | ||||||
|  |           <BreakByAccess>0</BreakByAccess> | ||||||
|  |           <BreakIfRCount>1</BreakIfRCount> | ||||||
|  |           <Filename>.\mac_sender.c</Filename> | ||||||
|  |           <ExecCommand></ExecCommand> | ||||||
|  |           <Expression>\\tokenring_project\mac_sender.c\110</Expression> | ||||||
|  |         </Bp> | ||||||
|  |         <Bp> | ||||||
|  |           <Number>2</Number> | ||||||
|  |           <Type>0</Type> | ||||||
|  |           <LineNumber>116</LineNumber> | ||||||
|  |           <EnabledFlag>1</EnabledFlag> | ||||||
|  |           <Address>134254758</Address> | ||||||
|           <ByteObject>0</ByteObject> |           <ByteObject>0</ByteObject> | ||||||
|           <HtxType>0</HtxType> |           <HtxType>0</HtxType> | ||||||
|           <ManyObjects>0</ManyObjects> |           <ManyObjects>0</ManyObjects> | ||||||
| @@ -168,44 +200,28 @@ | |||||||
|           <BreakIfRCount>1</BreakIfRCount> |           <BreakIfRCount>1</BreakIfRCount> | ||||||
|           <Filename>.\mac_receiver.c</Filename> |           <Filename>.\mac_receiver.c</Filename> | ||||||
|           <ExecCommand></ExecCommand> |           <ExecCommand></ExecCommand> | ||||||
|           <Expression>\\tokenring_project\mac_receiver.c\18</Expression> |           <Expression>\\tokenring_project\mac_receiver.c\116</Expression> | ||||||
|         </Bp> |  | ||||||
|         <Bp> |  | ||||||
|           <Number>1</Number> |  | ||||||
|           <Type>0</Type> |  | ||||||
|           <LineNumber>264</LineNumber> |  | ||||||
|           <EnabledFlag>1</EnabledFlag> |  | ||||||
|           <Address>134256144</Address> |  | ||||||
|           <ByteObject>0</ByteObject> |  | ||||||
|           <HtxType>0</HtxType> |  | ||||||
|           <ManyObjects>0</ManyObjects> |  | ||||||
|           <SizeOfObject>0</SizeOfObject> |  | ||||||
|           <BreakByAccess>0</BreakByAccess> |  | ||||||
|           <BreakIfRCount>1</BreakIfRCount> |  | ||||||
|           <Filename>.\mac_sender.c</Filename> |  | ||||||
|           <ExecCommand></ExecCommand> |  | ||||||
|           <Expression>\\tokenring_project\mac_sender.c\264</Expression> |  | ||||||
|         </Bp> |  | ||||||
|         <Bp> |  | ||||||
|           <Number>2</Number> |  | ||||||
|           <Type>0</Type> |  | ||||||
|           <LineNumber>86</LineNumber> |  | ||||||
|           <EnabledFlag>1</EnabledFlag> |  | ||||||
|           <Address>134255102</Address> |  | ||||||
|           <ByteObject>0</ByteObject> |  | ||||||
|           <HtxType>0</HtxType> |  | ||||||
|           <ManyObjects>0</ManyObjects> |  | ||||||
|           <SizeOfObject>0</SizeOfObject> |  | ||||||
|           <BreakByAccess>0</BreakByAccess> |  | ||||||
|           <BreakIfRCount>1</BreakIfRCount> |  | ||||||
|           <Filename>.\mac_sender.c</Filename> |  | ||||||
|           <ExecCommand></ExecCommand> |  | ||||||
|           <Expression>\\tokenring_project\mac_sender.c\86</Expression> |  | ||||||
|         </Bp> |         </Bp> | ||||||
|         <Bp> |         <Bp> | ||||||
|           <Number>3</Number> |           <Number>3</Number> | ||||||
|           <Type>0</Type> |           <Type>0</Type> | ||||||
|           <LineNumber>199</LineNumber> |           <LineNumber>89</LineNumber> | ||||||
|  |           <EnabledFlag>1</EnabledFlag> | ||||||
|  |           <Address>134255344</Address> | ||||||
|  |           <ByteObject>0</ByteObject> | ||||||
|  |           <HtxType>0</HtxType> | ||||||
|  |           <ManyObjects>0</ManyObjects> | ||||||
|  |           <SizeOfObject>0</SizeOfObject> | ||||||
|  |           <BreakByAccess>0</BreakByAccess> | ||||||
|  |           <BreakIfRCount>1</BreakIfRCount> | ||||||
|  |           <Filename>.\mac_sender.c</Filename> | ||||||
|  |           <ExecCommand></ExecCommand> | ||||||
|  |           <Expression>\\tokenring_project\mac_sender.c\89</Expression> | ||||||
|  |         </Bp> | ||||||
|  |         <Bp> | ||||||
|  |           <Number>4</Number> | ||||||
|  |           <Type>0</Type> | ||||||
|  |           <LineNumber>92</LineNumber> | ||||||
|           <EnabledFlag>1</EnabledFlag> |           <EnabledFlag>1</EnabledFlag> | ||||||
|           <Address>0</Address> |           <Address>0</Address> | ||||||
|           <ByteObject>0</ByteObject> |           <ByteObject>0</ByteObject> | ||||||
| @@ -219,10 +235,42 @@ | |||||||
|           <Expression></Expression> |           <Expression></Expression> | ||||||
|         </Bp> |         </Bp> | ||||||
|         <Bp> |         <Bp> | ||||||
|           <Number>4</Number> |           <Number>5</Number> | ||||||
|  |           <Type>0</Type> | ||||||
|  |           <LineNumber>109</LineNumber> | ||||||
|  |           <EnabledFlag>1</EnabledFlag> | ||||||
|  |           <Address>0</Address> | ||||||
|  |           <ByteObject>0</ByteObject> | ||||||
|  |           <HtxType>0</HtxType> | ||||||
|  |           <ManyObjects>0</ManyObjects> | ||||||
|  |           <SizeOfObject>0</SizeOfObject> | ||||||
|  |           <BreakByAccess>0</BreakByAccess> | ||||||
|  |           <BreakIfRCount>0</BreakIfRCount> | ||||||
|  |           <Filename>.\mac_sender.c</Filename> | ||||||
|  |           <ExecCommand></ExecCommand> | ||||||
|  |           <Expression></Expression> | ||||||
|  |         </Bp> | ||||||
|  |         <Bp> | ||||||
|  |           <Number>6</Number> | ||||||
|  |           <Type>0</Type> | ||||||
|  |           <LineNumber>111</LineNumber> | ||||||
|  |           <EnabledFlag>1</EnabledFlag> | ||||||
|  |           <Address>0</Address> | ||||||
|  |           <ByteObject>0</ByteObject> | ||||||
|  |           <HtxType>0</HtxType> | ||||||
|  |           <ManyObjects>0</ManyObjects> | ||||||
|  |           <SizeOfObject>0</SizeOfObject> | ||||||
|  |           <BreakByAccess>0</BreakByAccess> | ||||||
|  |           <BreakIfRCount>0</BreakIfRCount> | ||||||
|  |           <Filename>.\mac_sender.c</Filename> | ||||||
|  |           <ExecCommand></ExecCommand> | ||||||
|  |           <Expression></Expression> | ||||||
|  |         </Bp> | ||||||
|  |         <Bp> | ||||||
|  |           <Number>7</Number> | ||||||
|           <Type>0</Type> |           <Type>0</Type> | ||||||
|           <LineNumber>199</LineNumber> |           <LineNumber>199</LineNumber> | ||||||
|           <EnabledFlag>1</EnabledFlag> |           <EnabledFlag>0</EnabledFlag> | ||||||
|           <Address>0</Address> |           <Address>0</Address> | ||||||
|           <ByteObject>0</ByteObject> |           <ByteObject>0</ByteObject> | ||||||
|           <HtxType>0</HtxType> |           <HtxType>0</HtxType> | ||||||
| @@ -239,27 +287,37 @@ | |||||||
|         <Ww> |         <Ww> | ||||||
|           <count>0</count> |           <count>0</count> | ||||||
|           <WinNumber>1</WinNumber> |           <WinNumber>1</WinNumber> | ||||||
|           <ItemText>sai</ItemText> |           <ItemText>gTokenInterface</ItemText> | ||||||
|         </Ww> |         </Ww> | ||||||
|         <Ww> |         <Ww> | ||||||
|           <count>1</count> |           <count>1</count> | ||||||
|           <WinNumber>1</WinNumber> |           <WinNumber>1</WinNumber> | ||||||
|           <ItemText>gTokenInterface</ItemText> |           <ItemText>t</ItemText> | ||||||
|         </Ww> |         </Ww> | ||||||
|         <Ww> |         <Ww> | ||||||
|           <count>2</count> |           <count>2</count> | ||||||
|           <WinNumber>1</WinNumber> |           <WinNumber>1</WinNumber> | ||||||
|           <ItemText>t</ItemText> |           <ItemText>lastToken,0x10</ItemText> | ||||||
|         </Ww> |         </Ww> | ||||||
|         <Ww> |         <Ww> | ||||||
|           <count>3</count> |           <count>3</count> | ||||||
|           <WinNumber>1</WinNumber> |           <WinNumber>1</WinNumber> | ||||||
|           <ItemText>lastToken</ItemText> |           <ItemText>memPool</ItemText> | ||||||
|         </Ww> |         </Ww> | ||||||
|         <Ww> |         <Ww> | ||||||
|           <count>4</count> |           <count>4</count> | ||||||
|           <WinNumber>1</WinNumber> |           <WinNumber>1</WinNumber> | ||||||
|           <ItemText>memPool</ItemText> |           <ItemText>qPtr[0]</ItemText> | ||||||
|  |         </Ww> | ||||||
|  |         <Ww> | ||||||
|  |           <count>5</count> | ||||||
|  |           <WinNumber>1</WinNumber> | ||||||
|  |           <ItemText>qPtr[1]</ItemText> | ||||||
|  |         </Ww> | ||||||
|  |         <Ww> | ||||||
|  |           <count>6</count> | ||||||
|  |           <WinNumber>1</WinNumber> | ||||||
|  |           <ItemText>qPtr[2]</ItemText> | ||||||
|         </Ww> |         </Ww> | ||||||
|       </WatchWindow1> |       </WatchWindow1> | ||||||
|       <MemoryWindow1> |       <MemoryWindow1> | ||||||
| @@ -294,7 +352,7 @@ | |||||||
|       <DebugFlag> |       <DebugFlag> | ||||||
|         <trace>0</trace> |         <trace>0</trace> | ||||||
|         <periodic>1</periodic> |         <periodic>1</periodic> | ||||||
|         <aLwin>1</aLwin> |         <aLwin>0</aLwin> | ||||||
|         <aCover>0</aCover> |         <aCover>0</aCover> | ||||||
|         <aSer1>0</aSer1> |         <aSer1>0</aSer1> | ||||||
|         <aSer2>0</aSer2> |         <aSer2>0</aSer2> | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user