main.c

来自「tms320f206的c语言异步串口示例程序」· C语言 代码 · 共 59 行

C
59
字号
/*
Writing to the C2xx Asynchronous Serial Port in C V1.00
by Jeff Axelrod 3/26/97
*/

#include "register.h"

#define CLKOUT1 20e+6
#define BAUD 9600

int data;
       
/* Disable interrupts */       
void inline disable() {
	asm(" setc INTM");
}

/* Enable interrupts */
void inline enable() {
	asm(" clrc INTM");
}


main() {      
	/* Serial Echo */
	disable();      /* Disable all interrupts */
    *IFR=0xFFFF;	/* Clear interrupts */  
    WSGR=0x0000;    /* Set zero wait states */
	ASPCR=0xC180U;	/* Reset UART by writing a zero */
	ASPCR=0xE180U; 	/* 1 stop bit, tx interrupt, input i/o */
	IOSR=0x4FFFU;  	/* Disable autobaud */
	/* Set baud */
	BRD=CLKOUT1/(16.0*BAUD);
	*IMR=0x20U;		/* Enable UART interrupt */

	enable();		/* Enable all interrupts */

	while(1)
		;
}


void interrupt uart() {
	const char *var=" c203 UART is fine!";
	static int i=0;
	           
	if(i>strlen(var)) i=0;
	
	ADTR=var[i++];
	*IFR=0x0020; /* Clear interrupt in IFR */
	enable();
}   
         
/* Do nothing interrupt */         
void interrupt nothing() {
 	return;
}               

⌨️ 快捷键说明

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