2440lib.h
上传用户:qiulin1960
上传日期:2013-10-16
资源大小:2844k
文件大小:3k
源码类别:

Windows CE

开发平台:

Windows_Unix

  1. //
  2. // Copyright (c) Microsoft Corporation.  All rights reserved.
  3. //
  4. //
  5. // Use of this source code is subject to the terms of the Microsoft end-user
  6. // license agreement (EULA) under which you licensed this SOFTWARE PRODUCT.
  7. // If you did not accept the terms of the EULA, you are not authorized to use
  8. // this source code. For a copy of the EULA, please see the LICENSE.RTF on your
  9. // install media.
  10. //
  11. /*++
  12. THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  13. ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  14. THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  15. PARTICULAR PURPOSE.
  16. --*/
  17. //===================================================================
  18. // File Name : 2440lib.h
  19. // Function  : S3C2440 
  20. // Program   : Shin, On Pil (SOP)
  21. // Date      : February 26, 2002
  22. // Version   : 1.0
  23. // History
  24. //   0.0 : Programming start (February 20,2002) -> SOP
  25. //  1.0 : Modified for SMDK2440 PPC2003 BSP ( November 29, 2003 ) -> HMSEO
  26. //===================================================================
  27. #ifndef __2440lib_h__
  28. #define __2440lib_h__
  29. #ifdef __cplusplus
  30. extern "C" {
  31. #endif
  32. #ifdef __ARMCC_VERSION     // ARM Developer Suite
  33. //#define DebugOut Uart_Printf
  34. #define RETAILMSG(cond, printf_exp)
  35. #define ASSERT
  36. #define NULL 0
  37. #define min(x1,x2) ((x1<x2)? x1:x2)
  38. #define max(x1,x2) ((x1>x2)? x1:x2)
  39. #endif
  40. #define ONESEC0 (62500)              //16us resolution, max 1.04 sec
  41. #define ONESEC1 (31250)              //32us resolution, max 2.09 sec
  42. #define ONESEC2 (15625)              //64us resolution, max 4.19 sec
  43. #define ONESEC3 (7812)              //128us resolution, max 8.38 sec
  44. #define ONESEC4 (PCLK/128/(0xff+1))  //@60Mhz, 128*4us resolution, max 32.53 sec
  45. #define EnterPWDN(clkcon) ((void (*)(int))0x20)(clkcon)
  46. // 2440lib.c
  47. void Delay(int time);              //Watchdog Timer is used.
  48. void Port_Init(void);
  49. void Uart_Select(int ch);
  50. void Uart_Init(void);
  51. #if 0
  52. void Uart_TxEmpty(int ch);
  53. char Uart_Getch(void);
  54. char Uart_GetKey(void);
  55. int  Uart_GetIntNum(void);
  56. #endif
  57. void Uart_SendByte(int data);
  58. //void Uart_Printf(char *fmt,...);
  59. void Uart_SendDWORD(DWORD d, BOOL cr);
  60. void Uart_SendString(char *pt);
  61. char *hex2char(unsigned int val);
  62. void Timer_Start(int divider);    //Watchdog Timer is used.
  63. int  Timer_Stop(void);            //Watchdog Timer is used.
  64. #ifdef LED
  65. void Led_Display(int data);
  66. #else
  67. #define Led_Display(d)
  68. #endif
  69. void ChangeMPllValue(int m,int p,int s);
  70. void ChangeClockDivider(int hdivn,int pdivn);
  71. void ChangeUPllValue(int m,int p,int s);
  72. #ifdef __cplusplus
  73. }
  74. #endif
  75. #endif  //__2440lib_h__