📄 menus.lst
字号:
175 2 }
176 1 else if (p == 6)
177 1 {
178 2 MoveCursor(CursorPosY=19, CursorPosX=1);
179 2 printf("Current Settings for MO: %d", mo);
C166 COMPILER V6.02, MENUS 08/28/2006 10:05:57 PAGE 4
180 2 printf("\n"); // New line
181 2 CAN_vGetMsgObj(mo, &SW_MO);
182 2 if(SW_MO.uwMsgCfg&0x2)
183 2 printf("Node=B ");
184 2 else
185 2 printf("Node=A ");
186 2 if(SW_MO.uwMsgCfg & 0x08)
187 2 printf("DIR=TX "); // DIR
188 2 else
189 2 printf("DIR=RX "); // DIR
190 2 printf("ID=0x%03x", SW_MO.ulID); // ID
191 2 printf(" ");
192 2 printf("Mask=0x%03x",SW_MO.ulMask & 0x7FF);
193 2 printf(" Data=");
194 2 for(i = 0; i < 8; i++)
195 2 {
196 3 if (i >= ((SW_MO.uwMsgCfg&0x00F0)>>4) )
197 3 putchar('-');
198 3 else
199 3 {
200 4 if( (SW_MO.ubData[i] > 31) && (SW_MO.ubData[i] < 127) )
201 4 putchar(SW_MO.ubData[i]); // Data
202 4 else
203 4 putchar('-');
204 4 }
205 3 }
206 2 printf("\n\n"); // New lines
207 2 printf("Enter the 11-bit Mask in Hex (0=don't care, 1=care about ID bit):\n");
208 2 printf("0x");
209 2 CursorPosX = 3;
210 2 CursorPosY = 23;
211 2 }
212 1 else if (p == 7)
213 1 {
214 2 MoveCursor(CursorPosY=19, CursorPosX=1);
215 2 printf("Current Settings for MO: %d", mo);
216 2 printf("\n"); // New line
217 2 CAN_vGetMsgObj(mo, &SW_MO);
218 2 if(SW_MO.uwMsgCfg&0x2)
219 2 printf("Node=B ");
220 2 else
221 2 printf("Node=A ");
222 2 if(SW_MO.uwMsgCfg & 0x08)
223 2 printf("DIR=TX "); // DIR
224 2 else
225 2 printf("DIR=RX "); // DIR
226 2 printf("ID=0x%03x", SW_MO.ulID); // ID
227 2 printf(" ");
228 2 printf("Mask=0x%03x",SW_MO.ulMask & 0x7FF);
229 2 printf(" Data=");
230 2 for(i = 0; i < 8; i++)
231 2 {
232 3 if (i >= ((SW_MO.uwMsgCfg&0x00F0)>>4) )
233 3 putchar('-');
234 3 else
235 3 {
236 4 if( (SW_MO.ubData[i] > 31) && (SW_MO.ubData[i] < 127) )
237 4 putchar(SW_MO.ubData[i]); // Data
238 4 else
239 4 putchar('-');
240 4 }
241 3 }
C166 COMPILER V6.02, MENUS 08/28/2006 10:05:57 PAGE 5
242 2 printf("\n\n"); // New lines
243 2 printf("Enter upto 8 characters for the frame data (data sent will be characters):\n");
244 2 CursorPosX = 1;
245 2 CursorPosY = 23;
246 2 }
247 1 else if (p == 8)
248 1 {
249 2 MoveCursor(CursorPosY=19, CursorPosX=1);
250 2 printf("Current Settings for MO: %d", mo);
251 2 printf("\n"); // New line
252 2 CAN_vGetMsgObj(mo, &SW_MO);
253 2 if(SW_MO.uwMsgCfg&0x2)
254 2 printf("Node=B ");
255 2 else
256 2 printf("Node=A ");
257 2 if(SW_MO.uwMsgCfg & 0x08)
258 2 printf("DIR=TX "); // DIR
259 2 else
260 2 printf("DIR=RX "); // DIR
261 2 printf("ID=0x%03x", SW_MO.ulID); // ID
262 2 printf(" ");
263 2 printf("Mask=0x%03x",SW_MO.ulMask & 0x7FF);
264 2 printf(" Data=");
265 2 for(i = 0; i < 8; i++)
266 2 {
267 3 if (i >= ((SW_MO.uwMsgCfg&0x00F0)>>4) )
268 3 putchar('-');
269 3 else
270 3 {
271 4 if( (SW_MO.ubData[i] > 31) && (SW_MO.ubData[i] < 127) )
272 4 putchar(SW_MO.ubData[i]); // Data
273 4 else
274 4 putchar('-');
275 4 }
276 3 }
277 2 printf("\n\n"); // New lines
278 2 printf("Enter 'E' to Enable the Message Objec or 'D' to Disable the Message Object:\n");
279 2 CursorPosX = 1;
280 2 CursorPosY = 23;
281 2 }
282 1
283 1 for (i = 0; i< 10 ; i++)
284 1 digits[i] = 0;
285 1 digit_index = 0;
286 1 }
287
288 void MoveCursor(unsigned int y, unsigned int x)
289 {
290 1 unsigned int i;
291 1
292 1 printf("\033[f"); // Move cursor to upper left corner
293 1 for (i = 1; i< y; i++)
294 1 printf("\033[1B"); // Move cursor down one line
295 1
296 1 for (i = 1; i< x; i++)
297 1 printf("\033[1C"); // Move cursor Right one space
298 1 }
299
300 void UpdateStatus(void)
301 {
302 1 unsigned int i;
303 1 //unsigned int j;
C166 COMPILER V6.02, MENUS 08/28/2006 10:05:57 PAGE 6
304 1 unsigned int k;
305 1
306 1 for (i = 0; i<32; i++)
307 1 {
308 2 if (MO_Status[i])
309 2 {
310 3 MO_Status[i] = 0;
311 3 if(i & 0x01)
312 3 {
313 4 MoveCursor((i>>1)+2, 42);
314 4 }
315 3 else
316 3 {
317 4 MoveCursor((i>>1)+2, 1);
318 4 }
319 3 printf(" "); // Clear field
320 3 printf("\033[31D"); // Move Cursor back
321 3 if (CAN_HWOBJ[i].uwMSGCTR & 0x0080) // if MO valid
322 3 {
323 4 CAN_vGetMsgObj(i, &SW_MOs[i]);
324 4 printf("%02d",i); // MO
325 4 if(SW_MOs[i].uwMsgCfg & 0x2)
326 4 printf(" B");
327 4 else
328 4 printf(" A");
329 4
330 4 if(SW_MOs[i].uwMsgCfg & 0x08)
331 4 printf(" TX"); // DIR
332 4 else
333 4 printf(" RX"); // DIR
334 4 printf(" 0x%03x", SW_MOs[i].ulID); // ID
335 4 printf(" ");
336 4
337 4 printf("0x%03x", SW_MOs[i].ulMask & 0x7FF);
338 4 printf(" ");
339 4
340 4 for(k = 0; k < 8; k++)
341 4 {
342 5 if (k >= ((SW_MOs[i].uwMsgCfg&0x00F0)>>4) )
343 5 putchar('-');
344 5 else
345 5 {
346 6 if( (SW_MOs[i].ubData[k] > 31) && (SW_MOs[i].ubData[k] < 127) )
347 6 putchar(SW_MOs[i].ubData[k]); // Data
348 6 else
349 6 putchar('-');
350 6 }
351 5 }
352 4 }
353 3 else
354 3 {
355 4 printf("%02d",i); // MO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -