SC731 – RCBus Dual PWM Module

SC731 is a two channel Pulse Width Modulation signal generator.

Downloads

Errata

Nothing known

Suppliers

KitsWebsiteFromCurrency
Small Computers DirectSCDirectUKGBP
Stephen C CousinsTindieUKUSD
Small Computer CentralLectronzUKEuro/USD
PCBsWebsiteFromCurrency
Small Computers DirectSCDirectUKGBP
Stephen C CousinsTindieUKUSD
Small Computer CentralLectronzUKEuro/USD
Assembled and TestedWebsiteFromCurrency
Not available
Components
See parts list
Small Computers Direct does not collect VAT for EU countries
Tindie does not collect VAT for EU countries
Lectronz does collect EU VAT for orders up to 150 EUR

Parts List

ReferenceQtyComponent
PCB1SC731, v1.0, PCB
C1 to C1010Capacitor, ceramic, 100 nF
JP11Header, male, 2 x 8 pin, angled
JP21Header, male, 2 row x 9 pin, straight
JP31Header, male, 2 row x 6 pin, straight
JP41Header, male, 2 row x 5 pin, straight
Jumper10Jumper shunt
P11Header, male, 2 row x 40 pin, angled
P21Header, male, 1 x 6 pin, angled
RN11Resistor network, 8x100k, SIL, 9-pin
Screw (for spacer)1Machine screw, 6mm, M3
Spacer1Spacer, 10mm, M3, nylon
U1, U4, U5374HCT688
U2, U3274HCT273
U6, 7274HCT393
U8174HCT139 or 74AHCT139
U9174HCT74
X11Oscillator 1.8432 MHz
IC socket 20-pin
U1 to U5
5Socket, DIP, 20-pin
IC socket 16-pin
U8
1Socket, DIP, 16-pin
IC socket 14-pin
U6, U7, U9, X1
4Socket, DIP, 14-pin
Component details and sourcing

Printed Circuit Board

User Guide

SC731 is a two channel Pulse Width Modulation signal generator. It has tight address decoding and easy access with a single OUT instruction to set each PWM output.

The address decoding is such that one module takes only two I/O addresses (one for each PWM channel). Only writes to those addresses are decoded, so those addresses could be allocated to another device that only has a read function. Many of these modules can be installed in a single system as long as there are no address conflicts.

The output of each channel is set by writing a value from 0 to 128 decimal to the port address of the PWM channel. A value of zero turns the pulses off, leaving the output signal at a steady low level. A value of 128 turns the output constantly on with the output signal at a steady high level. A value of 1 produces the most narrow pulse and 127 the most wide pulse.

The frequency of the pulses is determined by the Clock frequency set with JP2. The frequency of the pulses is Clock/128.

Examples

If the base I/O address is set to 4, then to set the value of the PWM #1 pulse width you need to write the value to I/O address 4. PWM #2 width is set at I/O address 5.

To set the width of PWM #1 channel to 100 (decimal) in BASIC:
OUT 4, 100

To set the width of PWM #1 channel to 100 (decimal) in assembler:
LD A, $64
OUT (4), A

Input/output port functions
RCBus I/O AddressReadWrite
Configurable *1
base address
n/aWrite
PWM value
  1. The RCBus I/O address should be set to any even address. Typically, this might be 0x04 (4 decimal). Many of these modules can be included in a single system as long as there are no address conflicts.
Jumper options
JumperFunction
JP1Set SC731’s RCBus I/O base address
SC731 takes two I/O addresses:
PWM #1 is at the base address
PWM #2 is at the base address + 1
JP2Set clock divider for both PWM channels
JP 2.1 Clock is source/256
JP 2.2 Clock is source/128
JP 2.3 Clock is source/64
JP 2.4 Clock is source/32
JP 2.5 Clock is source/16
JP 2.6 Clock is source/8
JP 2.7 Clock is source/4
JP 2.8 Clock is source/2
JP 2.9 Clock is source
Only fit one jumper shunt to this set of jumper pins
The PWM frequency is Clock/128
JP3Connect PWM outputs to bus pins
JP 3.1 Connect PWM1 output to bus CLK2 (pin 61)
JP 3.2 Connect PWM1 output to bus CLK3 (pin 40)
JP 3.3 Connect PWM1 output to bus CLK4 (pin 80)
JP 3.4 Connect PWM2 output to bus CLK2 (pin 61)
JP 3.5 Connect PWM2 output to bus CLK3 (pin 40)
JP 3.6 Connect PWM2 output to bus CLK4 (pin 80)
JP4Set clock source for both PWM channels
JP 4.1 Clock is bus CLK signal (pin 21)
JP 4.2 Clock is bus CLK2 signal (pin 61)
JP 4.3 Clock is bus CLK3 signal (pin 40)
JP 4.4 Clock is bus CLK4 signal (pin 80)
JP 4.5 Clock is the on board oscillator X1
Only fit one jumper shunt to this set of jumper pins

Frequencies

The following tables give the frequencies for each jumper #2 and jumper #4 position. The tables assume the on-board oscillator is 1.8432 MHz and the bus CLK signal is 7.3728 MHz. The signal named ‘Clock’ is used to count the pulse width, up to a maximum of 128. Therefore, the PWM signal frequency is Clock/128.

JP 4 SourceFrequency
1Bus CLK (pin 21)7372800 Hz
2Bus CLK2 (pin 61)CLK2
3Bus CLK3 (pin 40)CLK3
4Bus CLK4 (pin 80)CLK4
5Fosc (X1)1843200 Hz
Fosc = 1.8432 MHz, CLK = 7.3728 MHz, CLK2/3/4 custom

With JP4 in position 5, the clock source is oscillator X1 which is assumed to be 1.8432 MHz, giving the following frequencies.

JP 2
position
Clock
divider
Clock
frequency
PWM
frequency
12567200 Hz56.25 Hz
212814400 Hz112.5 Hz
36428800 Hz225 Hz
43257600 Hz450 Hz
516115200 Hz900 Hz
68230400 Hz1800 Hz
74460800 Hz3600 Hz
82921600 Hz7200 Hz
911843200 Hz14400 Hz
Clock source = Oscillator X1 (assumed to be 1.8432 MHz)

With JP4 in position 1, the clock source is bus signal CLK which is assumed to be 7.3728 MHz, giving the following frequencies.

JP 2
position
Clock
divider
Clock
frequency
PWM
frequency
125628800 Hz225 Hz
212857600 Hz450 Hz
364115200 Hz900 Hz
432230400 Hz1800 Hz
516460800 Hz3600 Hz
68921600 Hz7200 Hz
741843200 Hz14400 Hz
823686400 Hz28800 Hz
917372800 Hz57600 Hz
Clock source = Bus signal CLK (assumed to be 7.3728 MHz)

With JP4 in position 2, 3 or 4, the clock source is bus signal CLK2, CLK3 or CLK4 respectively, giving the following frequencies.

JP 2
position
Clock
divider
Clock
frequency
PWM
frequency
1256CLK#/256CLK#/32768
2128CLK#/128CLK#/16384
364CLK#/64CLK#/8192
432CLK#/32CLK#/4096
516CLK#/16CLK#/2048
68CLK#/8CLK#/1024
74CLK#/4CLK#/512
82CLK#/2CLK#/256
91CLK# CLK#/128
Clock source = Bus signal CLK# (CLK2, CLK3 or CLK4)

Assembly Guide

Below is the suggested order of assembly. A general guide to assembling circuit boards can be found here.

  1. Decoupling capacitors C1 to C10
    These can be fitted either way around
  2. Header pins P2
  3. Sockets for U1 to U9
    Fit such that the notch in the socket matches the curve in the outline on the PCB silkscreen
  4. Socket for X1 (optional)
    Not recommended as the oscillator is quite large and could touch other modules
  5. Resistor network RN1
    This must be fitted the correct way around whereby the dot on the component matches the dot on the PCB silkscreen
  6. Bus header P1
    Make sure the pins are parallel to the PCB so that the board is vertical when it is fitted into a backplane socket
  7. Header pins JP1
  8. Header pins JP2, JP4 and JP4
    These can be fitted as three separate strips or as a single strip with some pins pulled out
  9. Insert the integrated circuits into their sockets
    Make sure the notch in the component is at the end indicated by the notch in the socket and the curve on the PCB silkscreen
  10. Fit oscillator X1
  11. Fit the nylon spacer in the mounting hole

Fit jumper shunts in the positions shown below. All other jumpers are optional and should only be fitted if the feature is required.

The suggested base I/O address is 0x04 (binary 0000 0100)
and the clock frequency is Fosc/8 (1.8432MHz/8 = 1800Hz)

Compatibility

This module conforms to the RCBus specification v1.0 for RCBus-2014 and RCBus-Z80.

The RCBus specification includes RCBus-2014 (both RC2014 standard 40-pin bus and RC2014 enhanced 60-pin bus) and also the full 80-pin RCBus. The 80-pin RCBus provides support for advanced Z80 features, such as the interrupt daisy-chain, as well as support for other processor families.

The table below indicates electrical compatibility with each backplane type (40, 60 and 80 pin)

Backplane?Compatibility notes
RCBus 80-pinFully supported
RCBus 60-pin
(RC2014 enhanced)
Limitations:
Optional signal CLK4
not usually available
RCBus 40-pin
(RC2014 standard)
Limitations:
Some optional signals
are not available (CLK2,
CLK4)

The following table indicates electrical compatibility with SC731. Check firmware and software details for any required software support.

Product (80-pin)?Compatibility notes
SC126
Z180 motherboard
Adds Z180 SBC
motherboard
SC701
Backplane 6+1
Adds 6 module sockets
RCBus 80-pin
SC702
Backplane 6+1
Adds 6 module sockets
RCBus 80-pin
SC703
Power from 12v
Adds power supply
8 to 15 volts input
SC704
I2C bus master
Adds I2C bus master
and I2C EEPROM
SC705
Serial ACIA
Adds one serial port
Typically set to 0x40
SC706
Z80 CPU
Adds Z80 CPU and
clock oscillator
SC707
Memory 128k
Adds 128kB RAM
and 128kB ROM
SC708
Z80 SBC
Adds single board
Z80 computer
SC709
Backplane 12+1
Adds 12 module sockets
RCBus 80-pin
SC710
Backplane 12+1
Adds 12 module sockets
RCBus 80-pin
SC711
Prototyping
Prototyping module
SC712
Power from 5v
Adds power supply
5 volts input
SC713
RCBus tool
n/aSimple reference tool
No electrical function
SC714
Memory 512k
Adds 512kB RAM and
512kB flash ROM
SC715
Compact flash
Adds Compact Flash
storage
SC716
Z80 SIO/2
Adds two serial ports
Typically set to 0x84
SC717
Z80 PIO
Adds parallel I/O
using Z80 PIO
SC718
Z80 CTC
Adds counter/timer
using Z80 CTC
SC719
Digital I/O
Adds digital I/O
Eight in, eight out
SC720
Z80 motherboard
Adds Z80 SBC
motherboard
SC721
Memory 512k
Adds 512kB ROM and
512kB RAM
SC722
Z180 CPU
Adds Z180 CPU
and serial ports
SC723
Backplane 3
Adds 3 module sockets
RCBus 80-pin
SC724
Breakout
Prototyping breakout
module
SC725
SIO+CTC
Adds two serial ports
and 4 counter/timers
SC726
Clock generator
Generates CLK and
CLK2 bus signals
SC727
Real time clock
Adds real time clock
for time and date
SC728
Module riser
Simple module riser
for RCBus 80-pin
SC729
Compact flash
Adds Compact Flash
storage
SC730
Z80 CPU + MMU
Adds Z80 CPU with
clock and MMU
SC731
Dual PWM generator
Multiple modules can
be used
SC732
Dual servo controller
Adds dual servo
controller
SC791
Z80 system
Adds modular
Z80 computer
SC792
Z180 system
Adds modular
Z180 computer
Product (40 pin)?Compatibility notes
SC114
Z80 motherboard
Adds Z80 SBC
motherboard
Some clock pins
not available
SC130
Z180 motherboard
Adds Z180 SBC
motherboard
Some clock pins
not available
SC133
Backplane 11+1
Adds 11 module sockets
RCBus 40-pin
Some clock pins
not available
SC134
LED output port
Adds eight LED
outputs
SC135
Digital output port
Adds eight digital
outputs
SC136
Digital input port
Adds eight digital
inputs
SC137
I2C bus master
Adds I2C bus master
SC139
Serial ACIA
Adds one serial port
Typically set to 0x40
SC141
Backplane 12+1
Adds 12 module sockets
RCBus 40-pin
Some clock pins
not available
SC142
Power from 12v
Adds power supply
8 to 15 volts input
SC143
Flash ROM
Adds 128kB ROM
in four 32kB banks
SC145
Compact flash
Adds Compact Flash
storage
SC147
Backplane 6+1
Adds 6 module sockets
RCBus 40-pin
SC148
Power from 5v
Adds power supply
5 volts input
SC149
Z80 CPU
Adds Z80 CPU and
clock oscillator
SC150
Paged RAM 128k
Adds 128kB RAM
in two 64kB banks
SC151
Paged ROM 128k
Adds 128kB ROM
in four 32kB banks
Other suppliers?Compatibility notes
RC2014
Mini system
Adds Z80 SBC
motherboard
Some clock pins
not available
RC2014
Pro system
Adds modular Z80
computer
RC2014
Zed system
Adds modular Z80
computer
RC2014
Micro module
Adds Z80 SBC
computer
RC2014
Backplane 5
Adds 5 module sockets
RCBus 40-pin
RC2014
Backplane 8
Adds 8 module sockets
RCBus 40-pin
RC2014
Backplane Pro
Adds 12 module sockets
RCBus 60-pin
RC2014
Z80 CPU
Adds Z80 CPU
module
RC2014
SIO/2 dual serial
Adds two serial ports
at address 0x80 to 0x87
RC2014
Compact flash
Adds Compact Flash
storage
RC2014
Dual clock
Generate CLK2 only
Conflict on CLK signal
RC2014
Pageable ROM
Adds pageable ROM
module
RC2014
64k RAM
Adds pageable RAM
module
RC2014
Memory 512k
Adds 512kB RAM and
512kB flash ROM
RC2014
Digital I/O
Adds eight LED outputs
and eight push buttons
RC2014
Real time clock
Adds real time clock
for time and date
RC2014
RP2040 VGA terminal
Connect VGA monitor
and USB keyboard
RC2014
Pi Pico terminal
Connect VGA monitor
and USB keyboard
RC2014
YM2149 sound card
Adds authentic retro
sound
Weird electronics
Flock v2
Adds floppy disk
and real time clock

Notes

  • This product is designed for hobby use and is not suitable for industrial, commercial, or safety-critical applications.
  • The product contains small parts and is not suitable for young children.

Homebrew 8-bit retro computing