当前位置:网站首页>RSA306B,500,600系列API接口代码
RSA306B,500,600系列API接口代码
2022-08-04 15:11:00 【二十四桥_】
获取资料,下图是代码文件截图。
部分示例代码:
"""################SPECTRUM EXAMPLE################"""
def config_spectrum(cf=1e9, refLevel=0, span=40e6, rbw=300e3):
rsa.SPECTRUM_SetEnable(c_bool(True))
rsa.CONFIG_SetCenterFreq(c_double(cf))
rsa.CONFIG_SetReferenceLevel(c_double(refLevel))
rsa.SPECTRUM_SetDefault()
specSet = Spectrum_Settings()
rsa.SPECTRUM_GetSettings(byref(specSet))
specSet.window = SpectrumWindows.SpectrumWindow_Kaiser
specSet.verticalUnit = SpectrumVerticalUnits.SpectrumVerticalUnit_dBm
specSet.span = span
specSet.rbw = rbw
rsa.SPECTRUM_SetSettings(specSet)
rsa.SPECTRUM_GetSettings(byref(specSet))
return specSet
def create_frequency_array(specSet):
# Create array of frequency data for plotting the spectrum.
freq = np.arange(specSet.actualStartFreq, specSet.actualStartFreq
+ specSet.actualFreqStepSize * specSet.traceLength,
specSet.actualFreqStepSize)
return freq
def acquire_spectrum(specSet):
ready = c_bool(False)
traceArray = c_float * specSet.traceLength
traceData = traceArray()
outTracePoints = c_int(0)
traceSelector = SpectrumTraces.SpectrumTrace1
rsa.DEVICE_Run()
rsa.SPECTRUM_AcquireTrace()
while not ready.value:
rsa.SPECTRUM_WaitForDataReady(c_int(100), byref(ready))
rsa.SPECTRUM_GetTrace(traceSelector, specSet.traceLength, byref(traceData),
byref(outTracePoints))
rsa.DEVICE_Stop()
return np.array(traceData)
def spectrum_example():
print('\n\n########Spectrum Example########')
search_connect()
cf = 2.4453e9
refLevel = -30
span = 40e6
rbw = 10e3
specSet = config_spectrum(cf, refLevel, span, rbw)
trace = acquire_spectrum(specSet)
freq = create_frequency_array(specSet)
peakPower, peakFreq = peak_power_detector(freq, trace)
plt.figure(1, figsize=(15, 10))
ax = plt.subplot(111, facecolor='k')
ax.plot(freq, trace, color='y')
ax.set_title('Spectrum Trace')
ax.set_xlabel('Frequency (Hz)')
ax.set_ylabel('Amplitude (dBm)')
ax.axvline(peakFreq)
ax.text((freq[0] + specSet.span / 20), peakPower,
'Peak power in spectrum: {:.2f} dBm @ {} MHz'.format(
peakPower, peakFreq / 1e6), color='white')
ax.set_xlim([freq[0], freq[-1]])
ax.set_ylim([refLevel - 100, refLevel])
plt.tight_layout()
plt.show()
rsa.DEVICE_Disconnect()
边栏推荐
- Android Sqlite3基本命令
- 【历史上的今天】8 月 4 日:第一位图灵奖女性得主;NVIDIA 收购 MediaQ;首届网络安全挑战大赛完成
- leetcode: 253. How many meeting rooms are required at least
- IP第十八天笔记
- 1403. 非递增顺序的最小子序列
- 微软表示将向内部网络安全专家共享数据 为企业提供更安全保护
- JCMsuite Application: Oblique Plane Wave Propagation Transmission Through Aperture
- Technology sharing | Mini program realizes audio and video calls
- 基本介绍PLSQL
- 分布式链路追踪Jaeger + 微服务Pig在Rainbond上的实践分享
猜你喜欢
随机推荐
我在羊毛和二手群里报复性消费
Oracle database user creation, restart, import and export
Http-Sumggling缓存漏洞分析
1403. Minimum Subsequence in Non-Increasing Order
Cisco-小型网络拓扑(DNS、DHCP、网站服务器、无线路由器)
Find My技术|防止你的宠物跑丢,苹果Find My技术可以帮到你
This week to discuss the user experience: Daedalus Nemo to join Ambire, explore the encryption of the ocean
聊聊与苹果审核员的爱恨情仇
基本介绍PLSQL
特殊品种的二次开户验资金额
CloudCompare&PCL 点云按网格划分(点云分幅)
using关键字学习
RTC 场景下的屏幕共享优化实践
leetcode: 250. Count subtrees of equal value
宣传海报
【历史上的今天】8 月 4 日:第一位图灵奖女性得主;NVIDIA 收购 MediaQ;首届网络安全挑战大赛完成
C语言写简单三子棋
Codeforces Round #811 A~F
分布式链路追踪Jaeger + 微服务Pig在Rainbond上的实践分享
Redis 高可用