;	台科大
;	作者：吳一農
;	書名：8051單晶片實務與運用
;	書號：B060
;	檔案：P07-3R
	ORG	00H	
        JMP	START			
START:
	MOV	SP,#6FH			
					
	MOV	TMOD,#00100000B		;設定 Timer1 工作在 Mode 2 自動載入
					;模式，當作 UART 的鮑率控制
	MOV	PCON,#01111111B		;設定 SMOD=0，詳細說明請參考鮑率
					;計算說明部份
	MOV	TH1,#FDH		;傳送速率 (鮑率)=9600 Bit/Sec
					;11.059MHz)
	SETB	TR1			;啟動 Timer1
	MOV	SCON,#01010000B		;設定 UART 工作做 Mode 1 的接收模
					;式 (REN = 1，啟用接收)
	CLR	RI			;清除接收完畢旗標
Receive_Wait:
	JBC	RI,Receive_Ok		;檢查 UART 是否將 8 Bit 的資料讀入
					;(接收)完畢，若還沒讀入完成則繼續
					;(RI=0)，讀入的資料被存在 SBUF
					;中等到讀入完成(RI=1)，則將跳至
					;Receive_Ok 且清除 RI=0
	JMP	Receive_Wait		;跳至 Receive_Wait 繼續檢察 RI 位元
Receive_Ok:
	MOV	A,SBUF			;將接收進來的資料(SBUF 暫存器的內
 	CPL	A			;容)經由 A 暫存器反向後，由 P0 上的
	MOV	P0,A			;LED顯示出來
	JMP	Receive_Wait		;接收完畢跳至 Receive_Wait 繼續下一筆
					;資料接收
	END