GUIVal.c
上传用户:zbk8730
上传日期:2017-08-10
资源大小:12168k
文件大小:2k
- /*
- *********************************************************************************************************
- * uC/GUI
- * Universal graphic software for embedded applications
- *
- * (c) Copyright 2002, Micrium Inc., Weston, FL
- * (c) Copyright 2002, SEGGER Microcontroller Systeme GmbH
- *
- * 礐/GUI is protected by international copyright laws. Knowledge of the
- * source code may not be used to write a similar product. This file may
- * only be used in accordance with a license and should not be redistributed
- * in any way. We appreciate your understanding and fairness.
- *
- ----------------------------------------------------------------------
- File : GUIVAL.C
- Purpose : Routines to display values as dec, binary or hex
- ----------------------------------------------------------------------
- */
- #include "GUI_Protected.H"
- #include "GUIDebug.h"
- #include "string.h"
- /*********************************************************************
- *
- * Public routines
- *
- **********************************************************************
- */
- /*********************************************************************
- *
- * Decimal GUI_Disp... routines
- */
- void GUI_DispDecShift(I32 v, U8 Len, U8 Shift) {
- char ac[12];
- char* s = ac;
- GUI_AddDecShift(v, Len, Shift, &s);
- GUI_DispString(ac);
- }
- void GUI_DispSDecShift(I32 v, U8 Len, U8 Shift) {
- char ac[12];
- char* s = ac;
- v = GUI_AddSign(v, &s);
- GUI_AddDecShift(v, --Len, Shift, &s);
- GUI_DispString(ac);
- }
- void GUI_DispDecMin(I32 v) {
- char ac[12];
- char* s = ac;
- GUI_AddDecMin(v, &s);
- GUI_DispString(ac);
- }
- void GUI_DispDecSpace(I32 v, U8 MaxDigits) {
- char ac[12];
- char* s = ac;
- U8 Len;
- if (v < 0) {
- v = GUI_AddSign(v, &s);
- MaxDigits--;
- }
- Len = GUI_Long2Len(v);
- while (Len++ < MaxDigits) {
- *s++ = ' ';
- }
- GUI_AddDecMin(v, &s);
- GUI_DispString(ac);
- }
- void GUI_DispSDec(I32 v, U8 Len) { GUI_DispSDecShift(v,Len,0);}
- void GUI_DispDec (I32 v, U8 Len) { GUI_DispDecShift(v, Len,0); }
- void GUI_DispDecAt(I32 v, I16P x, I16P y, U8 Len) {
- char ac[12];
- char* s = ac;
- GUI_AddDecShift(v, Len, 0, &s);
- GUI_DispStringAt(ac, x, y);
- }