Integration Guide

SMK900 Integration Guide Revision 4
Hardware
The SMK900 module provides multiple application interfaces: a primary communication serial port (CTS
enabled), a dedicated I2C port (Master mode only), and 13 generic digital I/O. The latter can be
reconfigured to ADC (2x), to DAC (2x) or to PWM hardware signalling or clock generation (2x). The
SMK900 transceiver can also use advanced peripherals such as hardware timers and event capture/compare
within custom bytecode executed by its VM engine.
Serial Port
The host processor is tied to the SMK900 module over a full-duplex UART interface serial port with
CTS pin hardware control. aud rate is configurable from 1.2 to 230.4 kbps, with non standard baud
rates also achievable (between the aforementioned boundaries). The serial port is configured for
standard 8-bit data with no parity and 1 stop bit.
Baudrate configuration is done on the uart_bsel register (register offset 0x06) This register can be split
into: BSEL = uart_bsel[0..11], and BSCALE = uart_bsel[12...15]. where BSCALE is a 4-bit signed integer,
ranging from -7 (0b1001) to +7 (0b0111). For positive values of BSCALE, the baud rate is prescaled by
2
BSCALE
. or negative values the baud rate will use fractional counting, which increases resolution.
The formulae for calculating the effective baud rate f
BAUD
:
Conditions
Baud Rate (in baud or Hz)
BSEL Value
Thus, here is a list of standard baud rates and their corresponding suggested configuration values:
Baud Rate (baud)
BSCALE
uart_bsel
2400
-1 (0b1111)
0xF33F
4800
-2 (0b1110)
0xE33D
9600
-3 (0b1101)
0xD339
19200
-4 (0b1100)
0xC331
38400
-5 (0b1011)
0xB321
57600
-6 (0b1010)
0xA417
115200
-7 (0b1001)
0x93D7
125000
0 (0b0000)
0x0007
230400
-7 (0b1001)
0x91AC
11