*8252 *serial controller interface (SCC) *Amongst others from Samsung *originally probably from Harris *19891115/wjvg 0 tbr/rbr = transmitter/receiver buffer register 1 ucr/usr = uart control/status register w .......0 nr of stopbits = 1 w .......1 nr of stopbits = 1.5 for 5 bits and 2 for 6,7 or 8 bits w ....000. tx par even, rx par even w ....001. tx par odd, rx par odd w ....010. tx par even, rx par odd w ....011. tx par odd, rx par even w ....100. tx par even, rx no par w ....101. tx par odd, rx no par w ....11.. tx no par, rx no par w ..00.... nr of bits = 5 w ..01.... nr of bits = 6 w ..10.... nr of bits = 7 w ..11.... nr of bits = 8 w 00...... must be 0 for future product compatibility r .......1 parity error r ......1. framing error r .....1.. overrun error r ....1... received break r ...1.... modem status r ..1..... transmission complete r .1...... transmitter buffer register empty r 1....... data ready 2 mcr = modem control register rw .......1 request to send rw ......1. data terminal ready rw .....1.. interrupt enable rw ...00... normal operation rw ...01... transmit break rw ...10... echo mode rw ...11... loop test mode rw ..1..... receiver enable rw .1...... modem interrupt enable rw 0....... must be 0 for normal operation 3 brsr/msr = bit rate select register/modem status register w ......00 prescale = /1 w ......01 prescale = /3 w ......10 prescale = /4 w ......11 prescale = /5 w .11111.. divisor = /1 = 38k4 with 1.8432 MHz and prescale /3 w .00000.. divisor = /2 = 19k2 or 2.4576 MHz and prescale /4 w .00001.. divisor = /4 = 9600 w .00010.. divisor = /16*3 = 7200 w .00011.. divisor = /8 = 4800 w .00100.. divisor = /32*3 = 3600 w .00101.. divisor = /16 = 2400 w .00110.. divisor = /58*3 = 1986.2 = 2000-0.69% w .00111.. divisor = /22 = 1800 w .01000.. divisor = /32 = 1200 w .01001.. divisor = /64 = 600 w .01010.. divisor = /128 = 300 w .01011.. divisor = /192 = 200 w .01100.. divisor = /256 = 150 w .01101.. divisor = /288 = 133.33 = 134.5-0.87% w .01110.. divisor = /352 = 109.71 = 110 -0.26% w .01111.. divisor = /512 = 75 w .10000.. divisor = /768 = 50 w 1....... brg/ix output r .......1 clear to send r ......1. data set ready r ....00.. always 0 r nnnn.... undefined *end