kopia lustrzana https://github.com/Hamlib/Hamlib
more tests/examples
git-svn-id: https://hamlib.svn.sourceforge.net/svnroot/hamlib/trunk@2353 7ae35d74-ebe9-4afe-98af-79ac388436b8Hamlib-1.2.8
rodzic
fa8ca11137
commit
dad9fe5f7c
|
@ -2,78 +2,84 @@
|
|||
|
||||
use Hamlib;
|
||||
|
||||
print "Perl test, version: $Hamlib::hamlib_version\n";
|
||||
print "FM: $Hamlib::RIG_MODE_FM\n";
|
||||
print "Perl $] test, version: $Hamlib::hamlib_version\n";
|
||||
|
||||
Hamlib::rig_set_debug($Hamlib::RIG_DEBUG_TRACE);
|
||||
#Hamlib::rig_set_debug($Hamlib::RIG_DEBUG_TRACE);
|
||||
Hamlib::rig_set_debug($Hamlib::RIG_DEBUG_NONE);
|
||||
|
||||
$rig = new Hamlib::Rig($Hamlib::RIG_MODEL_DUMMY);
|
||||
|
||||
# replace "/dev/Rig" with your path to serial port
|
||||
$rig->set_conf("retry","50");
|
||||
$rig->set_conf("rig_pathname","/dev/Rig");
|
||||
$rig->set_conf("serial_speed","9600");
|
||||
|
||||
$rig->open();
|
||||
|
||||
# 1073741944 is token value for "itu_region"
|
||||
$rpath = $rig->get_conf("rig_pathname");
|
||||
$rate = $rig->get_conf("serial_speed");
|
||||
# but using get_conf is much more convenient
|
||||
$region = $rig->get_conf(1073741944);
|
||||
print "get_conf: path=\"$rpath\", baud rate=$rate, ITU region=$region\n";
|
||||
$rpath = $rig->get_conf("rig_pathname");
|
||||
$retry = $rig->get_conf("retry");
|
||||
print "get_conf: path=\"$rpath\", retry=$retry, ITU region=$region\n";
|
||||
|
||||
|
||||
$rig->set_freq(12000000, $Hamlib::RIG_VFO_A);
|
||||
$rig->set_freq(14266000, $Hamlib::RIG_VFO_A);
|
||||
|
||||
$f = $rig->get_freq();
|
||||
print "freq: $f\n";
|
||||
|
||||
($mode, $width) = $rig->get_mode();
|
||||
print "get_mode: $mode, width: $width\n";
|
||||
print "get_mode: ".Hamlib::rig_strrmode($mode).", width: $width\n";
|
||||
|
||||
$vfo = $rig->get_vfo();
|
||||
print "get_vfo: $vfo\n";
|
||||
#$rig->set_vfo($Hamlib::RIG_VFO_A);
|
||||
$rig->set_vfo("VFOA");
|
||||
print "get_vfo: ".Hamlib::rig_strvfo($vfo)."\n";
|
||||
$rig->set_vfo($Hamlib::RIG_VFO_B);
|
||||
#$rig->set_vfo("VFOA");
|
||||
|
||||
$rig->set_mode($Hamlib::RIG_MODE_CW, $Hamlib::RIG_PASSBAND_NORMAL);
|
||||
|
||||
print "ITU region: $rig->{state}->{itu_region}\n";
|
||||
print "Copyright: $rig->{caps}->{copyright}\n";
|
||||
print "Backend copyright: $rig->{caps}->{copyright}\n";
|
||||
$inf = $rig->get_info();
|
||||
|
||||
print "get_info: $inf\n";
|
||||
|
||||
$rig->set_level("VOX", 1);
|
||||
$lvl = $rig->get_level_i("VOX");
|
||||
print "level: $lvl\n";
|
||||
print "VOX level: $lvl\n";
|
||||
$rig->set_level($Hamlib::RIG_LEVEL_VOX, 5);
|
||||
$lvl = $rig->get_level_i($Hamlib::RIG_LEVEL_VOX);
|
||||
print "level: $lvl\n";
|
||||
print "VOX level: $lvl\n";
|
||||
|
||||
$lvl = $rig->get_level_i($Hamlib::RIG_LEVEL_STRENGTH);
|
||||
print "strength: $lvl\n";
|
||||
|
||||
|
||||
|
||||
$chan = new Hamlib::Chan($Hamlib::RIG_VFO_A);
|
||||
$chan = new Hamlib::channel($Hamlib::RIG_VFO_A);
|
||||
|
||||
$rig->get_channel($chan);
|
||||
print "get_channel status: $rig->{error_status}\n";
|
||||
print "get_channel status: $rig->{error_status} = ".Hamlib::rigerror($rig->{error_status})."\n";
|
||||
|
||||
print "VFO: $chan->{vfo}, $chan->{freq}\n";
|
||||
print "VFO: ".Hamlib::rig_strvfo($chan->{vfo}).", $chan->{freq}\n";
|
||||
|
||||
$rig->close();
|
||||
|
||||
# TODO:
|
||||
($long1, $lat1) = Hamlib::locator2longlat("IN98EC");
|
||||
($long2, $lat2) = Hamlib::locator2longlat("DM33DX");
|
||||
$loc1 = Hamlib::longlat2locator($long1, $lat1);
|
||||
$loc2 = Hamlib::longlat2locator($long2, $lat2);
|
||||
|
||||
print "\nSome static functions:\n";
|
||||
|
||||
($err, $long1, $lat1, $sw1) = Hamlib::locator2longlat("IN98EC");
|
||||
($err, $long2, $lat2, $sw1) = Hamlib::locator2longlat("DM33DX");
|
||||
$loc1 = Hamlib::longlat2locator($long1, $lat1, 3);
|
||||
$loc2 = Hamlib::longlat2locator($long2, $lat2, 3);
|
||||
print "Loc1: $loc1\n";
|
||||
print "Loc2: $loc2\n";
|
||||
|
||||
($dist, $az) = Hamlib::qrb($long1, $lat1, $long2, $lat2);
|
||||
($err, $dist, $az) = Hamlib::qrb($long1, $lat1, $long2, $lat2);
|
||||
$longpath = Hamlib::distance_long_path($dist);
|
||||
print "Distance: $dist km, azimuth $az, long path: $longpath\n";
|
||||
($deg, $min, $sec) = Hamlib::dec2dms($az);
|
||||
$az2 = Hamlib::dms2dec($deg, $min, $sec);
|
||||
print "Bearing: $az, $deg° $min' $sec\", recoded: $az2\n"
|
||||
($err, $deg, $min, $sec, $sw) = Hamlib::dec2dms($az);
|
||||
$deg = -$deg if ($sw == 1);
|
||||
$az2 = Hamlib::dms2dec($deg, $min, $sec, $sw);
|
||||
print "Bearing: $az, $deg° $min' $sec\", recoded: $az2\n"
|
||||
|
||||
|
||||
|
|
|
@ -1,75 +1,90 @@
|
|||
#!/usr/bin/env python
|
||||
# -*- coding: iso-8859-1 -*-
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import sys
|
||||
|
||||
sys.path.append ('.')
|
||||
sys.path.append ('.libs')
|
||||
sys.path.append ('/usr/local/hamlib/python')
|
||||
sys.path.append ('/usr/lib/python2.4/site-packages')
|
||||
|
||||
import Hamlib
|
||||
|
||||
def StartUp ():
|
||||
print "Python test, version: ", Hamlib.cvar.hamlib_version
|
||||
print "Python",sys.version[:5],"test,", Hamlib.cvar.hamlib_version
|
||||
|
||||
Hamlib.rig_set_debug (Hamlib.RIG_DEBUG_TRACE)
|
||||
#Hamlib.rig_set_debug (Hamlib.RIG_DEBUG_TRACE)
|
||||
Hamlib.rig_set_debug (Hamlib.RIG_DEBUG_NONE)
|
||||
|
||||
# Init RIG_MODEL_DUMMY
|
||||
my_rig = Hamlib.Rig (Hamlib.RIG_MODEL_DUMMY)
|
||||
my_rig.set_conf ("rig_pathname","/dev/Rig")
|
||||
my_rig.set_conf ("retry","5")
|
||||
|
||||
my_rig.open ()
|
||||
|
||||
# 1073741944 is token value for "itu_region"
|
||||
rpath = my_rig.get_conf("rig_pathname")
|
||||
# but using get_conf is much more convenient
|
||||
region = my_rig.get_conf(1073741944)
|
||||
print "get_conf: path=",rpath,", ITU region=",region
|
||||
rpath = my_rig.get_conf("rig_pathname")
|
||||
retry = my_rig.get_conf("retry")
|
||||
print "status(str):",Hamlib.rigerror(my_rig.error_status)
|
||||
print "get_conf: path=",rpath,", retry =",retry,", ITU region=",region
|
||||
|
||||
#my_rig.set_freq (5000000000,Hamlib.RIG_VFO_B)
|
||||
print "freq: ",my_rig.get_freq()
|
||||
my_rig.set_freq (5700000000,Hamlib.RIG_VFO_B)
|
||||
print "freq:",my_rig.get_freq()
|
||||
my_rig.set_freq (145550000)
|
||||
my_rig.set_vfo (Hamlib.RIG_VFO_B)
|
||||
#my_rig.set_vfo ("VFOA")
|
||||
|
||||
mode = my_rig.get_mode()
|
||||
print "mode: ",mode[0],"bandwidth: ",mode[1],"Hz (0=normal)"
|
||||
(mode, width) = my_rig.get_mode()
|
||||
print "mode:",Hamlib.rig_strrmode(mode),", bandwidth:",width
|
||||
|
||||
print "ITU_region: ",my_rig.state.itu_region
|
||||
print "Copyright: ",my_rig.caps.copyright
|
||||
print "Backend copyright: ",my_rig.caps.copyright
|
||||
|
||||
print "getinfo: ",my_rig.get_info()
|
||||
print "Model:",my_rig.caps.model_name
|
||||
print "Manufacturer:",my_rig.caps.mfg_name
|
||||
print "Backend version:",my_rig.caps.version
|
||||
print "Backend license:",my_rig.caps.copyright
|
||||
print "Rig info:", my_rig.get_info()
|
||||
|
||||
my_rig.set_level ("VOX", 1)
|
||||
print "level: ",my_rig.get_level_i("VOX")
|
||||
print "VOX level: ",my_rig.get_level_i("VOX")
|
||||
my_rig.set_level (Hamlib.RIG_LEVEL_VOX, 5)
|
||||
print "level: ", my_rig.get_level_i(Hamlib.RIG_LEVEL_VOX)
|
||||
print "VOX level: ", my_rig.get_level_i(Hamlib.RIG_LEVEL_VOX)
|
||||
|
||||
print "str: ", my_rig.get_level_i(Hamlib.RIG_LEVEL_STRENGTH)
|
||||
print "strength: ", my_rig.get_level_i(Hamlib.RIG_LEVEL_STRENGTH)
|
||||
print "status: ",my_rig.error_status
|
||||
print "status(str):",Hamlib.rigerror(my_rig.error_status)
|
||||
|
||||
#chan = Hamlib.Chan(Hamlib.RIG_VFO_A)
|
||||
chan = Hamlib.Chan()
|
||||
chan = Hamlib.channel(Hamlib.RIG_VFO_B)
|
||||
|
||||
my_rig.get_channel(chan)
|
||||
print "get_channel status: ",my_rig.error_status
|
||||
|
||||
print "VFO: ",chan.vfo,", ",chan.freq
|
||||
print "VFO: ",Hamlib.rig_strvfo(chan.vfo),", ",chan.freq
|
||||
my_rig.close ()
|
||||
|
||||
print "\nSome static functions:"
|
||||
|
||||
# TODO:
|
||||
err, long1, lat1 = Hamlib.locator2longlat("IN98EC")
|
||||
err, long2, lat2 = Hamlib.locator2longlat("DM33DX")
|
||||
loc1 = Hamlib.longlat2locator(long1, lat1)
|
||||
loc2 = Hamlib.longlat2locator(long2, lat2)
|
||||
err, loc1 = Hamlib.longlat2locator(long1, lat1, 3)
|
||||
err, loc2 = Hamlib.longlat2locator(long2, lat2, 3)
|
||||
print "Loc1: IN98EC -> ",loc1
|
||||
print "Loc2: DM33DX -> ",loc2
|
||||
|
||||
dist, az = Hamlib.qrb(long1, lat1, long2, lat2)
|
||||
# TODO: qrb should normalize?
|
||||
err, dist, az = Hamlib.qrb(long1, lat1, long2, lat2)
|
||||
if az > 180:
|
||||
az -= 360
|
||||
longpath = Hamlib.distance_long_path(dist)
|
||||
print "Distance: ",dist," km, long path: ",longpath
|
||||
deg, min, sec = Hamlib.dec2dms(az)
|
||||
az2 = Hamlib.dms2dec(deg, min, sec)
|
||||
print "Bearing: ",az,", ",deg,"° ",min,"' ",sec,", recoded: ",az2
|
||||
err, deg, min, sec, sw = Hamlib.dec2dms(az)
|
||||
az2 = Hamlib.dms2dec(deg, min, sec, sw)
|
||||
if sw:
|
||||
deg = -deg
|
||||
print "Bearing: ",az,", ",deg,"° ",min,"' ",sec,", recoded: ",az2
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
|
@ -5,9 +5,11 @@ exec tclsh "$0" "$@"
|
|||
load ".libs/hamlibtcl.so" Hamlib
|
||||
#package require Hamlib
|
||||
|
||||
puts "Tcl test, $hamlib_version\n"
|
||||
set tclver [info tclversion]
|
||||
puts "Tcl $tclver test, $hamlib_version\n"
|
||||
|
||||
rig_set_debug $RIG_DEBUG_TRACE
|
||||
#rig_set_debug $RIG_DEBUG_TRACE
|
||||
rig_set_debug $RIG_DEBUG_NONE
|
||||
|
||||
# Init RIG_MODEL_DUMMY
|
||||
Rig my_rig $RIG_MODEL_DUMMY
|
||||
|
@ -17,8 +19,10 @@ my_rig set_freq 145550000
|
|||
|
||||
puts status:[my_rig cget -error_status]
|
||||
|
||||
set mode [my_rig get_mode]
|
||||
puts "mode:[lindex $mode 0], bandwidth:[lindex $mode 1]Hz (0=normal)"
|
||||
# get_mode returns a tuple
|
||||
set moderes [my_rig get_mode]
|
||||
set mode [rig_strrmode [lindex $moderes 0]]
|
||||
puts "mode: $mode, bandwidth:[lindex $moderes 1]Hz"
|
||||
|
||||
set state [my_rig cget -state]
|
||||
puts ITU_region:[$state cget -itu_region]
|
||||
|
@ -30,14 +34,14 @@ puts getinfo:[my_rig get_info]
|
|||
|
||||
my_rig set_level "VOX" 1
|
||||
puts status:[my_rig cget -error_status]
|
||||
puts level:[my_rig get_level_i "VOX"]
|
||||
puts "VOX level:[my_rig get_level_i "VOX"]"
|
||||
puts status:[my_rig cget -error_status]
|
||||
my_rig set_level $RIG_LEVEL_VOX 5
|
||||
puts status:[my_rig cget -error_status]
|
||||
puts level:[my_rig get_level_i $RIG_LEVEL_VOX]
|
||||
puts "VOX level:[my_rig get_level_i $RIG_LEVEL_VOX]"
|
||||
puts status:[my_rig cget -error_status]
|
||||
|
||||
puts str:[my_rig get_level_i $RIG_LEVEL_STRENGTH]
|
||||
puts strength:[my_rig get_level_i $RIG_LEVEL_STRENGTH]
|
||||
puts status:[my_rig cget -error_status]
|
||||
puts status(str):[rigerror [my_rig cget -error_status]]
|
||||
|
||||
|
|
Ładowanie…
Reference in New Issue