using(varpackage=newExcelPackage(newFileInfo(excel保存地址))){//检查工作簿中是否存在同名的工作表varworksheet=package.Workbook.Worksheets.Add("Sheet1");row位置=2;int上行号=2;int上行号2=2;int现在=1;while(Sdr.Read()){for(inti=0;i
软件无线电技术学习之旅:从基础到精通的全面指南探索
byte轻骑兵
#软件定义无线电新视界学习软件无线电GNURadio
目录一、基础知识准备1.1.数学基础1.2.电路基础1.3.信号处理基础1.4.通信原理二、软件无线电技术入门2.1.软件无线电概述2.2.基本原理2.3.SDR平台与硬件2.4.软件平台与开发环境三、深入学习与实践3.1.信号处理技术3.2.通信协议与标准3.3.项目实践3.4.最新技术动态四、扩展与提升4.1.参加专业培训与认证4.2.参与开源社区4.3.持续学习与自我提升五、学习资源5.1.
软件定义无线电(Software Defined Radio,SDR)
无极921
软件定义无线电无线电无线通信技术技术
软件定义无线电(SoftwareDefinedRadio,SDR)是一种无线通信技术,它将传统上在硬件中实现的无线电功能(如调制、解调、滤波和频率转换)转移到软件中执行。这种架构提供了一个高度灵活和可重构的平台,允许用户通过改变软件配置来调整或升级无线电系统的功能,而无需更换硬件。SDR的关键特性包括:灵活性:SDR可以支持多种无线通信标准和协议,只需更新软件即可切换不同的调制方式和频段。可重构性
通用无线设备对码软件_通用软件无线电平台USRP-LW N310
weixin_39793319
通用无线设备对码软件
USRP-LWN310http://www.luowave.com产品综述:USRP-LWN310是一种网络的软件定义无线电(SDR),它提供了部署大规模的可靠的和容错性的分布式无线系统。USRP-LWN310通过引入远程执行任务的能力简化了对SDR系统的控制和管理,如更新软件,重新启动,工厂复位、自检,主机/ARM调试以及监控系统运行。USRP-LWN310是目前SDR市场上通道数量最为密集的产
HDMI规范-第十六章 HDR(高动态范围)技术规范详解及运用场景
好多渔鱼好多
HDMI人工智能计算机视觉音视频电视视频编解码智能电视
引言随着显示技术的不断发展,用户对图像质量和视觉体验的要求越来越高。传统的SDR(StandardDynamicRange,标准动态范围)技术已经无法满足现代显示设备的需求。为此,HDR(HighDynamicRange,高动态范围)技术应运而生。HDR通过提供更广泛的亮度范围和更丰富的色彩深度,显著提升了图像的质量和视觉效果。本文将全面介绍HDR技术的规范,包括其工作原理、数据传输流程、标准和格
(盈鹏飞嵌入式SBC-T113全志T113-i主板)-Qt5.12图形库配置说明(可选组件)
szembed
T113-i/T113-S3qt开发语言
SBC-T113产品特性:采用Allwinner公司Cortex-A7双核T113-i处理器,运行最高速度为1.2GHZ;内置64位玄铁C906RISC-VCPU和DSP,提供高效的计算能力;支持1080P视频编码,多格式1080P60fps视频解码(H.265,H.264,MPEG-1/2/4)支持LVDS/MIPI-DSI,分辨率最高1920x1080;支持512-1GBytesDDR3SDR
(盈鹏飞嵌入式SBC-T113全志T113-i主板)-配置Buildroot
szembed
T113-i/T113-S3网络大数据linux
SBC-T113产品特性:采用Allwinner公司Cortex-A7双核T113-i处理器,运行最高速度为1.2GHZ;内置64位玄铁C906RISC-VCPU和DSP,提供高效的计算能力;支持1080P视频编码,多格式1080P60fps视频解码(H.265,H.264,MPEG-1/2/4)支持LVDS/MIPI-DSI,分辨率最高1920x1080;支持512-1GBytesDDR3SDR
每一代内存的读写速度
野木香
通信
内存,有核心频率,I/O频率,等效频率,最后由等效频率而算出带宽,带宽就等于内存的速度。首先SDR时代,只有SDR-133是PC-133的标准,核心频率为133,由于SRD为单向传送所以等效频率也是133,带宽为1.06GB/S然后是大家所熟悉的DDR时代,由于DDR的特性是双向传送,也就是说在读的同时也可以写,这样就等于带宽加大了一倍,所以DDR的等效频率就需要核心频率X2,就拿133MHZ的D
无线电罗盘 改进自KerberosSDR 平替KrakenSDR
老邵的科创世界
KerberosSDRkrakensdrkerberossdr无线电测向
大约5年前,一款易上手的无线电测向机——KerberosSDR横空出世。它是一款多通道相参接收机,由4通道rtlsdr组成。相信大家都是知道,要实现无线电测向,除了硬件上需要特殊的电路设计外,还需要一些软件校准算法。而KerberosSDR相比之前其它同类SDR(如USRPQR210,X310或LimeSDRQPCIe),它的优势就在于事先做好了这个软件,用户只需要把树莓派烧录好配套镜像就能使用。
让Pluto SDR完全脱机执行任务——实现开机运行特定脚本/程序
Kloz
matlab开发语言经验分享linux笔记
在我之前的关于交叉编译的文章中,讨论了如何使用Linaro工具链在Ubuntu主机上编译能在PlutoSDR的arm核上运行的可执行程序,但仅仅这样还不足,因为想要让PlutoSDR执行某个特定任务,首先需要在主机交叉编译,然后通过scp命令传送到PlutoSDR上,然后通过ssh进入到PlutoSDR的Linux系统中手动执行,才完成了一次(半)脱机运行,这并不优雅。本文讲解一种可以让Pluto
C#在软件定义无线电(SDR)开发中的革命性应用——从概念到实践的全面解析
墨夶
C#学习资料2c#网络开发语言
在这个数字化与无线通信飞速发展的时代,软件定义无线电(SoftwareDefinedRadio,SDR)作为一项关键技术,正在改变着我们对传统无线电系统的认知。它不仅允许工程师们以软件的方式实现复杂的信号处理算法,而且还为各种新型无线应用提供了无限可能。然而,要真正驾驭这项技术并非易事,尤其是在选择合适的编程语言时更是如此。今天,我们将聚焦于C#这一强大而灵活的语言,探讨它是如何成为SDR开发的理
Android系统开发(十二):电影般的质感,揭秘 SDR 与 HDR 的完美结合
刘争Stanley
Framework框架大师Android开发巅峰之路android
光影之间的对话大家有没有这种经历:辛辛苦苦做了一个HDR视频效果,结果SDR的亮度抢镜,全场变成了“失衡光影秀”?这篇文章就像是一个光影调解员,专门解决SDR和HDR共存时的那些“抢戏问题”。随着HDR的普及,混合内容在播放设备上的表现成了一个关键话题。为什么选择这个主题?因为在内容制作和播放中,SDR和HDR的冲突不容忽视,尤其是当SDR内容需要“低调”以配合HDR时,这种调暗技术更显重要性。今
基于multisim的fm调制解调_基于SDR的FM调制与解调器的实现
weixin_39876514
张博,李少阳,刘宇本文引用地址:http://www.eepw.com.cn/article/201907/402132.htm(西安邮电大学电子工程学院,陕西省西安市710121)摘要:提出了一种基于SDR的FM调制解调器的实现方案,此方案采用ZYNQ平台和AD9361射频收发芯片搭建。首先介绍ZYNQ+AD9361的SDR硬件平台的设计,其次对FM调制解调的原理分析并结合MATLAB进行算法仿
GNU Radio: 射频子板
weixin_30838921
操作系统前端ViewUI
本文简要介绍USRP配套的子板参数信息。射频子板WBX-40性能特点频率覆盖:50MHz–2.2GHz最大信号处理带宽:40MHz行为描述WBX-40提供高宽带收发器,可提供高达100mw的功率输出,噪声系数为5dB。本地振荡器的接收和传输链独立运作,可以为MIMO实现同步。WBX提供40MHz的带宽能力。对于那些要访问频率段在50MHz-2200MHz范围内的应用,是理想的SDR设备,。应用领域
RK3568 RTL8821cs适配 WPA3连接 与 WPA3热点配置
hmbbPdx_
fpga开发
kernel:4-19SOC:RK3568system:Android12模组:RTL8821CS调试手段可以看之前的正基AP6256一.驱动配置:首先设备树配置如下:因为SDIO电压是1.8V,必须加上sd-uhs-sdr104;&sdio_pwrseq{compatible="mmc-pwrseq-simple";clocks=;pinctrl-names="default";pinctrl-
MQ常用命令
路西_
远程队列——qr可以查看远端队列管理器和队列名字查看本地传输队列XMITQ(SIMUtoIPSP)传输队列——ql可以查看传输通道TRIGDATA(BANK.IPSP)传输通道——chs查看本地ipLOCLADDR(168.33.51.242)查看通道类型CHLTYPE(SDR)CHLTYPE(RCVR)远端服务器地址端口conname通道另一端的队列管理器RQMNAME查看传输队列XMITQ(S
MA网络中的DR/BDR的选举
보고.싶다
智能路由器网络
条件匹配---在MA网络中,若所有设备均为邻接关系,将出现大量的重复更新,故需要进行DR/BDR的选举,所有DRother之间仅维持邻居关系即可。条件匹配----一个广播域非抢占---40SDR、BDRDrother---都是路由器接口的概念DR/BDR的选举规则:1,先比优先级,优先级大的为DR,次大的为BDR优先级的初始默认值为1。[r1-GigabitEthernet0/0/0]ospfdr
RTL-SDR 零基础小白入门 1 安装问题解决
Roadtothewest
引言网上其实到处都有提到最低成本实现收听FM,查询飞机轨迹等操作,这里就不细表了然后网上很多程序员大大,都直接在linux下面刚正面,对于很多小白来说,这样第一步跳的坑,就会略深,可能就放弃了,这样不好。无线电是一个应该会的技能,在未来应该是越来越有其用途的,所以这里放上可以直接顺利运行的极简版:win7的安装,网上不少,这里不细表本文需要用到的软件包:SDRSharp在这里https://air
下一代图片格式AVIF,赶紧用起!
JavaEdge
介绍AVIF图片格式的特点和在Web端显示AVIF格式图片的两种方案。1简介AVIF是一种基于AV1视频编码的新图像格式,相对于JPEG、Wep等图片格式压缩率更高,并且画面细节更好。AVIF通过使用更现代的压缩算法,在相同质量的前提下,AVIF文件大小是JPEG文件的35%左右。AVIF支持高动态范围(HDR)和标准动态范围(SDR)内容,包括常用的sRGB和BT.2020色彩空间。它支持8、1
服务器之ipmitool
_pass_
IT服务器
一般命令raw#发送一个原始的IPMI请求,并且打印回复信息。Lan#配置网络(lan)信道(channel)chassis#查看底盘的状态和设置电源event#向BMC发送一个已经定义的事件(event),可用于测试配置的SNMP是否成功mc#查看MC(ManagementContollor)状态和各种允许的项sdr#打印传感器仓库中的所有监控项和从传感器读取到的值。Sensor#打印详细的传感
ARM-Linux驱动内核(S3C2440)
Omedetou。
linuxarm开发运维
Linux启动流程驱动(程序):驱使设备行动的程序1.启动bootloader---引导操作系统启动的(裸机)程序,为操作系统启动准备环境,并引导操作系统启动2.启动kernel---操作系统核心(俗称的操作系统)3.加载根文件系统---一堆文件的集合(根目录下的文件)存储分类RAM(随机存储)SRAM静态DRAM动态SDRAM同步动态SDR(DDR2\3\4\5)ROM(只读存储)PROM可编程
在Ubuntu18下使用自带python3安装USRP SDR开发包uhd
何时摆脱命运的束缚
软件定义无线电pythonubuntu
准备工作一台USRPB200mini-iSDRVmware虚拟机Ubuntu18源码编译安装UHD相关插件sudoapt-getinstallgitcmakelibboost-all-devlibusb-1.0-0-devpython3-docutilspython3-makopython3-numpypython3-requestspython3-ruamel.yamlpython3-setup
[OpenAirInterface-01]什么是OAI?OAI在github中源代码的存放结构
“逛丢一只鞋”
github驱动开发
文章目录前言:什么是软件无线电SDR第1章什么是OAI(OpenAirInterface)1.1来自官网的概述1.2来自github的概述1.3来自我的解读第2章什么是OSA2.1OSA概述:2.2OSA联盟职责2.3OpenAirInterfacegithub成员的角色第3章常见的其他问题3.1OAI包括哪几部分3.2OAI支持哪些无线技术和无线系统?(1)LTE(2)5G3.3支持哪些射频硬件
【USRPx310系列(NI USRP2940-2955)+ srsRAN】环境搭建与应用
John Chen1223
通信专栏ubuntulinux
✨Hello!如果这篇【文章】对你有帮助,希望可以给博主点个赞鼓励一下目录1Ubuntu20.04LTS系统安装1.1ISO镜像下载1.2U盘格式化1.3系统安装1.4更新软件源1.5*可选操作1.5.1静态IP配置1.5.2安装独立显卡驱动1.5.3系统UI美化2NIUSRP2954连接配置2.1SDR介绍2.2NIUSRP&EttusUSRP2.3UHD(USRPHardwareDrivers
VMware Workstation 11 或者 VMware Player 7安装MAC OS X 10.10 Yosemite
iwindyforest
vmwaremac os10.10workstationplayer
最近尝试了下VMware下安装MacOS 系统,
安装过程中发现网上可供参考的文章都是VMware Workstation 10以下, MacOS X 10.9以下的文章,
只能提供大概的思路, 但是实际安装起来由于版本问题, 走了不少弯路, 所以我尝试写以下总结, 希望能给有兴趣安装OSX的人提供一点帮助。
写在前面的话:
其实安装好后发现, 由于我的th
关于《基于模型驱动的B/S在线开发平台》源代码开源的疑虑?
deathwknight
JavaScriptjava框架
本人从学习Java开发到现在已有10年整,从一个要自学 java买成javascript的小菜鸟,成长为只会java和javascript语言的老菜鸟(个人邮箱:
[email protected])
一路走来,跌跌撞撞。用自己的三年多业余时间,瞎搞一个小东西(基于模型驱动的B/S在线开发平台,非MVC框架、非代码生成)。希望与大家一起分享,同时有许些疑虑,希望有人可以交流下
平台
如何把maven项目转成web项目
Kai_Ge
mavenMyEclipse
创建Web工程,使用eclipse ee创建maven web工程 1.右键项目,选择Project Facets,点击Convert to faceted from 2.更改Dynamic Web Module的Version为2.5.(3.0为Java7的,Tomcat6不支持). 如果提示错误,可能需要在Java Compiler设置Compiler compl
主管???
Array_06
工作
转载:http://www.blogjava.net/fastzch/archive/2010/11/25/339054.html
很久以前跟同事参加的培训,同事整理得很详细,必须得转!
前段时间,公司有组织中高阶主管及其培养干部进行了为期三天的管理训练培训。三天的课程下来,虽然内容较多,因对老师三天来的课程内容深有感触,故借着整理学习心得的机会,将三天来的培训课程做了一个
python内置函数大全
2002wmj
python
最近一直在看python的document,打算在基础方面重点看一下python的keyword、Build-in Function、Build-in Constants、Build-in Types、Build-in Exception这四个方面,其实在看的时候发现整个《The Python Standard Library》章节都是很不错的,其中描述了很多不错的主题。先把Build-in Fu
JSP页面通过JQUERY合并行
357029540
JavaScriptjquery
在写程序的过程中我们难免会遇到在页面上合并单元行的情况,如图所示
如果对于会的同学可能很简单,但是对没有思路的同学来说还是比较麻烦的,提供一下用JQUERY实现的参考代码
function mergeCell(){
var trs = $("#table tr");
&nb
Java基础
冰天百华
java基础
学习函数式编程
package base;
import java.text.DecimalFormat;
public class Main {
public static void main(String[] args) {
// Integer a = 4;
// Double aa = (double)a / 100000;
// Decimal
unix时间戳相互转换
adminjun
转换unix时间戳
如何在不同编程语言中获取现在的Unix时间戳(Unix timestamp)? Java time JavaScript Math.round(new Date().getTime()/1000)
getTime()返回数值的单位是毫秒 Microsoft .NET / C# epoch = (DateTime.Now.ToUniversalTime().Ticks - 62135
作为一个合格程序员该做的事
aijuans
程序员
作为一个合格程序员每天该做的事 1、总结自己一天任务的完成情况 最好的方式是写工作日志,把自己今天完成了什么事情,遇见了什么问题都记录下来,日后翻看好处多多
2、考虑自己明天应该做的主要工作 把明天要做的事情列出来,并按照优先级排列,第二天应该把自己效率最高的时间分配给最重要的工作
3、考虑自己一天工作中失误的地方,并想出避免下一次再犯的方法 出错不要紧,最重
由html5视频播放引发的总结
ayaoxinchao
html5视频video
前言
项目中存在视频播放的功能,前期设计是以flash播放器播放视频的。但是现在由于需要兼容苹果的设备,必须采用html5的方式来播放视频。我就出于兴趣对html5播放视频做了简单的了解,不了解不知道,水真是很深。本文所记录的知识一些浅尝辄止的知识,说起来很惭愧。
视频结构
本该直接介绍html5的<video>的,但鉴于本人对视频
解决httpclient访问自签名https报javax.net.ssl.SSLHandshakeException: sun.security.validat
bewithme
httpclient
如果你构建了一个https协议的站点,而此站点的安全证书并不是合法的第三方证书颁发机构所签发,那么你用httpclient去访问此站点会报如下错误
javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path bu
Jedis连接池的入门级使用
bijian1013
redisredis数据库jedis
Jedis连接池操作步骤如下:
a.获取Jedis实例需要从JedisPool中获取;
b.用完Jedis实例需要返还给JedisPool;
c.如果Jedis在使用过程中出错,则也需要还给JedisPool;
packag
变与不变
bingyingao
不变变亲情永恒
变与不变
周末骑车转到了五年前租住的小区,曾经最爱吃的西北面馆、江西水饺、手工拉面早已不在,
各种店铺都换了好几茬,这些是变的。
三年前还很流行的一款手机在今天看起来已经落后的不像样子。
三年前还运行的好好的一家公司,今天也已经不复存在。
一座座高楼拔地而起,
【Scala十】Scala核心四:集合框架之List
bit1129
scala
Spark的RDD作为一个分布式不可变的数据集合,它提供的转换操作,很多是借鉴于Scala的集合框架提供的一些函数,因此,有必要对Scala的集合进行详细的了解
1. 泛型集合都是协变的,对于List而言,如果B是A的子类,那么List[B]也是List[A]的子类,即可以把List[B]的实例赋值给List[A]变量
2. 给变量赋值(注意val关键字,a,b
Nested Functions in C
bookjovi
cclosure
Nested Functions 又称closure,属于functional language中的概念,一直以为C中是不支持closure的,现在看来我错了,不过C标准中是不支持的,而GCC支持。
既然GCC支持了closure,那么 lexical scoping自然也支持了,同时在C中label也是可以在nested functions中自由跳转的
Java-Collections Framework学习与总结-WeakHashMap
BrokenDreams
Collections
总结这个类之前,首先看一下Java引用的相关知识。Java的引用分为四种:强引用、软引用、弱引用和虚引用。
强引用:就是常见的代码中的引用,如Object o = new Object();存在强引用的对象不会被垃圾收集
读《研磨设计模式》-代码笔记-解释器模式-Interpret
bylijinnan
java设计模式
声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/
package design.pattern;
/*
* 解释器(Interpreter)模式的意图是可以按照自己定义的组合规则集合来组合可执行对象
*
* 代码示例实现XML里面1.读取单个元素的值 2.读取单个属性的值
* 多
After Effects操作&快捷键
cherishLC
After Effects
1、快捷键官方文档
中文版:https://helpx.adobe.com/cn/after-effects/using/keyboard-shortcuts-reference.html
英文版:https://helpx.adobe.com/after-effects/using/keyboard-shortcuts-reference.html
2、常用快捷键
Maven 常用命令
crabdave
maven
Maven 常用命令
mvn archetype:generate
mvn install
mvn clean
mvn clean complie
mvn clean test
mvn clean install
mvn clean package
mvn test
mvn package
mvn site
mvn dependency:res
shell bad substitution
daizj
shell脚本
#!/bin/sh
/data/script/common/run_cmd.exp 192.168.13.168 "impala-shell -islave4 -q 'insert OVERWRITE table imeis.${tableName} select ${selectFields}, ds, fnv_hash(concat(cast(ds as string), im
Java SE 第二讲(原生数据类型 Primitive Data Type)
dcj3sjt126com
java
Java SE 第二讲:
1. Windows: notepad, editplus, ultraedit, gvim
Linux: vi, vim, gedit
2. Java 中的数据类型分为两大类:
1)原生数据类型 (Primitive Data Type)
2)引用类型(对象类型) (R
CGridView中实现批量删除
dcj3sjt126com
PHPyii
1,CGridView中的columns添加
array(
'selectableRows' => 2,
'footer' => '<button type="button" onclick="GetCheckbox();" style=&
Java中泛型的各种使用
dyy_gusi
java泛型
Java中的泛型的使用:1.普通的泛型使用
在使用类的时候后面的<>中的类型就是我们确定的类型。
public class MyClass1<T> {//此处定义的泛型是T
private T var;
public T getVar() {
return var;
}
public void setVa
Web开发技术十年发展历程
gcq511120594
Web浏览器数据挖掘
回顾web开发技术这十年发展历程:
Ajax
03年的时候我上六年级,那时候网吧刚在小县城的角落萌生。传奇,大话西游第一代网游一时风靡。我抱着试一试的心态给了网吧老板两块钱想申请个号玩玩,然后接下来的一个小时我一直在,注,册,账,号。
彼时网吧用的512k的带宽,注册的时候,填了一堆信息,提交,页面跳转,嘣,”您填写的信息有误,请重填”。然后跳转回注册页面,以此循环。我现在时常想,如果当时a
openSession()与getCurrentSession()区别:
hetongfei
javaDAOHibernate
来自 http://blog.csdn.net/dy511/article/details/6166134
1.getCurrentSession创建的session会和绑定到当前线程,而openSession不会。
2. getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而openSession必须手动关闭。
这里getCurrentSession本地事务(本地
第一章 安装Nginx+Lua开发环境
jinnianshilongnian
nginxluaopenresty
首先我们选择使用OpenResty,其是由Nginx核心加很多第三方模块组成,其最大的亮点是默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用。借助于Nginx的事件驱动模型和非阻塞IO,可以实现高性能的Web应用程序。而且OpenResty提供了大量组件如Mysql、Redis、Memcached等等,使在Nginx上开发Web应用更方便更简单。目前在京东如实时价格、秒
HSQLDB In-Process方式访问内存数据库
liyonghui160com
HSQLDB一大特色就是能够在内存中建立数据库,当然它也能将这些内存数据库保存到文件中以便实现真正的持久化。
先睹为快!
下面是一个In-Process方式访问内存数据库的代码示例:
下面代码需要引入hsqldb.jar包 (hsqldb-2.2.8)
import java.s
Java线程的5个使用技巧
pda158
java数据结构
Java线程有哪些不太为人所知的技巧与用法? 萝卜白菜各有所爱。像我就喜欢Java。学无止境,这也是我喜欢它的一个原因。日常
工作中你所用到的工具,通常都有些你从来没有了解过的东西,比方说某个方法或者是一些有趣的用法。比如说线程。没错,就是线程。或者确切说是Thread这个类。当我们在构建高可扩展性系统的时候,通常会面临各种各样的并发编程的问题,不过我们现在所要讲的可能会略有不同。
开发资源大整合:编程语言篇——JavaScript(1)
shoothao
JavaScript
概述:本系列的资源整合来自于github中各个领域的大牛,来收藏你感兴趣的东西吧。
程序包管理器
管理javascript库并提供对这些库的快速使用与打包的服务。
Bower - 用于web的程序包管理。
component - 用于客户端的程序包管理,构建更好的web应用程序。
spm - 全新的静态的文件包管
避免使用终结函数
vahoa.ma
javajvmC++
终结函数(finalizer)通常是不可预测的,常常也是很危险的,一般情况下不是必要的。使用终结函数会导致不稳定的行为、更差的性能,以及带来移植性问题。不要把终结函数当做C++中的析构函数(destructors)的对应物。
我自己总结了一下这一条的综合性结论是这样的:
1)在涉及使用资源,使用完毕后要释放资源的情形下,首先要用一个显示的方