|
![[ Frequently Asked Questions ]](http://www.jkmicro.com/images/faq_title.gif)
GENERAL QUESTIONS
SOFTWARE QUESTIONS
HARDWARE QUESTIONS
LINKS TO OTHER INFORMATION
How do I get started with my embedded controller?
Run your favorite telecomm program on your PC. Telemate works well with our products.
Configure the telecomm
program for 9600 baud, no parity, one stop bit, no line wrap. Hardware
handshaking and software flow control should be disabled.
Connect the 9-pin "D" end of a ribbon cable to the serial port of your PC.
Connect the other end of the cable to the console port on the JK microsystems single board
controller console port. Pin 1 on the dual 10 pin header should be up.
Power up the board. A message similar to this should appear on your screen:
JK Microsystems Flashlite Bios Version 1.3
JK Microsystems Embedded DOS Version 3.3a
(C) Copyright HBS Corp and JK Microsystems, Inc.
1991-1994, All Rights Reserved
Specified filename invalid
B:\>
The message "specified filename invalid" indicates that there was no
file named STARTUP.BAT, STARTUP.COM, or STARTUP.EXE found on drive B.
At the prompt, you can now do a DIR of drive A and drive B.
Unzip the Utilities Disk file BASIC.ZIP and copy the file BJ.BAS to the
upload directory on your PC.
To upload the program into the Flashlite, run the program UP.COM from drive
B. At the prompt, enter BJ.BAS, press return and start the upload with your
telecomm program.
Type Load BJ and the Run. A blackjack program in Tiny Basic will run.
To exit blackjack, press Ctrl-C. To exit Tiny basic, type SYSTEM.
After you are finished with the demo programs on drive B, you may erase them
to provide space for your development work.
I'm having trouble communicating with my Flashlite, what should I do?
To check test everything except the Flashlite, unplug the console cable from the Flashlite
and connect pins 3 and 5. Verify that characters typed at the PC keyboard echo on the
screen. If the characters do not echo, there is a problem with your setup. If the characters
echo, you should be able to communicate with the Flashlite. If you experience trouble
downloading, verify that the Carrier Detect signal (pin 1 on the DB-9 connector) is at
least +3 volts into your PC.
How do I configure HyperTerminal to communicate with my SBC?
See our tutorial on configuring HyperTerminal.
How can you run DOS without disk drives?
We place an image of a disk drive into a flash memory chip. The image has the same logical
structure as the physical disk. The Flashlite BIOS then translates head/track/sector
addressing used for a physical disk into segment:offset addressing used by the flash
chip.
How are the flash disks laid out?
On the 8MHz Flashlite-V25, chip U2 contains the BIOS and drive A, chip U3 contains
drive B. Drive A is reserved for DOS and utilities that come with the Flashlite board.
Since altering the structure of drive A might corrupt the DOS image, drive A is read
only. Drive B is read/write and all of it is available to the developer. On the 10MHz
V25 and the 386Ex Flashlites, a single chip is partitioned to contain the BIOS, drive
A (read only) and drive B (read/write).
Will the flash memory wear out?
Not if you understand and observe it's limitations. The SST flash chips are amazingly
durable and we have never worn one out. Nonetheless, it is still important to observe
good engineering practice in the use of the flash storage. We recommend that the flash
drive be used for program storage and infrequently changed parameters. We suggest that
you contact us if your application requires frequent flash disk writes. Flashlite boards
used for development and having many write cycles should probably not be shipped to
customers.
How can you run DOS without a video adapter and IBM style keyboard?
With more trickery in the BIOS. All of the translatable BIOS calls to the video adapter
are redirected to the serial port 0 transmitter. Likewise, all of the characters that
the serial port 0 receiver gets are presented as keyboard output by the BIOS. Normally,
for program development, the JK microsystems single-board controller is connected to the
serial port of a PC and a telecomm program such as Procomm is run. With the telecomm
program in terminal mode, the PC becomes the SBC's console.
How do I get my programs into the flash drive?
Easy, from the telecomm program run the Flashlite utility UP.COM. It will prompt you
for a filename. Enter the name of your program and press Enter. Next, initiate an upload
with your telecomm program, usually by pressing Pg Up. Your telecomm program will prompt
you for a protocol and a filename. Enter X-Modem and the filename and the program will be
uploaded into drive B.
My program is pretty large, is there a faster way to transfer it to the SBC?
The console on port on all of our products will communicate at 56k baud without
problems. Below are examples of how to change the port speed on both V25 and 386Ex
based SBC's. Note that SBC will still boot at 9600 baud every time. The utility can be
placed in the STARTUP.BAT file and automatically executed. IMPORTANT: When attempting
to break the startup process on 386Ex systems, the CTRL-C characters must be sent at
9600 baud.
For the Flashlite-V25, the baud rate is determined by the following equation:
baud = fclk / (2^(n+1) * G)
where fclk = 10E6 (cpu frequency)
n is a user value in the serial control
reg (0 to 8)
port 0, SSC0 at F000:FF69
port 1, SSC1 at F000:FF79
G is the baud rate divisor in the baud rate generator reg (2 to 255)
port 0, BRG0 at F000:FF6A
port 1, BRG1 at F000:FF7A
so for 9600:
n= 0x02
G= 0x82
or for 56k:
n= 0x02
G= 0x16
The console is on port 0.
The 56K_V25.COM utility (written with debug) will change the console port to 56k.
The listing follows:
B:\>debug 56k_v25.com
-u
1438:0100 B800F0 MOVAX,F000
1438:0103 8ED8 MOVDS,AX
1438:0105 B016 MOVAL,16
1438:0107 A26AFF MOV[FF6A],AL
1438:010A B8004C MOVAX,4C00
1438:010D CD21 INT21
For the Flashlite 386Ex (or other boards based on the Intel 386Ex processor) the baudrate
equation is:
divisor = 115200/baud
The divisor is a 16 bit integer value.
for 9600 the divisor will be: 000Ch
or for 56k the divisor will be: 0002h
When changing the divisor in the 16450 UARTs, the divisor latch bit must be set,
then the divisor is written, and the divisor latch is cleared. The divisor
latch is bit 7 of the Line Control Register, located at the bas address+3
(03FBh for COM2). The low byte of the divisor is written to the base address,
the high byte is written to base+1.
The 56K_386.COM utility (written with debug) will change the console port to 56k
baud. The listing follows:
B:\>debug 56k_386.com
-u
15AE:0100 BAFB02 MOVDX,02FB
15AE:0103 EC INAL,DX
15AE:0104 0C80 ORAL,80
15AE:0106 EE OUTDX,AL
15AE:0107 BAF802 MOVDX,02F8
15AE:010A B002 MOVAL,02
15AE:010C EE OUTDX,AL
15AE:010D BAFB02 MOVDX,02FB
15AE:0110 EC INAL,DX
15AE:0111 247F ANDAL,7F
15AE:0113 EE OUTDX,AL
15AE:0114 B8004C MOVAX,4C00
15AE:0117 CD21 INT21
Another alternative when using systems with ethernet is
TFTPD.ZIP.
A server runs on the
JK microsystems board and a client is used on the development system. Free TFTP
clients for most operating systems can be found on the internet.
What kind of DOS does the Flashlite use?
The DOS was written by Thierry Giron of HBS. It is largely compatible with Microsoft
DOS 3.31 or IBM PC-DOS 3.3. We have the source code to the DOS and will provide software
support for our Flashlite customers.
Where did you get the BIOS?
We wrote it, in Masm. To our knowledge, we were the first to bring up DOS on a
V-25 chip. As a result we have a good understanding of the workings of the V-25
and how they relate to DOS.
Are the serial ports registers compatible with the PC?
For our Intel 386Ex based products, they are.
For the V25, unfortunately they are not. However, we do have a full-featured
driver for the serial ports that is callable from Microsoft high level languages.
The driver supports data rates from 110 to 115.2k baud, selectable stop bits,
data bits and parity, and has a buffered, interrupt driven receive function.
COMM.ZIP
contains the driver in Masm .ASM and linkable .OBJ files.
Can I develop my applications in Quickbasic?
Most definitely. We have done major applications in Quickbasic. They were
completed quickly and performed well. Be sure to observe the console I/O guidelines
in the products User's Manual.
Do you have information to help me program the LCD?
See our LCD tutorial.
Do you have information about programming in 'C'?
See our C programming page.
How do you start a project using the Borland Integrated Environment?
See our pdf document
Getting Started with the Borland IDE (202K)
for a step by step guide to starting projects using the Borland 4.52 IDE.
I'm having troubles configuring ports A, B and C on the Flashlite 386Ex.
Ports A, B, and C are all controlled by the 82C55 peripheral interface chip. See
the
82C55A Programmable Peripheral Interface Data Sheet
for the exact meaning of the bits in the control register. The
control register is located at port 63h. A word of caution, any time the 82C55
control register is writen to, any output bit that is in the ON state will be
turned OFF. This is a feature of the silicon aimed at protecting outputs from
driving unknown loads that could possibly damage the chip.
I'm using a Flashlite 386Ex and my application needs 2 serial ports. Can I disable
the Console?
After the application is loaded on the Flashlite 386Ex, run QUIET. QUIET will
disconnect the console from the serial port leaving it available for applications.
Once QUIET has been run, the Flashlite will not transmit (or receive) any characters.
The only exception is durring the first second of startup when the BIOS looks for a
CTRL-C on the port. If a CTRL-C is received, none of the initialization batch files
are processed (AUTOEXEC.BAT or STARTUP.BAT) and the console will be active (quiet
mode ignored). In order for the console to remain enabled, NOQUIET must be run. Both
QUIET and NOQUIET are located on drive A of the Flashlite 386Ex. QUIET can be placed
in the STARTUP.BAT file, but it need only be run once.
QUIET can be used on several of JK microsystems single board controllers.
Can you help me locate the Intel App. Builder?
Apbuilder is a useful utility for 386Ex development written by Intel.
Apbuilder generates C and assembly code snippets for configuring all of the
on-chip peripherals on the 386Ex microprocessor.
Can you recommend a TCP/IP stack that works with your products?
We recommend WatTCP. It's free, it works well, and our web server uses it. WatTCP source and libraries
are available at www.wattcp.com. We have put together a
guide
Getting Started with WatTCP (16K) for WatTCP and our embedded ethernet enabled products.
Where can I learn about the PC architecture?
There is a lot of information available on the Internet and in print. Areas of
interest generally include UARTs and Interrupts. Unfortunately much of the
printed material is no longer available. The HelpPC Reference Utility is a
handy tool. Also see our Links page for other information about interrupts
and interfacing to the PC architecture.
How hard is it to interface to the processor bus?
It's very simple. For I/O devices, just decode the lower 9 bits of the address
bus and logically AND the decode with IORD/ or IOWR/. Use the qualified IORD/ or
IOWR/ to strobe data out or latch data in, respectively.
If you are not concerned about future compatibility with our expansion products, you
can simply decode as few of the address bits as your I/O device requires.
For memory expansion, there is an unused 256k byte space between 80000h and CFFFFh.
You may use all of it if you are not concerned about compatibility with our future
peripherals. We reserve the upper 8k (CE0000h to CFFFFh) for future products.
Decode the full address that you need and qualify it with MREQ/, MSTB/, and RW/.
Details are in the V-25 User Manual.
What if I need help with my design?
Give us a call and let us connect you with the
JK Alliance.
This growing network of independent contractors provide experienced system integration
and development services available to assist in your project completion.
My application requires more features than available on one JK microsystems
board. Do I need to look elsewhere?
No, all of our embedded controllers are expandable, giving our single-board computers the
flexibility to meet your needs. Check out our
peripheral boards and accessories.
Do you supply schematics?
Schematics are included in the development kits and peripheral kits for most of our products.
Where can I get data on the V-25?
We converted the NEC V-25+
User's Manual to PDF format for your convenience.
Where can I get data on the flash memory?
The Flash chips are made by SST.
See our Documentation
page for information on other components used in our products.
My controller is unstable driving inductive loads.
See our
application note regarding design concerns when driving indcutive loads.
Copyright © 1998-2003 JKmicrosystems, Inc.
|