📄 send.c
字号:
/***************************************************************
功能:实现单片机通过串口循环向上位机发送数据
作者:ZST
时间:2006-05
版本:V1.0
***************************************************************/
#include "reg51.h" //包函8051内部资源的定义
/*-------------------------------------------------------
功能:串口初始化,波特率9600 方式1 8 UART
-------------------------------------------------------*/
void Init_Com(void)
{
TMOD = 0x20;//定时器1工作在方式2,8 bits reload
PCON = 0x00;//SMOD=0;
SCON = 0x50;//SM0=0,SM1=1,SM2=0,REN=1,
TH1 = 0xFd;//计数器初值设定 f0sc=11.0592
TL1 = 0xFd;
TR1 = 1; //开定时器timer1
}
/*-----------------------------------------
1MS延时子程序
-----------------------------------------*/
void Delay_xMs(unsigned int x)
{
unsigned int i,j;
for( i =0;i < x;i++ )
{
for( j =0;j<110;j++ );
}
}
//字符输出函数
void putchar(unsigned char c)
{
SBUF=c; //发送数据
while(!TI); //判断上次发送有没有完成,完成后则进行下一步
TI=0;
}
//带回车换行控制的字符串输出函数
int puts(char *s)
{
while(*s) //当指针初值为1时执行下一条
{putchar(*s);
s++;
}
putchar(0x0a); //进行回车换行处理
putchar(0x0d);
return 1;
}
//不带回车换行控制的字符串输出函数
void putstr(char *s)
{
while(*s)
{putchar(*s);
s++;
}
}
/*-------------------------------------------------------
主程序
功能:实现接收数据并把接收到的数据发送出去
-------------------------------------------------------*/
void main()
{
//unsigned char i;
Init_Com();//初始化
while(1)
{
/*for(i=0;i<10;i++)
{ SBUF =0X30+i; //发送数据
Delay_xMs(100);//延时程序
}*/
puts("欢迎您使用Smart51实验开发套件!");
puts("本次实验的目的很简单就是进行单片机输出测试!");
//SBUF =0X32;
Delay_xMs(1000);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -