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

📄 serial.java

📁 Java Op Processor java vhdl processor
💻 JAVA
字号:
/***	Buffered serial line.*/public class Serial {	private static final int IO_STATUS = 1;	private static final int IO_UART = 2;	private static int[] constTab;////	buffer for serial out//	private static int[] buf;	static int rdpt, wrpt;	public static void init() {		buf = new int[32];		rdpt = wrpt = 0;		constTab = new int[6];		// <clinit> is missing!		constTab[0] = 1000000;		constTab[1] = 100000;		constTab[2] = 10000;		constTab[3] = 1000;		constTab[4] = 100;		constTab[5] = 10;	}	static void loop() {		for (int i=0; rdpt!=wrpt && i<4; ++i) {		// max. 4 tries (fill uart buffer)			if ((JopSys.rd(IO_STATUS)&1) == 0) {				break;					// tdr not empty			}			JopSys.wr(buf[rdpt], IO_UART);			rdpt = (rdpt+1)&0x1f;		}	}	static void wr(char c) {		if (((wrpt+1)&0x1f) == rdpt) {			return;		}		buf[wrpt] = c;		wrpt = (wrpt+1)&0x1f;	}	static void wr(int i) {		if (i<0) {			wr('-');			i = -i;		}		boolean print = false;		int j, k;		for (j=0; j<constTab.length; ++j) {			int val = constTab[j];			for (k=0; i>=val; ++k) i-= val;			if (k!=0 || print) {				wr((char) (k+'0'));				print = true;			}		}		wr((char) (i+'0'));	}	/** only for missed in Timer */	static void wrWait(char c) {		while ((JopSys.rd(IO_STATUS)&1)==0) ;		JopSys.wr(c, IO_UART);	}}

⌨️ 快捷键说明

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