;串列傳輸練習; 接收端(以Timer2控制鮑率) ;此程式因使用到8052才有之暫存器, 所以須先載入8052暫存器定義檔 ;組譯時務必把Keil uVision2中的設定Define 8051 SFR Names勾勾取消 $INCLUDE (REG52.inc) ;for 8052 SFR definition mov scon,#01010000b ;設定串列傳輸工作於模式1, 可接收資料 mov T2CON,#00110000b ;設定timer 2 工作於 自動重新載入模式, ;串列傳輸傳送和接收的鮑率都由Timer2所控制 mov RCAP2H,#(65536-39)/256 ;設定自動載入值為65536-39 mov RCAP2L,#(65536-39) mod 256 ;(在石英震盪器為12MHz時, 鮑率為9600bps) setb tr2 ;啟動TIMER2 receive: jnb ri,$ ;判斷是否接收完畢(RI=1), 否則停在此行 clr ri ;清除接收完畢旗號 mov a,sbuf ;將SBUF接收到的資料存到累加器 mov p2,a ;顯示於P2 jmp receive end