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

📄 usart.c

📁 Bootloader for Atmel AT91SAM7S128 lloader_sram9 - The ARM code pc2 - The pc software
💻 C
字号:

#include "common.h"
#include "usart.h"

uchar usart_getc(void) {
	while((*AT91C_US0_CSR & AT91C_US_RXRDY) == 0);
	return (*AT91C_US0_RHR & 0xFF);	
}

void usart_putc(uchar data) {		
	while((*AT91C_US0_CSR & AT91C_US_TXRDY) == 0);
	*AT91C_US0_THR = (data & 0xFF);
}

void usartInit(void) {
	//Enable Clock Source for USART
	*AT91C_PMC_PCER = 1<<AT91C_ID_US0;

	//Set baudrate (9600bps)
	*AT91C_US0_BRGR = 5; //62; //MCK / (16 * 19200);
	
	*AT91C_US0_IDR = (unsigned int) -1;
	
	//Set mode
	*AT91C_US0_MR = 0x000008C0;
	
	//Configure i/o ports
	*AT91C_PIOA_PPUDR = (1<<5 | 1<<6);
	*AT91C_PIOA_PDR = (1<<5 | 1<<6);
	*AT91C_PIOA_ASR = (1<<5 | 1<<6);
	
	//Enable transmitter/receiver
	*AT91C_US0_CR = AT91C_US_TXEN;
	*AT91C_US0_CR = AT91C_US_RXEN; 

}

⌨️ 快捷键说明

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