uarthw_evmdm642.h
上传用户:dahaojd
上传日期:2008-01-29
资源大小:14357k
文件大小:4k
源码类别:

DSP编程

开发平台:

C/C++

  1. /*
  2.  *  Copyright 2003 by Texas Instruments Incorporated.
  3.  *  All rights reserved. Property of Texas Instruments Incorporated.
  4.  *  Restricted rights to use, duplicate or disclose this code are
  5.  *  granted through contract.
  6.  *  
  7.  */
  8. /* "@(#) DDK 1.10.00.23 07-02-03 (ddk-b12)" */
  9. /*
  10.  *  ======== uarthw_evmdm642.h ========
  11.  */
  12. #ifndef UARTHW_EVMDM642_
  13. #define UARTHW_EVMDM642_
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17. typedef enum {
  18.     UARTHW_EVMDM642_WORD5                         = 0x00,        /* 5-bit */
  19.     UARTHW_EVMDM642_WORD6                         = 0x01,       /* 6-bit */
  20.     UARTHW_EVMDM642_WORD7                         = 0x02,       /* 7-bit */
  21.     UARTHW_EVMDM642_WORD8                         = 0x03        /* 8-bit */
  22. } UARTHW_EVMDM642_WordLen;
  23. typedef enum {
  24.     UARTHW_EVMDM642_STOP1                       = 0,    /* 1 stop bit */
  25.     UARTHW_EVMDM642_STOP2                       = 1             /* 2 stop bits */
  26. } UARTHW_EVMDM642_StopBits;
  27. typedef enum {
  28.     UARTHW_EVMDM642_DISABLE_PARITY      = 0x0,  /* disable parity checking */
  29.     UARTHW_EVMDM642_ODD_PARITY          = 0x2,  /* enable odd parity */
  30.     UARTHW_EVMDM642_EVEN_PARITY         = 0x3,  /* enable even parity */
  31.     UARTHW_EVMDM642_MARK_PARITY         = 0x5,  /* force mark (1) parity */
  32.     UARTHW_EVMDM642_SPACE_PARITY        = 0x7   /* force space (0) parity */
  33. } UARTHW_EVMDM642_Parity;
  34. typedef enum {
  35.     UARTHW_EVMDM642_FLOW_NONE           = 0x0000,
  36.     UARTHW_EVMDM642_FLOW_AFE_RTSCTS     = 0x0001,
  37.     UARTHW_EVMDM642_FLOW_AFE_CTS        = 0x0002
  38. } UARTHW_EVMDM642_FlowControl;
  39. /* TL16C550C UART baud rates - 29.4912MHz */
  40. typedef enum {
  41.     UARTHW_EVMDM642_BAUD_50                     = 36864,
  42.     UARTHW_EVMDM642_BAUD_75                     = 24576,
  43.     UARTHW_EVMDM642_BAUD_110            = 16756,
  44.     UARTHW_EVMDM642_BAUD_134_5          = 13704,
  45.     UARTHW_EVMDM642_BAUD_150            = 12288,
  46.     UARTHW_EVMDM642_BAUD_300            = 6144,
  47.     UARTHW_EVMDM642_BAUD_600            = 3072,
  48.     UARTHW_EVMDM642_BAUD_1200           = 1536,
  49.     UARTHW_EVMDM642_BAUD_1800           = 1024,
  50.     UARTHW_EVMDM642_BAUD_2000           = 922,
  51.     UARTHW_EVMDM642_BAUD_2400           = 768,
  52.     UARTHW_EVMDM642_BAUD_3600           = 512,
  53.     UARTHW_EVMDM642_BAUD_4800           = 384,
  54.     UARTHW_EVMDM642_BAUD_7200           = 256,
  55.     UARTHW_EVMDM642_BAUD_9600           = 192,
  56.     UARTHW_EVMDM642_BAUD_19200          = 96,
  57.     UARTHW_EVMDM642_BAUD_38400          = 48,
  58.     UARTHW_EVMDM642_BAUD_57600          = 32,
  59.     UARTHW_EVMDM642_BAUD_115200         = 16,
  60.     UARTHW_EVMDM642_BAUD_230400         = 8
  61. } UARTHW_EVMDM642_Baud;
  62. /* UART default attributes settings */
  63. #define UARTHW_EVMDM642_DEFAULTATTRS  {                 
  64.     UARTHW_EVMDM642_FLOW_NONE,                          
  65.     UARTHW_EVMDM642_DISABLE_PARITY,                     
  66.     UARTHW_EVMDM642_WORD8,                              
  67.     UARTHW_EVMDM642_STOP1,                              
  68.     UARTHW_EVMDM642_BAUD_115200                         
  69. }
  70. #define UARTHW_EVMDM642_HW_FLOW_MASK (UARTHW_EVMDM642_FLOW_AFE_CTS | 
  71.                                  UARTHW_EVMDM642_FLOW_AFE_RTSCTS)
  72. typedef struct UARTHW_EVMDM642_Params {
  73.     /* Flow Control Parameters */
  74.     UARTHW_EVMDM642_FlowControl flowControl;     
  75.         
  76.     /* Communication Parameters */
  77.     UARTHW_EVMDM642_Parity      parity;
  78.     UARTHW_EVMDM642_WordLen     wordSize;
  79.     UARTHW_EVMDM642_StopBits    stopBits;
  80.     UARTHW_EVMDM642_Baud        baud;
  81. } UARTHW_EVMDM642_Params;
  82. #ifdef __cplusplus
  83. }
  84. #endif /* extern "C" */
  85. #endif /* UARTHW_EVMDM642_ */