ARM92410串口中断接收数据
#include"../ucos-ii/includes.h" /* uC/OS interface */#include "../ucos-ii/add/osaddition.h"
#include "../inc/drivers.h"
#include "../inc/sys/lib.h"
#include "../inc/drv/reg2410.h"
//#include "../src/gui/gui.h"
#include "../inc/sys/uart.h" //
#include "../inc/sys/uartdrive.h"//
#include "../inc/sys/ads1255.h"//
#include "../inc/sys/gpio_usr.h" //
//#include "../src/GUI/Uartke.h"
#include <string.h>//
#include <stdio.h>//
volatile INT8U uart1_data={0};
void irq_Uart1_trxd(int irq,void *data)
{
U8 err;
//INT8U buffer;
rINTMSK = rINTMSK | (1 << IRQ_UART1);//关中断
while(!(rUTRSTAT1&0x1));//是否接收到数据
uart1_data=rURXH1;
Uart_Printf(0,"uart1_data=%x\n",uart1_data);
while(!(rUTRSTAT1&0x1));//是否接收到数据
uart1_data=rURXH1;
Uart_Printf(0,"uart1_data=%x\n",uart1_data);
//OSSemPost(ad_collet_flag);
//}
rINTMSK = rINTMSK & (~(1 << IRQ_UART1));//开中断
}
/*********************************************************************************************************
** 函数名称 : main
** 函数功能 :
** 输入参数 :
** 返回参数 :
** 创 建 :
** 修 改 :
** 特殊说明 :
*********************************************************************************************************/
int main(void)
{
ARMTargetInit(); // 串口的初始化及波特率设置,115200,9600,9600
OSInit(); // 系统初始化
SetISR_Interrupt(IRQ_RXD1 ,irq_Uart1_trxd ,NULL);
OSAddTask_Init(1); // 创建系统任务
OSStart(); // 系统运行
return 0;
} 高手!!!
页:
[1]