Difference between revisions of "BitWacker Command GUI"

From OpenCircuits
Jump to navigation Jump to search
 
(11 intermediate revisions by the same user not shown)
Line 2: Line 2:
  
 
*Name: BitWacker Command Graphical User Interface
 
*Name: BitWacker Command Graphical User Interface
*Status: still developing, but is working.  Implementation is incomplete
+
*Status: still developing, but is working.  More features comming.
 
*Technology: Java -- should run on many platforms, Windows 98 through Vista, Mac, Linux  
 
*Technology: Java -- should run on many platforms, Windows 98 through Vista, Mac, Linux  
 
*Author: russ_hensel ( where you can find an email address to reach me )
 
*Author: russ_hensel ( where you can find an email address to reach me )
Line 11: Line 11:
 
The project is a specialized communications program designed to issue commands to a [[USB Bit Whacker]].  Input format is specialized to make input easy.  I/O direction is specified in binary to make it clear what the function of each pin is.
 
The project is a specialized communications program designed to issue commands to a [[USB Bit Whacker]].  Input format is specialized to make input easy.  I/O direction is specified in binary to make it clear what the function of each pin is.
  
 +
A complete log of activity is provided both to the screen and to a log file.
  
A complete log of activity is provided both to the screen and to a log file.
+
This is one of a series of articles on Microcontroller Serial Communications, rooted at this site here: [[Microcontroller Serial Communications Articles]]
  
 
=== Early Mock Up of Screen ===
 
=== Early Mock Up of Screen ===
Line 30: Line 31:
 
* (d) decimal, a normal decimal number.
 
* (d) decimal, a normal decimal number.
  
Menu Choices
+
=== Some Features ===
 +
 
 +
*Has most of the general features of [[RS232/USB Probe]] but specialized to the BitWacker, there are special fields for input and output which are treated as the most appropriate data type: for example the io configuration of a port is entered in binary for easier understanding of the input.  The buttons remember the command string and formats up the command string ( after validating the inputs ).
  
* File -> Exit
+
*Does not support the bulk commands, support is for the commands with a single response.
  
=== Download ===
+
*Checks for and reports BitWacker errors.
  
Not posted yet, for now email [[russ_hensel]]
+
 
 +
=== Menu Choices ===
 +
 
 +
* File -> Exit     
 +
** Closes the comm port and exits the application.
 +
 
 +
* File -> About the Application 
 +
** About Box for the Application
 +
 
 +
=== Download and Install ===
 +
 
 +
See the page [[BitWacker PIC and Other Microcontroller to Java Communications]]
  
 
=== Command Details ===
 
=== Command Details ===
Line 47: Line 61:
  
 
*Version  
 
*Version  
**No input, output is the version response from the BitWacker.
+
**Input: none
 +
**Output: ( Field Version ) is the version response from the BitWacker.
  
 
*Configure  
 
*Configure  
**3 Inputs ( binary ) for the direction of PortA, PortB, PortC, and one input for Analog.
+
**Input: 4 Fields, 3 Fields( binary ) for the direction of PortA, PortB, PortC ( 1 is input, 0 is output.), and one input for then number of Analog channels ( 0 to 12 ).   
1 is input, 0 is output.   
 
 
** Output: none.
 
** Output: none.
  
Line 57: Line 71:
 
**3 inputs, one field for each port.  Binary input 1 for output high, 0 for output low.
 
**3 inputs, one field for each port.  Binary input 1 for output high, 0 for output low.
  
Input All ()
+
*Input All ()
No input. Output one field for each port, binary.  
+
**Input: Output one field for each port, binary.
 +
 
 +
*Output Pin
 +
**Inputs:  Port Field ( use either decimal numbers 0, 1, 2, or A, B, or C).  Pin Field, use decimal number 0 to 7.  State  0 or 1 ( could be in any base, how can you tell? ).
 +
**Output: None
 +
 
 +
*Input Pin
 +
**Input:2 Inputs.  Port use either decimal numbers 0, 1, 2, or A, B, or C.  Pin, use decimal number 0 to 7. 
 +
**Output: State of pin; 0 or 1.
 +
 
 +
*RC Servo
 +
**Input: As with Output Pin except that value is between 1 and 11890 and will cause a high pulse whose duration is proportionally between 1ms and 2ms. These pulses repeat every 19ms.  This controlls the servo's rotation
 +
**Output: None
 +
 
 +
*Memory Write
 +
**Input: Address to be written to.  Value to be stored in the address.
 +
**Output: None
 +
 
 +
*Memory Read
 +
**Input:  Address to be read.
 +
**Output: Value stored in the address.
  
Output Pin
 
3 Inputs.  Port use either decimal numbers 0, 1, 2, or A, B, or C.  Pin, use decimal number 0 to 7.  State  0 or 1 ( could be in any base, how can you tell? ).
 
  
Input Pin
+
=== Bugs and Enhancements ===
2 Inputs.  Port use either decimal numbers 0, 1, 2, or A, B, or C.  Pin, use decimal number 0 to 7. 
 
Output, state of pin 0 or 1.
 
  
RC Servo
+
See the list at [[RS232Probe Enhancements and Bugs]] a list for all the related applications.
As with Output Pin except that state is 0 to xxxxx ( decimal ) 0 for RC off, 1 for no rotation, xxxxx for full rotation.
 

Latest revision as of 16:48, 18 June 2008

Summary[edit]

  • Name: BitWacker Command Graphical User Interface
  • Status: still developing, but is working. More features comming.
  • Technology: Java -- should run on many platforms, Windows 98 through Vista, Mac, Linux
  • Author: russ_hensel ( where you can find an email address to reach me )
  • License: not fully determined, but open source and object code.

Purpose:

The project is a specialized communications program designed to issue commands to a USB Bit Whacker. Input format is specialized to make input easy. I/O direction is specified in binary to make it clear what the function of each pin is.

A complete log of activity is provided both to the screen and to a log file.

This is one of a series of articles on Microcontroller Serial Communications, rooted at this site here: Microcontroller Serial Communications Articles

Early Mock Up of Screen[edit]

Screen Shot

Notes:


  • Inputs are on the left hand side of the screen, fields have a white background.
  • Buttons are in the middle.
  • Outputs are on the right, fields have a gray background.


Field lablels may include a note as to the data type to be entered:

  • (b) binary, eight characters 0's and 1's as 00101111.
  • (d) decimal, a normal decimal number.

Some Features[edit]

  • Has most of the general features of RS232/USB Probe but specialized to the BitWacker, there are special fields for input and output which are treated as the most appropriate data type: for example the io configuration of a port is entered in binary for easier understanding of the input. The buttons remember the command string and formats up the command string ( after validating the inputs ).
  • Does not support the bulk commands, support is for the commands with a single response.
  • Checks for and reports BitWacker errors.


Menu Choices[edit]

  • File -> Exit
    • Closes the comm port and exits the application.
  • File -> About the Application
    • About Box for the Application

Download and Install[edit]

See the page BitWacker PIC and Other Microcontroller to Java Communications

Command Details[edit]

These commands are fairly direct implementations of the basic command set of the BitWacker. The interface does change format of the input. For example in configuring the IO ports binary seems easier than decimal.


  • Reset ( Reset )
    • No input, no output, should just work.
  • Version
    • Input: none
    • Output: ( Field Version ) is the version response from the BitWacker.
  • Configure
    • Input: 4 Fields, 3 Fields( binary ) for the direction of PortA, PortB, PortC ( 1 is input, 0 is output.), and one input for then number of Analog channels ( 0 to 12 ).
    • Output: none.
  • Output All ( )
    • 3 inputs, one field for each port. Binary input 1 for output high, 0 for output low.
  • Input All ()
    • Input: Output one field for each port, binary.
  • Output Pin
    • Inputs: Port Field ( use either decimal numbers 0, 1, 2, or A, B, or C). Pin Field, use decimal number 0 to 7. State 0 or 1 ( could be in any base, how can you tell? ).
    • Output: None
  • Input Pin
    • Input:2 Inputs. Port use either decimal numbers 0, 1, 2, or A, B, or C. Pin, use decimal number 0 to 7.
    • Output: State of pin; 0 or 1.
  • RC Servo
    • Input: As with Output Pin except that value is between 1 and 11890 and will cause a high pulse whose duration is proportionally between 1ms and 2ms. These pulses repeat every 19ms. This controlls the servo's rotation
    • Output: None
  • Memory Write
    • Input: Address to be written to. Value to be stored in the address.
    • Output: None
  • Memory Read
    • Input: Address to be read.
    • Output: Value stored in the address.


Bugs and Enhancements[edit]

See the list at RS232Probe Enhancements and Bugs a list for all the related applications.