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

📄 serial.c

📁 这是我做的关于考勤机的一些测试程序
💻 C
字号:
/******************************************************************
 *                    copyright  2004                          *
*******************************************************************
		文件名称:   serial.c
		文件版本:   1.00
		创建人:	 郭志雪
		创建日期:   2004.05.19
		功能描述:   串口驱动
		相关硬件:    AT89S52,11.0592M晶震

		
*******************************************************************/
#include "serial.h"

unsigned char xdata aa[10] _at_ 0x2000;
/*******************************************************************
*	函数名称:	init_serial	
*	创建人员:	gloria
*	函数版本:	1.00
*	创建日期:	2004.5.19
*   功能描述:  初始化串口2
*	入口参数:  无
*	返回值: 	无
    定时器2做为波特率发生器时
                         定时方式    BAUT=Fosc / (2*16*(65536-(RCAP2H,RCAP2L)))
                         计数方式    BAUT=外部时钟频率/(16*(65536-(RCAP2H,RCAP2L)))
     定时器1做为波特率发生器时
                                           smod
                                     BAUT=2     * 定时器/计数器溢出速率 /32
*******************************************************************/
 void init_serial()
 {
 /*	TH2=0xff;
	TL2=0xdc;
    RCAP2H=0XFF;
	RCAP2L=0XDC;		//;ffb2	12m, 4800
						//	;ffb8  11.0592 4800; ffdch 11.0592 9600
 	
	SCON=0x50;    //SM0 SM1  SM2  REN  TB8 RB8  TI  RI
	              // 0   1    0    1    0   0    0   0
	T2CON=T2CON|0X30;   //TF2  EXF2 RCLK TCLK EXEN2  TR2  C/T2  CP/RL2
	                    // 0    0    1    1    0      0     0     0
	TR2=1;
	ES=1;*/
  TMOD=0X20; //设置波特率为9600,通过设置定时器1的工作方式和初始值
   TL1=0xfd;
   TH1=0xfd;
   SCON=0x50; 
   PCON=0x00; //设置串行口工作方式,工作为方式1,10位异步收发。
   TR1=1;  //启动定时器1
   ES=1; 
 }
unsigned char index=0;
void main()
{  unsigned char i;
	init_serial( );
    EA=1;

	while(1){}
}
void serial(void) interrupt 4
{	uchar  temp;
	if(TI)
	{
		TI=0;

	}
	if(RI)
	{
		RI=0;
		temp=SBUF;
		SBUF=temp;	
	 }
}

⌨️ 快捷键说明

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