51单片机开发入门与典型实例
源代码在线查看: tx22-02.c
/* 文件名:TX22-02.C */
/* 程序功能:发送一字符串 */
#include /* 头文件 */
char code str[] = "Hello! \0"; /* 声明字符数组str[] */
void send_str(); /* 发送字符串函数 */
sbit K1 = P3^2; /* 定义按键 */
unsigned char temp; /* 声明无符号字符变量temp */
main() /* 主函数 */
{
SCON = 0x50; /* 设定串行口工作方式1 */
TMOD = 0x20; /* 定时器1,自动重载, 产生波特率 */
TH1 = 0xfd; /* 波特率为9600 */
TR1 = 1; /* 启动定时器1 */
while(1) /* 无限循环 */
{
unsigned int j; /* 声明无符号整数变量j */
if (K1==0) /* 如果按键K1,则执行{ } */
{
for(j=0;j while(!K1); /* 等待放开 */
send_str(); /* 调用发送字符串函数 */
}
}
}
void send_str() /* 发送字符串函数 */
{
unsigned char i = 0; /* 声明无符号字符变量i */
while(str[i] != '\0') /* 遇到'\0',则停止发送 */
{
SBUF = str[i]; /* 发送字符 */
while(!TI); /* 等特数据传送 */
TI = 0; /* 清除数据传送标志 */
i++; /* 下一个字符 */
}
}