Merge pull request #1 from HEI-SYND-227-PTR/fix-fore-wired
Fix for wired
This commit is contained in:
commit
bfdc39ece1
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