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)
BSEL
BSCALE
uart_bsel
2400
831 (0x33F)
-1 (0b1111)
0xF33F
4800
829 (0x33D)
-2 (0b1110)
0xE33D
9600
825 (0x339)
-3 (0b1101)
0xD339
19200
817 (0x331)
-4 (0b1100)
0xC331
38400
801 (0x321)
-5 (0b1011)
0xB321
57600
1047 (0x417)
-6 (0b1010)
0xA417
115200
983 (0x3D7)
-7 (0b1001)
0x93D7
125000
7 (0x007)
0 (0b0000)
0x0007
230400
428 (0x1AC)
-7 (0b1001)
0x91AC
11