Home Products Customers Downloads Accessories Price/Order

    Manufacturers of Industrial Embedded Single-Board Computers for worldwide applications
   Specializing in Custom Design  -  Offering a large selection of  Single-Board Computers
      We offer two basic programming languages: RPBASIC-52 and CAMBASIC. RPBASIC-52 is based on Intel 8051 type processors. CAMBASIC is based on 64180/Z180 processors. The following table shows which language is included on each single-board computer:










RPBASIC-52 is a much improved version of the Intel© BASIC-52. New features include buffered serial ports, much improved string handling (RPC-320, 330), and single command support for hardware features such as analog input, displays, keypad, calendar/clock, etc.

 CAMBASIC has been used in industrial control applications for over ten years. Its syntax is similar to that of Microsoft© GW BASIC. It features string handling, floating point math, and commands used for industrial control. It can be up to four times faster than RPBASIC-52.

Quick Setup

No matter which Basic you choose, set up is the same.  There are no programs to install.  Simply run a terminal program (such as Windows Terminal, Hyperterm(r), Procomm(r), ect).  Windows Terminal and Hyper Terminal are included with Windows.

Select the baud rate and port and you PC is set up.  Connect a cable from the RPC single-board computer to the PC.  Apply power to the single-board computer.  You will get a sign on message like the one shown below.


You can begin to program immediately.  Run the sample programs supplied with each card.  Begin writing to a display, opto module, motor, or do calculations as desired right away.  In less than 5 minutes you can begin programming.

RPBASIC-52 Language

 were added to increase its power and ease of use, as shown in the following table.



Reads analog input voltage


Monitors digital I/o lines Interrupts upon preset number count


Outputs analog voltage


Calls subroutine on external interrupt


Sets baud rates, RS-232/485 mode


Generates timed interrupts


Added tick timer, display clearing


Real time clock interrupts(RPC-52 only)


Returns line of data from either serial port


Reads string or byte from memory


Returns number of characters in a serial port


Writes string or byte to memory


Reads or writes to quadrature encoder/counter


PWM operates while program continues


Reads or sets date to calendar/clock


Saves programs or data to flash EPROM


Writes to character display


Enhanced string handling commands


Reads keypad value


Returns one of 4 tick times with 5 mS resolution  Replaces TIME


Reads or writes a digital I/O line


Reads or sets time to calendar/clock


Loads program or data from EPROM to RAM


Set and resets watchdog timer

RPBASIC-52 runs at least twice as fast as other BASIC-52's running at 11 MHz. The RPC-320 runs four to five times faster. Its buffered serial ports mean no missed characters.

While printing, your program continues executing. Built in drivers read and write to the display, clock, opto modules, keypad, and RAM. This means your program runs at greatly increased speed.

Additional performance features include an "ONTICK" statement. "ONTICK" is similar to "ONTIME". It calls routines with 5 mS resolution instead of 1 second using "ONTIME".

String handling is greatly enhanced on the RPC-320 using "STR". This command compares two strings, returns the length of a string, formats numbers for printing, and many other functions. Networking using RS-485 or radio modem is now very easy.

Several "CONFIG" commands configure serial port baud rates, digital I/O, and other parameters.

Binary data is saved and loaded into RAM via Flash EPROM. This enhancement allows you to save tables, formulas, or process data as needed.

The RPC-320 and RPC-330 can save up to 500K bytes of programs. Programs are loaded and run while it is executing. Up to eight programs can be stored. Access to 512K of RAM is through "PEEK" and "POKE" type commands.


 CAMBASIC is a multitasking, high performance industrial control language. CAM is an acronym for "Control And Measurement". Syntax is standard BASIC similar to that used by Microsoft. CAMBASIC is optimized for real time applications requiring acquisition, control, and communication functions. It acts like a miniature operating system, keeping track of system time (tick), communications, and program saving and loading.

Use your PC to edit programs. Communications take place through the serial port. CAMBASIC is in ROM, providing an "instant on" environment. No separate edit-compile-download steps. A program is compiled and optimized by CAMBASIC on the card as it is downloaded.

Industrial Strength
 In addition to the standard input and output statements, CAMBASIC has control statements such as "PULSE", "LINE" and "ON TICK". Retrieve analog and keypad input using "AIN" and "KEYPAD" commands. No need to write time consuming drivers in BASIC or assembly language. The keypad and digital I/O lines are scanned at assembly language speed, effectively increasing program execution.

CAMBASIC on the RPC-30 is the fastest ROM based BASIC available in an embedded controller. Its commands are optimized to execute 3600 commands per second. When multitasking is fully employed, throughput is equivalent to 5,000 commands per second. Two other cards using CAMBASIC, RPC-150 and RPC-2300, run 2500 commands per second. Maximum program size is limited to 30K. Language syntax is similar to Microsoft GW-BASIC, as shown in the following table.



Reads analog input


Calls subroutine when digital line changes


Outputs a voltage


Calls subroutine when serial buffer has a message


Reads or writes a single digital input


Calls subroutine when a counter reaches a value


Returns a string of characters


Calls subroutine when keypad is pressed


Reads count from counters


Calls subroutine when digital input pattern matches


Reads 16 I/O lines


Calls subroutine on a periodic basis


Writes to character  display


Saves a program to flash EPROM


Reads keypad value


Reads 5 mS timer


Reads or writes digital line


Generates timed outputs

Major Language Features

bullet Single commands control hardware functions
bullet Multidimensional string and numeric arrays
bullet Floating point math and functions
bullet Interrupt driven serial ports
bullet Multitasking-keypad, I/O port scanning
bullet Error trapping
bullet Subroutines called by name or line number

Supports Hardware
 CAMBASIC supports on-card hardware through commands like "AIN", "AOT", "DISPLAY", and "KEYPAD". There's no need to write drivers. "AIN" reads a voltage at a line. "AOT" outputs a voltage. "DISPLAY" writes to an LCD display, including positioning and formatting strings. The keypad is scanned and debounced automatically. The "KEYPAD" function returns the result of a key press.

The "LINE" command either reads the status of a line or sets it to 1 or 0. "ON BIT" is used to generate an interrupt when the status of a line changes.

Event Multitasking
 Event multitasking responds to real time events quickly. Under time slice multitasking, an event waits its turn or time for service. Using event multitasking, an event is serviced within 5 mS or faster. This is because CAMBASIC does not 'wait' until an event's turn is up.

Event multitasking in CAMBASIC monitors a number of tasks while your program is running. These tasks are monitored at assembly language speed. For example, you can perform the following tasks while your program is running:
bullet Monitor I/O line status
bullet Receive serial data without stopping the program
bullet Print data without stopping the program
bullet Scan and debounce keypad
bullet Call a subroutine periodically-every 10 mS to 300 seconds

When one of these events occurs, CAMBASIC immediately branches to the routine to service the interrupt. Depending upon the type and timing of interrupt, latency is from less than 1 mS to 10 mS.


    Remote Processing Corporation
7975-B East Harvard Avenue, Denver, CO 80231 
Phone 303-750-8587
Fax 303-690-1875
    [Home] [Single-board Computers] [Customers] [Downloads] [Accessories] [Price/Ordering] [Your Privacy]