#!/usr/bin/perl
##############
# 本地传输电路的提取
#
#
#
##############
use Cwd;
use Data::Dumper;
use Spreadsheet::ParseExcel::FmtUnicode;
use Spreadsheet::ParseExcel;
my ($file_name,$sheet_name,$sheet_num,$row,$col,$cell);
############本站
my ($local_col,$local_row);
my ($local_site,$local_site_col,$local_site_row);
my ($local_SDH,$local_SDH_col,$local_SDH_row);
############对
my ($remote_col,$remote_row);
my ($remote_site,$remote_site_col,$remote_site_row);
my ($remote_SDH,$remote_SDH_col,$remote_SDH_row);
############插1,局向,新电路编号,使用日期,备注
my ($insert,$insert_col,$insert_row);
my ($forward,$forward_col,$forward_row);
my ($cir,$cir_col,$cir_row);
my ($date,$date_col,$date_row);
my ($remark,$remark_col,$remark_row);
my ($iC,$iR);
my $work_cell;
open (LOG,">log.log");
print "file name:\n";
$file_name=<STDIN>;
chomp $file_name;
my $oExcel = new Spreadsheet::ParseExcel; #创建excel对象
my $oFmtC = Spreadsheet::ParseExcel::FmtUnicode->new(Unicode_Map=>"CP936"); #设置字符集为CP936
my $oBook = $oExcel->Parse($file_name,$oFmtC); #打开文件
my $work_sheet;
for($sheet_num=2;$sheet_num < $oBook->{SheetCount};$sheet_num++){
$work_sheet=$oBook->{Worksheet}[$sheet_num];
# print LOG "$sheet_num";
# print LOG "$work_sheet->{Name}\n";
NEXT:
# for($iR = $work_sheet->{MinRow}; defined $work_sheet->{MaxRow} && $iR <= $work_sheet->{MaxRow}; $iR++)
for($iR = 2; defined $work_sheet->{MaxRow} && $iR <= $work_sheet->{MaxRow}; $iR++)
{
for( $iC = $work_sheet->{MinCol}; defined $work_sheet->{MaxCol} && $iC <= $work_sheet->{MaxCol}; $iC++ )
{
$work_cell=$work_sheet->{Cells}[$iR][$iC];
my $value = $work_cell->Value if($work_cell);
my $flag=vali($value);
next NEXT if($flag=~/next/);
}
w_local_site();
w_local_SDH();
w_remote_site();
w_remote_SDH();
w_insert();
w_forward();
w_cir();
w_date();
w_remark();
write_line();
}
}
sub vali(){
my $value=shift;
if($value=~/本端/){
$local_site_col=$iC;
$local_SDH_col=$iC+1;
}
if($value=~/对端/){
$remote_site_col=$iC;
$remote_SDH_col=$iC+1;
}
if($value=~/插1/){
$insert_col=$iC;
}
if($value=~/局向/){
$forward_col=$iC;
}
if($value=~/新电路编号/){
$cir_col=$iC;
}
if($value=~/使用日期/){
$date_col=$iC;
}
if($value=~/备注/){
$remark_col=$iC;
$iR++;
return "next";
}
}
sub w_local_site(){
$work_cell=$work_sheet->{Cells}[$iR][$local_site_col];
$local_site=$work_cell->Value if($work_cell);
}
sub w_local_SDH(){
$work_cell=$work_sheet->{Cells}[$iR][$local_SDH_col];
$local_SDH=$work_cell->Value if($work_cell);
}
sub w_remote_site(){
$work_cell=$work_sheet->{Cells}[$iR][$remote_site_col];
$remote_site=$work_cell->Value if($work_cell);
}
sub w_remote_SDH(){
$work_cell=$work_sheet->{Cells}[$iR][$remote_SDH_col];
$remote_SDH=$work_cell->Value if($work_cell);
}
sub w_insert(){
$work_cell=$work_sheet->{Cells}[$iR][$insert_col];
$insert=$work_cell->Value if($work_cell);
}
sub w_forward(){
$work_cell=$work_sheet->{Cells}[$iR][$forward_col];
$forward=$work_cell->Value if($work_cell);
}
sub w_cir(){
$work_cell=$work_sheet->{Cells}[$iR][$cir_col];
$cir=$work_cell->Value if($work_cell);
}
sub w_date(){
$work_cell=$work_sheet->{Cells}[$iR][$date_col];
$date=$work_cell->Value if($work_cell);
}
sub w_remark(){
$work_cell=$work_sheet->{Cells}[$iR][$remark_col];
$remark=$work_cell->Value if($work_cell);
}
sub write_line(){
print LOG "$local_site|$local_SDH|$remote_site|$remote_SDH|$insert|$forward|$cir|$date|$remark\n"
}
分享到:
相关推荐
锁相环是一种反馈控制电路,它通过比较输入信号与本地振荡器产生的信号之间的相位差来调整本地振荡器的频率,使其与输入信号同步。DLL则通过数字方式比较延迟线前后两个时钟信号的相位,调整延迟量来实现同步。 ...
本次课程设计的主题是“位同步时钟提取电路设计与实现”,这是数字系统中至关重要的部分,因为它确保数据在传输过程中的准确性和同步性。 **设计原理** 位同步时钟提取电路的基本原理是利用数据信号中的定时信息来...
本设计通过FPGA实现了位同步提取电路,利用Quartus II工具进行全程设计,展示了FPGA在通信系统中进行时钟提取和同步处理的高效能。通过仿真和硬件验证,证明了该设计的可行性与稳定性,为实际通信系统提供了可靠的位...
6. **调制与解调**:调制是将信息(语音、数据等)加载到射频载波上的过程,解调则是从射频信号中提取信息的过程。常见的调制方式有幅度调制(AM)、频率调制(FM)和相位调制(PM)。 7. **匹配网络**:为了确保...
射频电路与天线是通信工程和电子科学领域中的核心组成部分,主要研究的是高频电磁波的产生、传输、处理和接收。华南理工大学的这门课程深入浅出地讲解了相关概念和技术,对于学习者掌握无线通信的基础至关重要。下面...
5. **鉴频器**:MC1496集成电路作为一个鉴频器,它从混频后的中频信号中提取音频信息。鉴频器的工作是将频率变化转换为相应的电压变化,从而恢复原始音频信号。 6. **音频放大器**:最后,音频放大器将微弱的音频...
发射机将基带信号转换为射频信号,接收机则负责从射频信号中提取基带信号。其中,混频器用于将射频信号与本地振荡器产生的信号混合,以改变信号频率;放大器用来增益信号,确保信号能够有效地传输;滤波器则用于去除...
同时,接收器中的射频电路负责将信号从传输媒介中提取并降频回基频。 #### 三、设计射频电路的目标 对于发射器和接收器而言,设计射频电路时有各自不同的目标: - **发射器的设计目标**: - **效率**:在消耗...
2. 频谱效率:衡量在给定带宽内传输信息的能力,高效率意味着在相同带宽内可以传输更多数据。 3. 调制深度(Modulation Depth):调频信号最大频偏与未调制载波频率之比,反映了调制的强度。 4. 线性度:指系统在...
数字锁相环位同步提取电路的基本原理是通过比较输入信号与参考信号之间的相位差,调整本地时钟的相位,以实现对输入数据流的精确定时。这种电路的框图通常包括以下几个主要部分: 1. **双相高频时钟源**:由FPGA...
超外差接收机是一种广泛应用于无线电接收的技术,其工作原理是将接收到的信号与本地振荡器产生的信号混合,产生一个较低的中频信号,然后通过滤波和解调来提取信息。这种方式能提高选择性和灵敏度,降低干扰。 2.2 ...
2. **混频器**:混频器将接收到的射频信号与本地振荡器产生的信号混合,生成新的频率,这个新频率称为中频(IF),便于后续电路处理。 3. **中频放大器**:中频放大器对混频后得到的中频信号进行放大,以提高信噪比...
它主要包含过零提取电路、数字鉴相器、脉冲成形单元、脉冲添加/扣除门和分频器等几个部分组成。通过数字电路的方式实现对信号相位的检测和调整,能够实现精确的位同步。 四、数字鉴相器的设计与作用 数字鉴相器是全...
Costas环是一种在数字通信系统中用于实现相干解调的重要电路结构,特别是在模拟和数字调制信号的检测中。这个标题“提取相干载波Costas环”表明我们将深入探讨如何利用Costas环来提取和解调包含有信息的相干载波信号...
在RFID接收电路中,载波消除电路是关键环节,它的作用在于去除接收到的信号中的载波分量,以便提取出调制在载波上的信息数据。载波消除电路通常采用下变频(Downconversion)或直接检波(Direct Detection)方法。下...
7. **时钟恢复与数据恢复电路**:这部分电路负责从串行数据流中提取时钟信息,生成本地高速时钟,并确保数据的正确接收。 8. **模拟接口电路**:满足USB2.0高速信号的电气特性要求,如差分信号、接地电阻、电缆断连...
LNA主要用于接收端,减少信号在传输过程中的衰减,而PA则在发射端增加信号功率,确保其能有效覆盖目标区域。 调制是射频通信的核心步骤,因为它使得信息可以被加载到载波上。常见的调制方式有幅度调制(AM)、频率...
位同步信号提取的目标是确保接收端的数据采样与发送端保持一致,以消除由于传输过程中时钟偏移或抖动引起的错误。这通常通过以下步骤实现: 1. **码元检测**:首先,接收端需要检测出输入信号中的码元边界,这是位...
例如,对于二极管电路,当输入信号较小时,二极管的伏安特性曲线可以近似为线性,通过计算传输特性中的系数gm,可以分析ic与vb'e的关系。在分析非线性电路时,通常会取幂级数的前几项,并考虑多个频率分量输入时产生...