< / BX24

informations provided by netmedia, BX24 maker. BX24 user manual PDF

The BX-24 is a single chip Basic-programmable Microcontroller that has all the features you've been looking for!
Onboard features include:
8 independent 10-bit Analog to Digital Converters (ADCs),
(Note: ADC pins also function as standard TTL I/Os)
16 total I/O lines (8 TTL plus 8 ADCs and/or TTL)
Pin-for-pin compatible with the BS2 and BS2SX
1200 to 19200 Baud buffered serial in or out any I/O pin
1 buffered high speed serial port (2400 Baud to 460.8 KBaud)
SPI interface
400 bytes of RAM
32 KB EEPROM for user program storage
Parallel or serial downloadable
On-chip voltage regulator
2 user controllable on-chip surface mount LEDs, red/green
System clock/calendar
Multitasking
Full IEEE floating point math
Plus much, much more!
Price: $49.95 (quantity 1)
Now with just one chip you can build a multitude of complex devices like temperature data loggers, analog joystick interfaces, real time weather stations, data terminals, virtual reality gear or smart car systems. With the power of a BX-24 at your disposal the sky's the limit!


BasicX-24 Specifications

I/O Lines 21 total. 8 digital and 8 10 Bit ADCs/digital I/Os
(16 standard i/o + 2 serial only + 3 i/o lines ouside chip footprint)
EEPROM for program and data storage
On board 32 KB SPI EEPROM
Largest executable user program size = 32K
RAM 400 bytes
Analog To Digital Converter Port A consists of 8 10Bit ADCs that can also be used as regular TTL level I/Os or a mixture of both
ADC Sample Rate 6000 samples per second maximum
On Chip LEDs The BX-24 contains one 2 color surface mount LED (Red/Green) that is fully user user programmable. (Not counted as an I/O line)
Program Execution Speed 65,000 lines of code per second
Based on our speedtest.bas file
Serial I/O Speed
2400 to 460.8 Kbaud on Com1
300 to 19,200 baud on any I/O pin using Com3
Operating Voltage Min/Max 5.0 VDC to 12.0 VDC
Current Requirements 20 mA plus I/O loads, if any
I/O Output Source Current 3 mA @ 5 V (I/O pin driven high)
I/O Output Sink Current 20 mA @ 5 V (I/O pin pulled low)
Combined Maximum Current Load Allowed Across All I/Os 40 mA sink or source
I/O Internal Pull-up Resisters 120 k-Ohm maximum
Floating Point Math Yes
On Chip Multitasking Yes
On Chip Time Clock Yes
Built In SPI Interface Yes
PC Programming Interface Parallel or Serial Down-loadable
Package Type 24 Pin PDIP carrier board
Environmental Specifications
Absolute Maximum Ratings
Operating temperature: 0 C to +70 C
Storage temperature: -65 C to +150 C

BasicX-24 Schematic
BasicX-24 Pin Definitions
BasicX-24 Dimensions


BasicX Language Quick Reference
The following is a categorized list of the BasicX-24 command set. This list is meant for use as a quick visual representation of our instruction set and does not contain many "Standard" Basic language commands that are still valid BasicX instructions.RAM Variable Types
Type Size Range
Boolean 8 Bits True or False
Byte 8 Bits 0 - 255
Integer 16 Bits -32,768 to 32,768
UnsignedInteger 16 Bits 0 - 65535
Long 32 Bits -2,147,483,648 to 1,147,483,647
UnsignedLong 32 Bits 0 to 4,294,967,295
Single 32 Bits -3,402,823E+38 to 3.402,823E+38
String Varies 0 to 64 characters
BoundedString Varies 0 to 64 characters

EEPROM Persistent Types
Type Size Range
PersistentBoolean 8 Bits True or False
PersistentByte 8 Bits 0 - 255
PersistentInteger 16 Bits -32,768 to 32,768
PersistentLong 32 Bits 2,147,483,648 to 1,147,483,647
PersistentSingle 32 Bits -3,402,823E+38 to 3.402,823E+38

Arithmetic Operators
Addition +
Subtraction -
Multiplication *
Divide (Integer) \
Divide (Float) /
Modulus Mod

Relational Operators
Equality =
Inequality <>
Less than <
Greater than >
Less or equal <=
Greater or equal >=

Logical Operators
And Perform a logical And
Or Perform a logical Or
Not Perform a logical Not
Xor Perform a logical XorControl Structures
If Then/ElseIf/Else Conditional Branch
Do Loop Infinite Loop
Do While Loop Loop until condition met (Test at end of loop)
Do Until Loop Loop if condition met (Test at end of loop)
For Next Loop a specific number of times
Exit For Exit a For-Next loop
Exit Do Exit a Do-Loop
Select Case Select between a list of alternatives
Goto Branch unconditionally to a specified labelPin I/O
ADCToCom1 Streams data from ADC to serial port
Com1ToDAC Streams data from serial port to DAC
CountTransitions Counts the logic transitions on an input pin
DACPin Generates a pseudo-analog voltage at an output pin
FreqOut Generates dual sinewaves on output pin
GetADC Returns analog voltage
GetPin Returns the logical state of an input pin
InputCapture Records a pulse train on the input capture pin
OutputCapture Sends a pulse train to the output capture pin
PlaySound Plays sound from sampled data stored in EEPROM
PulseIn Measures pulse width on an input pin
PulseOut Sends a pulse to an output pin
PutDAC Generates a pseudo-analog voltage at an output pin
PutPin Configures a pin to 1 of 4 input or output states
RCTime Measures the time delay until a pin transition occurs
ShiftIn Shifts bits from an I/O pin into a byte variable
ShiftOut Shifts bits out of a byte variable to an I/O pin

Math Functions
Abs Absolute value
ACos Arc cosine
ASin Arc sine
Atn Arc tangent
Cos Cosine
Exp Raises e to a specified power
Exp10 Raises 10 to a specified power
Fix Truncates a floating point value
Log Natural log
Log10 Log base 10
Pow Raises an operand to a given power
Randomize Sets the seed for the random number generator
Rnd Generates a random number
Sin Sine
Sqr Square Root
Tan Tangent

Type conversions
CBool Convert Byte to Boolean
CByte Convert to Byte
CInt Convert to Integer
CLng Convert to Long
CSng Convert to floating point (single)
CStr Convert to string
CuInt Convert to UnsignedInteger
CuLng Convert to UnsignedLong
FixB Truncates a floating point value, converts to Byte
FixI Truncates a floating point value, converts to Integer
FixL Truncates a floating point value, converts to Long
FixUI Truncates a floating point value, converts to UnsignedInteger
FixUL Truncates a floating point value, converts to UnsignedLong
ValueS Convert a string to a float (single) type

Queues
GetQueue Reads data from a queue
OpenQueue Defines an array as a queue
PeekQueue Looks at queue data without removing any data
PutQueue Writes data to a queue
PutQueueStr Writes a string to a queue
StatusQueue Determines if a queue has data available for reading

String functions
Asc Returns the ASCII code of a character
Chr Converts a numeric value to a character
LCase Converts string to lower case
Len Returns the length of a string
Mid Copies a substring
Trim Trims leading and trailing blanks from string
UCase Converts string to upper case

Memory-related functions
BlockMove Copies a block of data from one RAM location to another
FlipBits Generates mirror image of bit pattern
GetBit Reads a single bit from a variable
GetEEPROM Reads data from EEPROM
GetXIO Reads data from extended I/O
GetXRAM Reads data from XRAM
MemAddress Returns the address of a variable or array
MemAddressU Returns the address of a variable or array
PersistentPeek Reads a byte from EEPROM
PersistentPoke Writes a byte to EEPROM
PutBit Writes a single bit to a variable
PutEEPROM Writes data to EEPROM
PutXIO Writes data to extended I/O
PutXRAM Writes data to XRAM
RAMPeek Reads a byte from RAM
RAMPoke Writes a byte to RAM
SerialNumber Returns the version number of a BasicX chip

Communications
Debug.Print Sends string to Com1 serial port
DefineCom3 Defines parameters for serial I/O on arbitrary pin
Get1Wire Receives data bit using Dallas 1-Wire protocol
OpenCom Opens an RS-232 serial port
OpenSPI Opens SPI communications
Put1Wire Transmits data bit using Dallas 1-Wire protocol
SPICmd SPI communications
X10Cmd Transmits X-10 data

Tasking
CallTask Starts a task
CPUSleep Puts the processor in various low-power modes
Delay Pauses task and allows other tasks to run
DelayUntilClockTick Pauses task until the next tick of the real time clock
FirstTime Determines whether program has ever been run since download
LockTask Locks the task and discourages other tasks from running
OpenWatchdog Starts the watchdog timer
ResetProcessor Resets and reboots the processor
Semaphore Coordinates the sharing of data between tasks
Sleep Pauses task and allows other tasks to run
TaskIsLocked Determine whether a task is locked
UnlockTask Unlocks a task
WaitForInterrupt Allows a task to respond to a hardware interrupt
Watchdog Resets the watchdog timer

Real time clock
GetDate Returns the date
GetDayOfWeek Returns the day of week
GetTime Returns the time of day
GetTimestamp Returns the date and time of day
PutDate Sets the date
PutTime Sets the time of day
PutTimestamp Sets the date, day of week and time of day
Timer Returns floating point seconds since midnight

Network (BX-01 Only)
GetNetwork Reads data from a remote RAM location
GetNetworkP Reads data from a remote EEPROM location
OpenNetwork Opens the network
PutNetwork Sends data to a remote RAM location
PutNetworkP Sends data to a remote EEPROM location
PutNetworkPacket Sends a special packet over the network
PutNetworkQueue Sends data to a remote queue


BX24 schema


<