Go to Post Ahh! I see that you discovered the "CMD_FLING_RECEIVER_RADIO_ACROSS_ROOM" command in the robot scripting language! Nicely done! - dlavery [more]
Home
Go Back   Chief Delphi > Old Forum Archives > 1999
CD-Media   CD-Spy  
portal register members calendar search Today's Posts Mark Forums Read FAQ rules

 
 
 
Thread Tools Rate Thread Display Modes
Prev Previous Post   Next Post Next
  #7   Spotlight this post!  
Unread 23-06-2002, 23:03
archiver archiver is offline
Forum Archival System
#0047 (ChiefDelphi)
 
Join Date: May 2001
Location: Pontiac, MI
Posts: 21,214
archiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond reputearchiver has a reputation beyond repute
Rest assured...

Posted by Rick Berube.

Engineer on team #121, Rhode Warriors, from Middletown H.S..

Posted on 5/25/99 10:38 PM MST


In Reply to: Wait a minute... posted by Joe Johnson on 5/25/99 5:12 AM MST:




Based on the time of your posting, I'd say this either keep you up all night or woke you from a sound sleep!

I don't recall mentioning that you'd have to give up interrupts? I wouldn't suggest a solution without interrupts (http://www.chiefdelphi.com/wwwboard/messages/2207.html After all we're after a better world through technology here, right. Last time I looked even RISC controllers had interrupts because no one's discovered anything better.

To put your mind at ease, here are some excerpts pertaining to the BasicX API from the NetMedia documents. You really should download and review them for yourself. It's quite an impressive chip. I'm not saying there won't be issues/limitations, however it should be considered before being dismissed.

Syntax

Call WaitForInterrupt(InterruptType)

Arguments

Item Type Direction Description
InterruptType Byte Input Interrupt type. See below for allowable values.

Allowable values for InterruptType:

bxComparatorToggle = 0 Comparator toggle state
bxComparatorFallingEdge = 2 Falling edge of comparator
bxComparatorRisingEdge = 3 Rising edge of comparator
bxPinLow = 16 Low level on pin 13
bxPinFallingEdge = 24 Falling edge on pin 13
bxPinRisingEdge = 28 Rising edge on pin 13

Description

WaitForInterrupt allows a task to respond immediately to a critical event from the outside world. This procedure gives you access to hardware interrupts built into the BasicX chip.

WaitForInterrupt blocks the calling task until an external event happens. When the event occurs, the task is scheduled to be run immediately. The task has priority, even if another task is running and locked (see procedure LockTask).

Warning

If no external event is generated, the calling task could wait indefinitely.

Example

' Wait for rising edge on comparator.
Call WaitForInterrupt( bxComparatorRisingEdge )


System library

The BasicX operating system provides a library of system calls in the following categories:

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
Log Natural log
Log10 Log base 10
Pow Raises an operand to a specified power
Sin Sine
Sqr Square root
Tan Tangent

String functions

Asc Returns the ASCII code of a character
Chr Converts a numeric value to a character
Len Returns the length of a string
Mid Copies a substring

Memory-related functions

BlockMove Copies a block of data from one RAM location to another
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
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 unique serial number of a BasicX chip

Queues

GetQueue Reads data from a queue
OpenQueue Defines an array as a queue
PeekQueue Looks at queue data without actually 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

Tasking

CallTask Starts a task
CPUsleep Puts the processor in various low-power modes
FirstTime Determines whether the 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

Type conversions

CByte Convert to Byte
CInt Convert to Integer
CLng Convert to Long
CSng Convert to floating point (single)
CuInt Convert to UnsignedInteger
CuLng Convert to UnsignedLong
Fix Truncates a floating point value
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

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

Pin I/O

DACpin Generates a pseudo-analog voltage at an output pin
GetPin Returns the logic level of an input pin
InputCapture Records a pulse train on the input capture pin
OutputCapture Sends a pulse train to the output capture pin
PulseIn Measures pulse width on an input pin
PulseOut Sends a pulse to an output pin
PutPin Configures a pin to several input or output states
RCtime Measures the time delay until a pin transition occurs

Communications

GetNetwork Reads data from a remote RAM location
GetNetworkP Reads data from a remote EEPROM location
OpenCom Opens an RS-232 serial port
OpenNetwork Opens the network
OpenSPI Opens SPI communications
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
SPIcmd SPI communications


__________________
This message was archived from an earlier forum system. Some information may have been left out. Start new discussion in the current forums, and refer back to these threads when necessary.
 


Thread Tools
Display Modes Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Qotw [01-05-03]: top 5 things in your mind... Ken Leung Rumor Mill 37 13-02-2003 00:45
shirts and things illumanat'i General Forum 15 15-01-2003 16:31
a few minor things... Brandon Martus Announcements 0 03-01-2003 23:39
A hint of things to come... archiver 2001 0 24-06-2002 01:12
A few things RebAl CD Forum Support 2 18-04-2002 18:34


All times are GMT -5. The time now is 17:56.

The Chief Delphi Forums are sponsored by Innovation First International, Inc.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Copyright © Chief Delphi