Rev 52 | Rev 54 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 52 | Rev 53 | ||
---|---|---|---|
Line 96... | Line 96... | ||
96 | uint8_t RequestFlags = 0x00; |
96 | uint8_t RequestFlags = 0x00; |
97 | uint8_t RequestDebugLabel = 0; |
97 | uint8_t RequestDebugLabel = 0; |
98 | uint8_t ConfirmFrame = 0; |
98 | uint8_t ConfirmFrame = 0; |
99 | uint8_t RemoteKeys = 0; |
99 | uint8_t RemoteKeys = 0; |
100 | uint8_t DisplayLine = 0; |
100 | uint8_t DisplayLine = 0; |
101 | uint8_t DisplayBuff[80]; |
- | |
102 | /* |
- | |
103 | const uint8_t DisplayBuff[4][20] = |
- | |
104 | { |
101 | |
105 | "++ MK3MAG ++", |
102 | const uint8_t BoardString[20] = "++ MK3MAG ++"; |
106 | " ", |
103 | const uint8_t EmptyString[20] = " "; |
107 | " ", |
104 | const uint8_t VersionString[20] = {' ',' ',' ',' ',' ',' ',' ','V',(0x30 + VERSION_MAJOR),'.',('0' + VERSION_MINOR/10),('0' + VERSION_MINOR%10),('a' + VERSION_PATCH),' ',' ',' ',' ',' ',' ',' '}; |
108 | " " |
- | |
109 | };*/ |
- | |
Line 110... | Line 105... | ||
110 | 105 | ||
111 | uint16_t PC_Connected = 0; |
106 | uint16_t PC_Connected = 0; |
Line 161... | Line 156... | ||
161 | /****************************************************************/ |
156 | /****************************************************************/ |
162 | /* Initialization of the USART0 */ |
157 | /* Initialization of the USART0 */ |
163 | /****************************************************************/ |
158 | /****************************************************************/ |
164 | void USART0_Init (void) |
159 | void USART0_Init (void) |
165 | { |
160 | { |
166 | uint8_t i; |
- | |
167 | uint8_t sreg = SREG; |
161 | uint8_t sreg = SREG; |
168 | uint16_t ubrr = (uint16_t) ((uint32_t) F_CPU/(8 * BAUD_RATE) - 1); |
162 | uint16_t ubrr = (uint16_t) ((uint32_t) F_CPU/(8 * BAUD_RATE) - 1); |
Line 169... | Line 163... | ||
169 | 163 | ||
170 | // disable all interrupts before configuration |
164 | // disable all interrupts before configuration |
Line 242... | Line 236... | ||
242 | USART0_putchar ('\n'); |
236 | USART0_putchar ('\n'); |
243 | USART0_putchar ('C'); |
237 | USART0_putchar ('C'); |
244 | USART0_putchar ('P'); |
238 | USART0_putchar ('P'); |
245 | USART0_putchar (':'); |
239 | USART0_putchar (':'); |
246 | USART0_putchar ('V'); |
240 | USART0_putchar ('V'); |
247 | USART0_putchar (0x30 + VERSION_MAJOR); |
241 | USART0_putchar ('0' + VERSION_MAJOR); |
248 | USART0_putchar ('.'); |
242 | USART0_putchar ('.'); |
249 | USART0_putchar (0x30 + VERSION_MINOR/10); |
243 | USART0_putchar ('0' + VERSION_MINOR/10); |
250 | USART0_putchar (0x30 + VERSION_MINOR%10); |
244 | USART0_putchar ('0' + VERSION_MINOR%10); |
251 | USART0_putchar ('a' + VERSION_PATCH); |
245 | USART0_putchar ('a' + VERSION_PATCH); |
252 | USART0_putchar ('\n'); |
246 | USART0_putchar ('\n'); |
Line 253... | Line -... | ||
253 | - | ||
254 | // prepare display buffer |
- | |
255 | for(i=0; i < 80; i++) DisplayBuff[i] = ' '; |
- | |
256 | DisplayBuff[0] = '+'; |
- | |
257 | DisplayBuff[1] = '+'; |
- | |
258 | DisplayBuff[7] = 'M'; |
- | |
259 | DisplayBuff[8] = 'K'; |
- | |
260 | DisplayBuff[9] = '3'; |
- | |
261 | DisplayBuff[10] = 'M'; |
- | |
262 | DisplayBuff[11] = 'A'; |
- | |
263 | DisplayBuff[12] = 'G'; |
- | |
264 | DisplayBuff[18] = '+'; |
- | |
265 | DisplayBuff[19] = '+'; |
- | |
266 | - | ||
267 | DisplayBuff[47] = 'V'; |
- | |
268 | DisplayBuff[48] = (0x30 + VERSION_MAJOR); |
- | |
269 | DisplayBuff[49] = '.'; |
- | |
270 | DisplayBuff[50] = (0x30 + VERSION_MINOR/10); |
- | |
271 | DisplayBuff[51] = (0x30 + VERSION_MINOR%10); |
- | |
272 | DisplayBuff[52] = ('a' + VERSION_PATCH); |
- | |
273 | 247 | ||
274 | // restore global interrupt flags |
248 | // restore global interrupt flags |
275 | SREG = sreg; |
249 | SREG = sreg; |
Line 276... | Line 250... | ||
276 | } |
250 | } |
Line 644... | Line 618... | ||
644 | RequestFlags &= ~RQST_DEBUG_DATA; |
618 | RequestFlags &= ~RQST_DEBUG_DATA; |
645 | } |
619 | } |
Line 646... | Line 620... | ||
646 | 620 | ||
647 | if((RequestFlags & RQST_DISPLAY_DATA) && txd_complete) |
621 | if((RequestFlags & RQST_DISPLAY_DATA) && txd_complete) |
- | 622 | { |
|
- | 623 | switch(DisplayLine) |
|
- | 624 | { |
|
- | 625 | case 0: |
|
- | 626 | SendOutData('H', MK3MAG_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), BoardString, 20); |
|
- | 627 | break; |
|
- | 628 | ||
648 | { |
629 | case 2: |
- | 630 | SendOutData('H', MK3MAG_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), VersionString, 20); |
|
- | 631 | break; |
|
- | 632 | ||
- | 633 | default: |
|
- | 634 | SendOutData('H', MK3MAG_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), EmptyString, 20); |
|
- | 635 | break; |
|
649 | SendOutData('H', MK3MAG_ADDRESS, 2, &DisplayLine, sizeof(DisplayLine), &DisplayBuff[DisplayLine * 20], 20); |
636 | } |
650 | DisplayLine++; |
637 | DisplayLine++; |
651 | if(DisplayLine >= 4) DisplayLine = 0; |
638 | if(DisplayLine >= 4) DisplayLine = 0; |
652 | RequestFlags &= ~RQST_DISPLAY_DATA; |
639 | RequestFlags &= ~RQST_DISPLAY_DATA; |