comm.c

来自「LPC2134的bootloader , 请用ADS查看地址设定。」· C语言 代码 · 共 83 行

C
83
字号
typedef unsigned char uchar;
typedef unsigned int uint;


#include "config.h"
#include "define.h"
#include "comm.h"
#include "PubFunc.h"
#include "key.h"
#include "beep.h"
#include "lcd.h"


int UART0_GetByte(unsigned char *ch)
{
 	while((U0LSR & 0x01) == 0)
 	{
		if(GetKey() == KEY_03)
		{
//			Beep(1) ;
			return(ERROR) ;
		}
 	}
 	
 	*ch = U0RBR;
 	return SUCCESS ;
}

int  UART0_GetStr(unsigned char *s, unsigned int len , int flag)
{
	unsigned char ch ;
	unsigned int n = len ;
#if  DEBUG
	char tmp[10] ;
	int  count = 0 ;
#endif
	
 	for( ; n>0; n--)
 	{
 		if(UART0_GetByte(&ch) != SUCCESS)
 		{
 			return(ERROR) ;
 		}
 		else
 		{
#if  DEBUG 		
			if(flag == 1)
			{ 		
				tmp[count] = ch ;
				count++ ;
			}
#endif			
  			*s++ = ch ;
  		}
 	}

#if  DEBUG 	
	if(flag == 1)
	{
		ClearScreen();
		tmp[count+1] = 0x00 ;
		DisplayStr(0,8,8,  tmp);
		DelayMs(500) ;
	}
#endif	
 	return(SUCCESS) ;
}

void UART0_SendByte(unsigned char dat)
{
	U0THR = dat;					// 要发送的数据
	while ((U0LSR & 0x20) == 0);	// 等待数据发送完毕
}

void UART0_SendStr(unsigned char *str , unsigned int len)
{
	unsigned int i;
	
	for(i = 0; i<len; i++)
	{
		UART0_SendByte(str[i]);
	}
}

⌨️ 快捷键说明

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