⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 00-串口测试程式(发送).c

📁 CAN现场总线.rar
💻 C
字号:
//	00-串口测试程式(发送).c
//	不停的发送1
//	29-09-09 akuei2	

#include "stdio.h"
#include "reg52.h"
#define uchar unsigned char

//1毫秒延迟函数
void Delay_1ms(int x)
{
	int j;
	for(;x>0;x--)
		for(j=112;j>0;j--);
}

//串口发送函数
void Txd(void)
{
    ES=0;				 // 关闭串口中断,采用查询发送方式
    TI=1;				 // 发送结束标志位置一
    while(TI)
    {		 
		/*	
		T1=0;			 // 如果不喜欢printf函数,可以注释掉它
		SBUF=0x31;		 // 然后去除 ** 就可以使用典型的发送 eg: 0x31 ,"1" 的ascii码
		*/
		printf("1");	 // 使用printf函数,发送数据
        while(!TI);		 // 等待发送
        TI=0;
    }
    ES=1;			   	 // 打开串口中断
}

//初始化函数
void Init(void)
{
	TMOD=0x20;					// T1工作模式2,T0工作模式1
	SM0=0;SM1=1;				// 设置串口的工作模式
	TH1=0xfd;					// 给TH1赋值,决定赋给TL1的值
	TL1=0xfd;					// 给TL1赋值决定波特率9600kb/s

	TR0=1;		// 定时器0启动
	ET0=1;
	TR1=1;		// 定时器1启动
	  
	IT0 = 1;	//外部中断0负边沿触发
	EX0 = 1;	//打开外部中断0

	REN=0;		// 不应许串口接收数据	
	EA=1;		// 开启中断
	ES=1;		// 串口中断应许

}

//主函数
void main(void)
{
	Init();					// 调用初始化函数
	while(1)	
	{
		Txd();				//不停的发送
		Delay_1ms(500);		//延迟500毫秒
	}
}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -