DS1102W and DS1102N Platforms
Hardware Devices Covered by This Platform
- DS1102 programmable serial controller.
This section covers two separate platforms:
- DS1102W — supports the GA1000 Wi-Fi add-on
- DS1002N — provides limited support for the WA2000 add-on (Wi-Fi only; BLE not supported)
Memory Space and Key Info
RAM |
22,271 bytes for application variables and data |
Flash |
983,040 bytes for application and data storage (shared flash memory) |
EEPROM |
2,040 bytes for application data |
16-bit platform |
|
Clock frequency (CLOCK) and clock control |
PLL on (default): 88.4736Mhz PLL off: 11.0592Mhz |
Available network interfaces |
Ethernet (net.), Wi-Fi (wln.), PPP (ppp.), PPPoE (pppoe.)(1) |
Unidirectional(2) |
|
UART limitations |
Max practical baudrate ~460,800bps |
16 bytes for TX, 16 bytes for RX |
|
Depends on the serial port mode |
|
Independent |
|
Supported(3) |
|
ADC |
N/A |
Pulse-width Modulation (PWM) |
N/A |
GA1000 support |
YES |
WA2000 support |
Supports Wi-Fi, BLE is not supported |
Supported(4) |
|
beep.divider calculation |
beep.divider = CLOCK / (2 * desired_frq) |
Recommended buzzer frequency divider |
2,700Hz, beep.divider = 16200 (with PLL ON) |
Type selection and line remapping supported, but the hardware dictates the use of "Solomon SSD1305" driver and a predefined control line arrangement |
|
28 bytes for MAC and device password storage |
|
128 bytes: 64 OTP bytes + 64 fixed bytes |
|
Shared |
|
Self-upgrades for Tibbo BASIC/C applications |
Supported through fd.copyfirmware, fd.copyfirmwarelzo, and fd.copyfirmwarefromfile methods |
Green status (SG) LED Red status (SR) LED Yellow Ethernet status (EY) LED An LED bar consisting of five blue LEDs |
|
Ethernet / UDP Broadcast transport Ethernet / WinPCap transport |
- The sock.allowedinterfaces property refers to the Ethernet interface as "NET," Wi-Fi as "WLN," PPP as "PPP," and PPPoE as "PPPOE." The sock.targetinterface and sock.currentinterface properties rely on the pl_sock_interfaces enum, whose members differ depending on the platform.
- Surrounding board hardware dictates which GPIO lines must be used as inputs and which as outputs.
- The hardware of this platform supports serial channels, which means that CTS/RTS and DTR/DSR pairs of the DB9 connector can also be used as RX/TX pairs of additional serial channels. Therefore, it is up to you to decide which lines are used as RTS and CTS, and which channels they will belong to. Proper mapping will be required to implement each particular arrangement.
- Although the platform itself supports remapping, actual "wires" connecting the system to the GA1000 are fixed and your mapping should reflect this:
CS |
|
CLK |
|
DI |
|
DO |
|
RST |
Supported Objects, Variable Types, and Functions
- beep — generates buzzer patterns
- button — monitors the MD line (setup button)
- fd — manages flash memory file system and direct sector access
- io — handles I/O lines, ports, and interrupts
- lcd — controls the 96x32 monochrome OLED display (therefore, requires the "D" device option)
- net — controls the Ethernet port
- pat — "plays" patterns on a pair of LEDs
- ppp — provides access to the Internet over a serial modem (GPRS, POTS, etc.)
- pppoe — provides access to the Internet over an ADSL modem
- romfile — facilitates access to resource files (fixed data)
- ser — in charge of the serial ports (on this device, serial channels of the RS232 port)
- sock — socket communications (up to 16 UDP, TCP, and HTTP sessions)
- stor — provides access to the EEPROM
- sys — in charge of general device functionality
- wln — handles the Wi-Fi interface ("W" build works with the GA1000 add-on module, "N" build works with the WA2000 add-on module)
This platform supports the standard set of variable types and functions (a.k.a. "syscalls").
Platform-Specific Constants
- Enum pl_redir — The list of constants that define buffer redirection (shorting) for this platform
- Enum pl_io_num — The list of constants that define available I/O lines
- Enum pl_io_port_num — The list of constants that define available 8-bit I/O ports
- Enum pl_int_num — The list of constants that define available interrupt lines
- Enum pl_sock_interfaces — The list of available network interfaces