📄 uart1.c
字号:
/****************************************************************************
* 文件名:main.c
* 功 能:串口实验程序
*
* 说 明:
****************************************************************************/
#include <AT91SAM7S64.h>
//#include <SAM7S.h>
/****************************************************************************
* 文件名:US0_int()
* 功 能:中断函数
*
* 说 明:
****************************************************************************/
void US0_int(void) __irq
{
/*在这里添加自己的程序*/
*AT91C_US0_THR=*AT91C_US0_RHR&0xff;
*AT91C_AIC_EOICR = 0x00;
}
/****************************************************************************
* 文件名:US0_init()
* 功 能:初始化US0初始化
*
* 说 明:
****************************************************************************/
void US0_init(void)
{
*AT91C_PIOA_PER = 0xFFFFFFFF; //设置为POIO
*AT91C_PIOA_OER = AT91C_PIO_PA0 | AT91C_PIO_PA1|
AT91C_PIO_PA2 | AT91C_PIO_PA3; //PA01,PA02,PA03,PA04设为输出
*AT91C_PIOA_SODR= AT91C_PIO_PA0 | AT91C_PIO_PA1|
AT91C_PIO_PA2 | AT91C_PIO_PA3; // PA01,PA02,PA03,PA04输出高
*AT91C_PMC_PCER = (unsigned int)1<<AT91C_ID_US0; //允许US0口的时钟
*AT91C_PIOA_PDR = AT91C_PIO_PA5 | AT91C_PIO_PA6; //PA4、5设为外设
*AT91C_PIOA_ASR = AT91C_PIO_PA5 | AT91C_PIO_PA6; //PA4、5设为外设A
*AT91C_US0_CR = AT91C_US_RXEN | AT91C_US_TXEN; //许可发送和接收
*AT91C_US0_MR = AT91C_US_USMODE_NORMAL | AT91C_US_CLKS_CLOCK |
AT91C_US_CHRL_8_BITS | AT91C_US_PAR_NO |
AT91C_US_NBSTOP_1_BIT | AT91C_US_MSBF; //8位数据位,1位停止位,无校验,普通模式
*AT91C_US0_BRGR = (unsigned int) (47923200/(9600*16)) ; //9600波特率
*AT91C_US0_IER = AT91C_US_RXRDY ; //开接收中断
AT91C_AIC_SVR[AT91C_ID_US0]=(unsigned int)*US0_int; //中断入口函数
*AT91C_AIC_IECR = 1<<AT91C_ID_US0; //打开AIC中断
}
/****************************************************************************
* 文件名:main.c
* 功 能:
*
* 说 明:
****************************************************************************/
void main (void)
{
US0_init(); //串口初始化
while(1)
{
//*AT91C_PIOA_SODR=0x00000008;
//delay_1ms(500);
//*AT91C_PIOA_CODR=0x00000008;
//delay_1ms(500);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -