Uart01.C
上传用户:zanguozi01
上传日期:2014-02-19
资源大小:155k
文件大小:4k
源码类别:

GPS编程

开发平台:

Others

  1. /********************************************************
  2. * 文件名:  Uart01.C
  3. * 创建时间:2004年12月7日
  4. * 创建人:  
  5. * 版本号:  1.00
  6. * 功能:   根据MSP430的特点,这部分实现MSP430两个硬串口的功能
  7.   包括三个模拟串口的发送和接收
  8. * 文件属性:公共文件
  9. * 修改历史:(每条详述)
  10. ********************************************************/
  11. #include <msp430x14x.h>
  12. #include "Uart01.h"
  13. #include "General.h"
  14. #include "Define_Bit.h"
  15. #include "Do_SRAM.h"
  16. #include "D_Buffer.h"
  17. /********************************************************
  18. * 函数名:Send_COM0_Byte
  19. 作用域:外部文件调用
  20. * 功能:  通过串口0发送一个字节
  21. * 参数:  Input
  22. * 返回值:无
  23. * 创建人:
  24. *
  25. * 修改历史:(每条详述)
  26. ********************************************************/
  27. void Send_COM0_Byte(unsigned char Input)
  28. {
  29. IFG1&=~UTXIFG0;
  30. TXBUF0=Input;
  31. while((IFG1&UTXIFG0)==0){}
  32. }
  33. /********************************************************
  34. * 函数名:Send_COM1_Byte
  35. 作用域:外部文件调用
  36. * 功能:  通过串口1发送一个字节
  37. * 参数:  Input
  38. * 返回值:无
  39. * 创建人:
  40. *
  41. * 修改历史:(每条详述)
  42. ********************************************************/
  43. void Send_COM1_Byte(unsigned char Input)
  44. {
  45. IFG2&=~UTXIFG1;
  46. TXBUF1=Input;
  47. while((IFG2&UTXIFG1)==0){}
  48. }
  49. /********************************************************
  50. * 函数名:Send_COM0_String
  51. 作用域:外部文件调用
  52. * 功能:  通过串口0发送一个字符串
  53. * 参数:  *Point,Count
  54. * 返回值:
  55. * 创建人:
  56. *
  57. * 修改历史:(每条详述)
  58. ********************************************************/
  59. void Send_COM0_String(unsigned char *Point,unsigned int Count)
  60. {
  61. while(Count>0)
  62. {
  63. IFG1&=~UTXIFG0;
  64. TXBUF0=*Point;
  65. while((IFG1&UTXIFG0)==0){}
  66. Point++;
  67. Count--;
  68. }
  69. }
  70. /********************************************************
  71. * 函数名:Send_COM1_String
  72. 作用域:外部文件调用
  73. * 功能:  通过串口1发送一个字符串
  74. * 参数:  *Point,Count
  75. * 返回值:
  76. * 创建人:
  77. *
  78. * 修改历史:(每条详述)
  79. ********************************************************/
  80. void Send_COM1_String(unsigned char *Point,unsigned int Count)
  81. {
  82. while(Count>0)
  83. {
  84. IFG2&=~UTXIFG1;
  85. TXBUF1=*Point;
  86. while((IFG2&UTXIFG1)==0){}
  87. Point++;
  88. Count--;
  89. }
  90. }
  91. /********************************************************
  92. * 函数名:Receive_COM0(串口0的接收中断处理程序)
  93. 作用域:本地文件使用
  94. * 功能:
  95. * 参数:
  96. * 返回值:
  97. * 创建人:
  98. *
  99. * 修改历史:(每条详述)
  100. ********************************************************/
  101. interrupt [UART0RX_VECTOR] void Receive_COM0(void)
  102. {
  103. IFG1&=~URXIFG0;
  104. if( gReceive0_GSM_Buffer_Point != gReceive0_GSM_Buffer_End )
  105. {
  106. gReceive0_GSM_Buffer[gReceive0_GSM_Buffer_Point] = RXBUF0;
  107. gReceive0_GSM_Buffer_Point++;
  108. if( gReceive0_GSM_Buffer_Point >= sizeof(gReceive0_GSM_Buffer) ) gReceive0_GSM_Buffer_Point=0;
  109. gM22_GSM_ECHO_Timer=0;
  110. gM22_TCP_ECHO_Timer=0;
  111. }
  112. }
  113. /********************************************************
  114. * 函数名:Send_COM0(串口0的发送中断处理程序)
  115. 作用域:本项目暂时不使用
  116. * 功能:
  117. * 参数:
  118. * 返回值:
  119. * 创建人:
  120. *
  121. * 修改历史:(每条详述)
  122. ********************************************************/
  123. /*
  124. interrupt [UART0TX_VECTOR] void Send_COM0(void)
  125. {
  126. }
  127. */
  128. /********************************************************
  129. * 函数名:Receive_COM1(串口1的接收中断处理程序)
  130. 作用域:本项目暂时不使用
  131. * 功能: 用来接收处理来自显示终端的接收数据
  132. * 参数:
  133. * 返回值:
  134. * 创建人:
  135. *
  136. * 修改历史:(每条详述)
  137. ********************************************************/
  138. interrupt [UART1RX_VECTOR] void Receive_COM1(void)
  139. {
  140. unsigned char Data_Temp=0;
  141. IFG2&=~URXIFG1;
  142. Data_Temp=RXBUF1;
  143. SRAM_Init();
  144. SRAM_Write(gReceive1_Point,Data_Temp);
  145. gReceive1_Point++;
  146. if(gReceive1_Point>SRAM_RECORD_E) gReceive1_Point=SRAM_RECORD_S;
  147. gReceive1_Over_Count=0;
  148. }
  149. /********************************************************
  150. * 函数名:Send_COM1(串口1的发送中断处理程序)
  151. 作用域:本项目暂时不使用
  152. * 功能:
  153. * 参数:
  154. * 返回值:
  155. * 创建人:
  156. *
  157. * 修改历史:(每条详述)
  158. ********************************************************/
  159. /*
  160. interrupt [UART1TX_VECTOR] void Send_COM1(void)
  161. {
  162. }
  163. */