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:

 

CAMBASIC

RPBASIC

RPC-30

RPC-52

RPC-150

RPC-320

RPC-2300

RPC-330

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.

 

AIN

Reads analog input voltage

ON COUNT

Monitors digital I/o lines Interrupts upon preset number count

AOT

Outputs analog voltage

ONITR

Calls subroutine on external interrupt

BAUD

Sets baud rates, RS-232/485 mode

ONTICK

Generates timed interrupts

CLEAR

Added tick timer, display clearing

ONTIME

Real time clock interrupts(RPC-52 only)

COM$

Returns line of data from either serial port

PEEK

Reads string or byte from memory

COM

Returns number of characters in a serial port

POKE

Writes string or byte to memory

COUNT

Reads or writes to quadrature encoder/counter

PWM

PWM operates while program continues

DATE

Reads or sets date to calendar/clock

SAVE

Saves programs or data to flash EPROM

DISPLAY

Writes to character display

STR

Enhanced string handling commands

KEYPAD

Reads keypad value

TICK

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

LINE

Reads or writes a digital I/O line

TIME

Reads or sets time to calendar/clock

LOAD

Loads program or data from EPROM to RAM

WDOG

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 Language

 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.

 

AIN

Reads analog input

ON BIT

Calls subroutine when digital line changes

AOT

Outputs a voltage

ON COM$

Calls subroutine when serial buffer has a message

BIT

Reads or writes a single digital input

ON COUNT

Calls subroutine when a counter reaches a value

COM$

Returns a string of characters

ON KEYPAD

Calls subroutine when keypad is pressed

COUNT

Reads count from counters

ON INP

Calls subroutine when digital input pattern matches

DINP

Reads 16 I/O lines

ON TICK

Calls subroutine on a periodic basis

DISPLAY

Writes to character  display

SAVE

Saves a program to flash EPROM

KEYPAD$

Reads keypad value

TICK

Reads 5 mS timer

LINE

Reads or writes digital line

TIMER

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]