mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-12-26 14:18:20 +00:00
100 lines
3.0 KiB
Plaintext
100 lines
3.0 KiB
Plaintext
#
|
|
# $Id$
|
|
#
|
|
|
|
These tests are brought to you by the letter `q'.
|
|
|
|
When you start the test, you should see:
|
|
|
|
You have the following choices:
|
|
1 - Reset the struct termios
|
|
2 - Look at the current termios setting
|
|
3 - Change the line characteristics
|
|
4 - Test canonical input
|
|
5 - Test raw input
|
|
9 - Exit
|
|
Enter your choice (1 to 5 or 9, followed by a carriage return):
|
|
|
|
The individual tests are briefly described below:
|
|
|
|
|
|
1. Reset the struct termios.
|
|
|
|
Included just in case you get into trouble. More than likely, if you are in
|
|
trouble, neither input nor output are likely to work and this won't help. But
|
|
hey, it should give you some warm fuzzy feeling that its there...
|
|
|
|
|
|
2. Look at the current termios setting
|
|
|
|
Dumps the current state of the termios settings in hex and with symbolic flag
|
|
names.
|
|
|
|
|
|
3. Change the line characteristics
|
|
|
|
Allows you to change the line speed, parity, number of data bits and number of
|
|
stop bits. You must supply a delay before the change takes effect. This gives
|
|
you time to switch your terminal settings to continue with the test.
|
|
|
|
WARNING: Minicom under Linux gets extremely unhappy (as does the /dev/ttyS?
|
|
underlying devices) if you change the line characteristics and do not make the
|
|
corresponding change in the terminal emulator.
|
|
|
|
|
|
4. Test canonical input
|
|
|
|
Simple test of canonical or cooked input mode. Try typing some tabs and/or control characters and make sure that you can backspace over them properly.
|
|
|
|
|
|
5. Test raw input
|
|
|
|
The line is placed into raw mode and four separate test are done:
|
|
|
|
VMIN=0, VTIME=0
|
|
Each letter you type should produce a line of output.
|
|
The `count' should be quite large, since (as you correctly
|
|
pointed out) the read is non-blocking. The time should be
|
|
the interval between typing characters.
|
|
Type a `q' to finish the test.
|
|
VMIN=0, VTIME=20
|
|
Again, each letter should produce a line of output. The
|
|
`count' should be much smaller -- the read is non-blocking
|
|
but has a timeout of 2 seconds, so the count should be about
|
|
half the `interval'.
|
|
Type a `q' to finish the test.
|
|
VMIN=5, VTIME=0
|
|
A line should be produced for every 5 characters typed. The
|
|
count should be 1. This is a blocking read.
|
|
Type a `q' as the first character of a group of 5 to finish
|
|
the test.
|
|
VMIN=5, VTIME=20
|
|
Type a character. Two seconds later a line should be printed.
|
|
Count should be 1. Type a character, and another within 2 seconds.
|
|
Two seconds after last character (or right after the 5th character)
|
|
a line should be printed.
|
|
Type a `q' as the first character of a group to finish the test.
|
|
|
|
|
|
9. Exit
|
|
|
|
Gets you out of the test.
|
|
|
|
|
|
Clear???
|
|
|
|
|
|
---
|
|
Eric Norum
|
|
eric@skatter.usask.ca
|
|
Saskatchewan Accelerator Laboratory
|
|
University of Saskatchewan
|
|
Saskatoon, Canada.
|
|
|
|
Charles-Antoine Gauthier
|
|
Software Engineering Group
|
|
Institute for Information Technology
|
|
National Research Council of Canada
|
|
charles.gauthier@nrc.ca
|
|
|