void UART_Send_Byte(unsigned char mydata)
{
ES=0;
TI=0;
SBUF=mydata;
while(!TI);
TI=0;
ES=1;
}
/**************************************************************************
- 功能描述:51单片机的串口发送0d 0a ,即回车换行
- 隶属模块:STC51串口操作
- 函数属性:外部,使用户使用
- 参数说明:无
- 返回说明:无
- 注:此函数就是发送0d 0a这两个字节,在“超级终端”上会有回车换行的效果
**************************************************************************/
void UART_Send_Enter()
{
UART_Send_Byte(0x0d);
UART_Send_Byte(0x0a);
}
/********************************************************************
* 名称 : UART_Send_Str(char *s)
* 功能 : 串口发送一个字符串
* 输入 : s:指向字符串数组的指针
* 输出 : 无
***********************************************************************/
void UART_Send_Str(char *s)
{
int len=strlen(s); //求字符串长度的
int i;
for(i=0;i<len;i++)
if(s==\r)
{
UART_Send_Enter();
}
else
{
UART_Send_Byte(s);
}
}
/********************************************************************
* 名称 : Com_send(unsigned char *p)
* 功能 : 串口发送字符串
* 输入 : p:指向字符串数组的指针
* 输出 : 无
***********************************************************************/
void Com_send(unsigned char *p)
{
while(1)
{
SBUF = *p;
while(!TI);//如果发送完毕,硬件会置位TI
p++;
if(*p == \0) break; //在每个字符串的最后,会有一个\0
TI = 0; //TI清零
}
}
/******************************************************************
- 功能描述:将一个32位的变量dat转为字符串,比如把1234转为"1234"
- 隶属模块:公开函数模块
- 函数属性:外部,用户可调用
- 参数说明:dat:带转的long型的变量
str:指向字符数组的指针,转换后的字节串放在其中
- 返回说明:无
******************************************************************/
void u32tostr(unsigned long dat,char *str)
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-33992-2.html
混乱继续进行下去