01-08-2020
Device address probably should be one, not zero.
The concept of device address stems from RS485 serial communications that allow for daisy chained devices.
Are there possibly dip switches or a ROM config process to set the device address?
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
Hi, Guys ...
I want to know how to use to 2 processes (A & B) communicating with each others through 2 pipes (Pipe1 & Pinpe2) :
such that process A write to Pipe1 and Process B read from Pipe1
and process B write to Pipe2 and Process A read from Pipe2 .
Does anyone have an idea about... (1 Reply)
Discussion started by: someone33
1 Replies
2. Shell Programming and Scripting
I'd like to make a script that I can execute every time I sign on to my linux box that keeps track of the time and allows to me to add a remark to a file. So basically once I log in, I run the script, and it outputs the date and time to a text file (log.txt). But that isn't my problem.
I need... (1 Reply)
Discussion started by: Glider
1 Replies
3. UNIX for Advanced & Expert Users
I am using system running on red hat linux 4.
I had connected health measuring machine to the serial port and configured it
stty -F /dev/ttyS0 9600 -parenb cs8 -cstopb
this machine requires a command to be passed to it for giving output. I am unable to pass command hexa format(0x68) to the... (4 Replies)
Discussion started by: netsavant
4 Replies
4. UNIX for Dummies Questions & Answers
Hello,
I would like to know if it is possible to communicate between two terminals on seperate computers for free - e.g. not using proprietary software or using the built in UNIX terminals on operating systems of the UNIX flavor.
Thanks,
photray94 (2 Replies)
Discussion started by: photray94
2 Replies
5. AIX
i want to know that my serial port ( pci slot with 2 port ) is working fine and communicating
is there any way to know the serialport is working and communicating?
please help (3 Replies)
Discussion started by: pchangba
3 Replies
6. Ubuntu
Hello!
I am working on an application which reads environmental instruments which have serial ports. The application requires a serial port to be present to talk to the device (i.e. /dev/ttyS0 ). In some instances the environmental devices will be 100's of yards away from the computer, so a... (5 Replies)
Discussion started by: mvona
5 Replies
7. Programming
$./a.out smtp.gmail.com 25
220 mx.google.com ESMTP 9sm2923369yxf.23
250 mx.google.com at your service
220 2.0.0 Ready to start TLS
after handshake
Common Name: smtp.gmail.com
after get cert dn
-----BEGIN SSL SESSION PARAMETERS-----... (0 Replies)
Discussion started by: darshan.ghumare
0 Replies
8. IP Networking
This is my situation
DOS pc serial cable (sl0) Linux Pc eth1
192.168.0.10 <-------------------->192.168.0.2 <------------>192.168.0.1 (router)
I connected the linux pc and the dos pc with a SLIP (serial line internet protocol), so they can communicate in the sl0 interface.
... (3 Replies)
Discussion started by: mghis
3 Replies
9. Programming
I have a simple client/server program I am using for learning purposes.
I have it setup so that after server is setup and listening it than goes into a loop where it accepts incoming client connections. After each connection, the client socket is than passed to a thread routine where it can be... (3 Replies)
Discussion started by: Majortom71
3 Replies
10. Shell Programming and Scripting
Hi there,
I have a Debian server (192.168.1.1) connected through ethernet to a RS232 device servers (192.168.1.5) that is then connected through RS232 to a Video Projector.
The idea is that I want to send commands to the video projector (eg. turn on/off) via the device server.
According to... (4 Replies)
Discussion started by: chebarbudo
4 Replies
LEARN ABOUT SUNOS
ddi_peeks
ddi_peek(9F) Kernel Functions for Drivers ddi_peek(9F)
NAME
ddi_peek, ddi_peek8, ddi_peek16, ddi_peek32, ddi_peek64, ddi_peekc, ddi_peeks, ddi_peekl, ddi_peekd - read a value from a location
SYNOPSIS
#include <sys/ddi.h>
#include <sys/sunddi.h>
int ddi_peek8(dev_info_t *dip, int8_t *addr, int8_t *valuep);
int ddi_peek16(dev_info_t *dip, int16_t *addr, int16_t *valuep);
int ddi_peek32(dev_info_t *dip, int32_t *addr, int32_t *valuep);
int ddi_peek64(dev_info_t *dip, int64_t *addr, int64_t *valuep);
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI). The ddi_peekc(), ddi_peeks(), ddi_peekl(), and ddi_peekd() functions are obsolete. Use, respectively,
ddi_peek8(), ddi_peek16(), ddi_peek32(), and ddi_peek64(), instead.
PARAMETERS
dip A pointer to the device's dev_info structure.
addr Virtual address of the location to be examined.
valuep Pointer to a location to hold the result. If a null pointer is specified, then the value read from the location will simply be
discarded.
DESCRIPTION
These routines cautiously attempt to read a value from a specified virtual address, and return the value to the caller, using the parent
nexus driver to assist in the process where necessary.
If the address is not valid, or the value cannot be read without an error occurring, an error code is returned.
The routines are most useful when first trying to establish the presence of a device on the system in a driver's probe(9E) or attach(9E)
routines.
RETURN VALUES
DDI_SUCCESS The value at the given virtual address was successfully read, and if valuep is non-null, *valuep will have been updated.
DDI_FAILURE An error occurred while trying to read the location. *valuep is unchanged.
CONTEXT
These functions can be called from user or interrupt context.
EXAMPLES
Example 1: Checking to see that the status register of a device is mapped into the kernel address space:
if (ddi_peek8(dip, csr, (int8_t *)0) != DDI_SUCCESS) {
cmn_err(CE_WARN, "Status register not mapped");
return (DDI_FAILURE);
}
Example 2: Reading and logging the device type of a particular device:
int
xx_attach(dev_info_t *dip, ddi_attach_cmd_t cmd)
{
...
/* map device registers */
...
if (ddi_peek32(dip, id_addr, &id_value) != DDI_SUCCESS) {
cmn_err(CE_WARN, "%s%d: cannot read device identifier",
ddi_get_name(dip), ddi_get_instance(dip));
goto failure;
} else
cmn_err(CE_CONT, "!%s%d: device type 0x%x
",
ddi_get_name(dip), ddi_get_instance(dip), id_value);
...
...
ddi_report_dev(dip);
return (DDI_SUCCESS);
failure:
/* free any resources allocated */
...
return (DDI_FAILURE);
}
SEE ALSO
attach(9E), probe(9E), ddi_poke(9F)
Writing Device Drivers
NOTES
The functions described in this manual page previously used symbolic names which specified their data access size; the function names have
been changed so they now specify a fixed-width data size. See the following table for the new name equivalents:
+-----------------------------------------------------------+
|Previous Name New Name |
| ddi_peekc ddi_peek8 |
| ddi_peeks ddi_peek16 |
| ddi_peekl ddi_peek32 |
| ddi_peekd ddi_peek64 |
+-----------------------------------------------------------+
SunOS 5.10 27 Sep 2002 ddi_peek(9F)