kopia lustrzana https://github.com/Hamlib/Hamlib
65 wiersze
3.5 KiB
Plaintext
65 wiersze
3.5 KiB
Plaintext
<preface id="preface">
|
|
<title>Preface</title>
|
|
<para>The Personal Computer has arguably become as prominent of a fixture
|
|
in the modern hamshack as HF transceivers and handheld radios. The first
|
|
PCs hams used combined with an interface also known as a terminal unit,
|
|
<acronym>TU</acronym>, replaced the noisy mechanical radio teletype,
|
|
<acronym>RTTY</acronym>, machines. Gradually, other uses became apparent
|
|
for the hamshack PC such as logging contact information, operating newer
|
|
digital modes such as <acronym>AMTOR</acronym>, a forward error correcting
|
|
(<acronym>FEC</acronym>) mode of <acronym>RTTY</acronym>, and packet, an
|
|
error checked way of transfering binary data between computers.</para>
|
|
|
|
<para>In the mid to late 1980s radio manufacturers began to offer computer
|
|
control capability to their offerings. Now the shack PC had one more duty
|
|
added to its repertoire. However, the amount of control over a given
|
|
radio's capability by computer control was often much less than from the
|
|
front panel. In large part was due to many analog controls on the front
|
|
panel that weren't under control of the radio's <acronym>CPU</acronym>.
|
|
Thus most radio control has been limited to control of frequency values
|
|
of the variable frequency
|
|
oscillators, <acronym>VFO</acronym>, and recalling and setting the radio's
|
|
memory channels.</para>
|
|
|
|
<para>More recent models have more of the front panel controls under the
|
|
supervision of the radio's <acronym>CPU</acronym>, consequently
|
|
manufacturers have enabled more control of the radio's functions through
|
|
the computer interface. This has created an explosion of command functions
|
|
not just between the different manufacturers, but also among a given
|
|
manufacturer's product line. There may also exist subtle differences in
|
|
later versions of a given model.</para>
|
|
|
|
<para>For the software author wishing to incorporate even the most basic of
|
|
radio control functions, the task is daunting. Even the long lived logging
|
|
program <trademark>CT</trademark> by Ken Wolff, K1EA has reports of subtle
|
|
bugs in one radio model or another (this is not intended as a knock of Ken
|
|
or his effort, rather it is an observation of the complexity of supporting
|
|
a multitude of radios in a monolithic program by one or a few authors). Is
|
|
every programmer doomed to recreate radio control themselves with varying
|
|
degrees of success? The answer is, no! </para>
|
|
|
|
<para>Enter the Hamlib project. Hamlib aims to provide application authors
|
|
with a single application programming interface, <acronym>API</acronym>,
|
|
regardless of the actual radio in use. Thus Hamlib is not an end user
|
|
application, but is a middle software layer that acts as a translator
|
|
between the <acronym>API</acronym> and the specific radio commands.</para>
|
|
|
|
<para>This manual will attempt to explain in detail the Hamlib <acronym>API
|
|
</acronym>, how to use Hamlib for writing radio control software, how to
|
|
write a radio backend library, and an overview of Hamlib's structure and
|
|
design.</para>
|
|
|
|
<para>Finally, Hamlib is Free Software licensed under the GNU Public
|
|
License, <acronym>GPL</acronym>, version 2. This will have certain
|
|
implications if you are a software author considering using Hamlib as a
|
|
part of your project. Consult the COPYING file in the base directory of
|
|
the Hamlib source distribution for more details.</para>
|
|
</preface>
|
|
|
|
<!--
|
|
Local Variables:
|
|
mode: sgml
|
|
sgml-parent-document: ("hamlib.sgml" "book" "preface")
|
|
End:
|
|
-->
|