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

📄 serinit1.c

📁 单片机直接驱动TFT液晶显示320x240图像不需要lcd驱动IC
💻 C
字号:
/*------------------------------------------------------------------------------
Serinit.C
Crystal 16MHz
------------------------------------------------------------------------------*/
#include "Main.h"
#include "Serinit.h"
#include "Delay.h"

//UART0 initialize
// desired baud rate: 57600
// actual: baud rate:58824 (2.1%)
void serinit(void)
{
 	    UCSRB = 0x00; 	  //disable while setting baud rate
        UCSRA = 0x00;
        UCSRC = BIT(URSEL)|BIT(UCSZ1)|BIT(UCSZ0); // 8 bit data
        UBRRL = 0x10; 	  //set baud rate lo
        UBRRH = 0x00; 	  //set baud rate hi
        UCSRB = BIT(RXEN)|BIT(TXEN);
}

unsigned char get_data(void)
{		
	 	while( !(UCSRA&BIT(RXC)) );
		return UDR;
}

void send_data(unsigned char data)
{
   		while( !(UCSRA&BIT(UDRE)) );
        UDR=data;
}

void send_string(unsigned char *str)
{ 
  	    while(*str!=0)
  	    {
   	        send_data(*str);
   		    str++;
			delay_50us();
  	    }
}

const unsigned char prompt_ascii[]="0123456789ABCDEF";
void send_num(unsigned char byte)//显示两位HEX码
{  
		unsigned char a;

        delay_1ms();
		a=(byte&0xF0)>>4;
    	send_data(prompt_ascii[a]);
        delay_1ms();
		a=byte&0x0F;
    	send_data(prompt_ascii[a]);
        delay_500us();
}

#pragma interrupt_handler uart0_rx_isr:10
void uart0_rx_isr(void)
{
}

⌨️ 快捷键说明

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