lecory 波形二进制文件头(.trc)定义

1.文件头,从0字节开始

       byte[] lecroy_trc_header = new byte[]{0x23,0x39,0x30,0x30,0x32,0x30,0x30,0x30,0x31,0x34,0x34,0x57,0x41,0x56,0x45,0x44,0x45,0x53,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4C,0x45,0x43,0x52,0x4F,0x59,0x5F,0x32,0x5F,0x33,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x5A,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB6,0x83,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4C,0x45,0x43,0x52,0x4F,0x59,0x57,0x53,0x34,0x32,0x34,0x00,0x00,0x00,0x00,0x00,0x4B,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xDB,0x41,0x0F,0x00,0xDB,0x41,0x0F,0x00,0x40,0x42,0x0F,0x00,0x00,0x00,0x00,0x00,0xDA,0x41,0x0F,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0D,0x00,0x80,0x39,0x00,0x00,0x00,0xBF,0x00,0x00,0xFE,0x46,0x00,0x00,0x00,0xC7,0x0B,0x00,0x01,0x00,0xBD,0x37,0x06,0x35,0x1E,0xF4,0xC8,0xB6,0x68,0x78,0xD1,0xBF,0x46,0xB6,0xF3,0xFD,0xD4,0x78,0xD1,0xBF,0x56,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x53,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xEB,0xAF,0x2C,0x99,0xBC,0x0B,0xD8,0x31,0x27,0x39,0x40,0x02,0x0F,0x1A,0x04,0xE7,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x20,0x00,0x02,0x00,0x00,0x00,0x80,0x3F,0x13,0x00,0x00,0x00,0x00,0x00,0x80,0x3F,0x00,0x00,0x00,0xBF,0x00,0x00 };

2.关键字段:

        List<trc_field_define> trc_header_fields = new List<trc_field_define>{new trc_field_define("文件总长字段", 0, 11, "string", "%文件头,主要用于指示文件大小,数值为9e10+文件字节长度(不包括此文件头的11个字节)", "#9020000350"),new trc_field_define("大小端", 11+34, 2, "u16", "数据大小端", "=1小端"),new trc_field_define("文件头长", 11+36, 4, "u32", "%文件头WAVEDSEC块的长度,4B, long, 36-39", "可认为定长:346,+11字节头部=0x165 == sizeof(lecroy_trc_header)"),new trc_field_define("波形数据总长", 11+60, 4, "u32", "WAVE_ARRAY_1,%4B,long,60-63,数据列1长度", "20000004,一般是采样点数总长=时间+数据"),new trc_field_define("时间数据总长", 11+112, 4, "u32", "", "10000002, 为波形数据总长/2"),new trc_field_define("采样数据总长", 11+116, 4, "u32", "", "10000002,为波形数据总长/2"),new trc_field_define("PNTS_PER_SCREEN", 11+128, 4, "u32", "区间数", "为波形数据总长/2-2"),new trc_field_define("VERTICAL_GAIN", 11+156, 4, "float", "最终的数值=采样值*Gain+offset", "1.373120030621067e-04"),new trc_field_define("VERTICAL_OFFSET", 11+160, 4, "float", "垂直零点", "0"),new trc_field_define("MAX_VALUE", 11+164, 4, "u32", "最大值", "28875"),new trc_field_define("MIN_VALUE", 11+168, 4, "u32", "最小值", "-29131"),new trc_field_define("HORIZ_INTERVAL", 11+176, 4, "float", "采样率", "1e-10"),new trc_field_define("HORIZ_OFFSET", 11+180, 8, "double", "水平偏移", "-5e-4"),new trc_field_define("PIXEL_OFFSET", 11+188, 8, "u32", "屏幕当前偏移?", "-5e-4"),new trc_field_define("HORIZ_UNCERTAINTY", 11+292, 4, "float", "区间数", "1e-12,采样率的1%"),new trc_field_define("TIMEBASE", 11+324, 2, "u16", "水平栅格时长?这是enum", "24"),new trc_field_define("FIXED_VERT_GAIN", 11+332, 2, "u16", "垂直固定增益?enum", "18")};

       文件结构概要

        /** %Header%用户文本块TEXT % 视上面定义的长度而定% TRIGTIMETRIGGER_T % 8B f 原名结尾是TIME,但与前面定义重复,故改为TTRIGGER_OFFSET % 8B f% RISTIMERIS_OFFSET % 8B f% DATA_ARRAY_1DATA_ARRAY_1% DATA_ARRAT_2DATA_ARRAY_2% SIMPLESIMPLE int16模式% DUAL*/

4.力科的离线波形文件分析工具MAUI Studio.

附件1:参考资料:

  •  CSDN博主「Surrea1」的原创文章,遵循CC 4.0 BY - SA版权协议,转载请注意附上原文出处链接及本声明。

附件2:csv=>.trc例程

/**  lecroy_trc.cs*  *  A csv to lecory .trc bin file format helper modules.*  *  thanks to Lecroy, for its powerful offline wavefrom analyse tools.*  and Surrea1@CSDN for provide the .trc file format.*  *  ----*  V1.0.20230530 by twicave*          created. the first verison, coding in vs2022(c#)*  */using System;
using System.Collections.Generic;
using System.Data.SqlTypes;
using System.Diagnostics.SymbolStore;
using System.Linq;
using System.Reflection.PortableExecutable;
using System.Security.Cryptography;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Runtime.InteropServices;
using static System.Net.Mime.MediaTypeNames;
using System.ComponentModel;namespace SampleData_CSV2LecoryTrc
{internal class lecroy_trc{static byte[] lecroy_trc_header = new byte[]{0x23,0x39,0x30,0x30,0x32,0x30,0x30,0x30,0x31,0x34,0x34,0x57,0x41,0x56,0x45,0x44,0x45,0x53,0x43,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4C,0x45,0x43,0x52,0x4F,0x59,0x5F,0x32,0x5F,0x33,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x01,0x00,0x5A,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xB6,0x83,0x1E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x4C,0x45,0x43,0x52,0x4F,0x59,0x57,0x53,0x34,0x32,0x34,0x00,0x00,0x00,0x00,0x00,0x4B,0x45,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xDB,0x41,0x0F,0x00,0xDB,0x41,0x0F,0x00,0x40,0x42,0x0F,0x00,0x00,0x00,0x00,0x00,0xDA,0x41,0x0F,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x0D,0x00,0x80,0x39,0x00,0x00,0x00,0xBF,0x00,0x00,0xFE,0x46,0x00,0x00,0x00,0xC7,0x0B,0x00,0x01,0x00,0xBD,0x37,0x06,0x35,0x1E,0xF4,0xC8,0xB6,0x68,0x78,0xD1,0xBF,0x46,0xB6,0xF3,0xFD,0xD4,0x78,0xD1,0xBF,0x56,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x53,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xEB,0xAF,0x2C,0x99,0xBC,0x0B,0xD8,0x31,0x27,0x39,0x40,0x02,0x0F,0x1A,0x04,0xE7,0x07,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x20,0x00,0x02,0x00,0x00,0x00,0x80,0x3F,0x13,0x00,0x00,0x00,0x00,0x00,0x80,0x3F,0x00,0x00,0x00,0xBF,0x00,0x00 };public class trc_field_define{public string standardName;public string field_name;public int offetIdxbase0;public int len;public string type;public string memo;public string example;public trc_field_define(string standardName, string field_name, int offsetIdxbase0, int len, string type, string memo, string example) { this.standardName = standardName;this.field_name = field_name;this.offetIdxbase0 = offsetIdxbase0;this.len = len;this.type = type;this.memo = memo;this.example = example;}};static List<trc_field_define> trc_header_fields = new List<trc_field_define>{new trc_field_define("totalLength","文件总长字段", 0, 11, "string", "%文件头,主要用于指示文件大小,数值为9e10+文件字节长度(不包括此文件头的11个字节)", "#9020000350"),new trc_field_define("no_use","大小端", 11+34, 2, "u16", "数据大小端", "=1小端"),new trc_field_define("no_use", "文件头长", 11+36, 4, "u32", "%文件头WAVEDSEC块的长度,4B, long, 36-39", "可认为定长:346,+11字节头部=0x165 == sizeof(lecroy_trc_header)"),new trc_field_define("allDataLength","波形数据总长", 11+60, 4, "u32", "WAVE_ARRAY_1,%4B,long,60-63,数据列1长度", "20000004,一般是采样点数总长=时间+数据"),new trc_field_define("timeDataLength","时间数据总长", 11+112, 4, "u32", "", "10000002, 为波形数据总长/2"),new trc_field_define("sampleDataLength","采样数据总长", 11+116, 4, "u32", "", "10000002,为波形数据总长/2"),new trc_field_define("pntsPerScreen","PNTS_PER_SCREEN", 11+120, 4, "u32", "区间数", "为波形数据总长/2-2"),new trc_field_define("lastvalidPnts","LAST_VALID_PNT", 11+128, 4, "u32", "区间最后一个数据点", "为波形数据总长/2-1"),new trc_field_define("vertical_gain","VERTICAL_GAIN", 11+156, 4, "float", "最终的数值=采样值*Gain+offset", "1.373120030621067e-04"),new trc_field_define("vertical_offset","VERTICAL_OFFSET", 11+160, 4, "float", "垂直零点", "0"),new trc_field_define("max","MAX_VALUE", 11+164, 4, "u32", "最大值", "28875"),new trc_field_define("min","MIN_VALUE", 11+168, 4, "u32", "最小值", "-29131"),new trc_field_define("horizInterval","HORIZ_INTERVAL", 11+176, 4, "float", "采样率", "1e-10"),new trc_field_define("horizOffset","HORIZ_OFFSET", 11+180, 8, "double", "水平偏移", "-5e-4"),new trc_field_define("pixelOffset","PIXEL_OFFSET", 11+188, 8, "u32", "屏幕当前偏移?", "-5e-4"),new trc_field_define("horiz_uncertainty","HORIZ_UNCERTAINTY", 11+292, 4, "float", "区间数", "1e-12,采样率的1%"),new trc_field_define("timeBase","TIMEBASE", 11+324, 2, "u16", "水平栅格时长?这是enum", "24"),new trc_field_define("fixed_Vert_Gain","FIXED_VERT_GAIN", 11+332, 2, "u16", "垂直固定增益?enum", "18")};public struct trcHeaderFields{public string totalLength; //0x9e10+0x0b+lenOfAd*2 "#...."public int allDataLength; //2*lenOfAd(bytes)public int timeDataLength; //lenOfAd;public int sampleDataLength; //lenOfAd;public int pntsPerScreen; //lenfOfAd-2;public int lastvalidPnts; //lenOfAd-1public float vertical_gain; //垂直增益public UInt32 vertical_offset; //垂直偏移public UInt32 max;public UInt32 min;public float horizInterval; //采样率public double horizOffset; //中心点public double pixelOffset; //又一个水平偏移public float horiz_uncertainty; //samplerate/4public UInt16 timeBase; //水平档位public UInt16 fixed_Vert_Gain; //垂直档位};public static Dictionary<string, trc_field_define> dicOfFields = new Dictionary<string, trc_field_define>() { };static public bool WriteTrcFromCsv(float sampleRate, float volPerAd, uint[] sampleData, FileInfo fi){bool ret  = false;/** %Header%用户文本块TEXT % 视上面定义的长度而定% TRIGTIMETRIGGER_T % 8B f 原名结尾是TIME,但与前面定义重复,故改为TTRIGGER_OFFSET % 8B f% RISTIMERIS_OFFSET % 8B f% DATA_ARRAY_1DATA_ARRAY_1% DATA_ARRAT_2DATA_ARRAY_2% SIMPLESIMPLE int16模式% DUAL版权声明:本文为CSDN博主「Surrea1」的原创文章,遵循CC 4.0 BY - SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/Surrea1/article/details/126807087*/try{int totallength = lecroy_trc_header.Length + 2 * sampleData.Length - 11; //no 11 moreStringBuilder sb = new StringBuilder();sb.AppendFormat("#9{0:000000000}", totallength);trcHeaderFields headerFields;headerFields.totalLength = sb.ToString();headerFields.timeDataLength = sampleData.Length;headerFields.sampleDataLength = sampleData.Length;headerFields.allDataLength = sampleData.Length * 2; //in bytes.headerFields.horizInterval = sampleRate;headerFields.horizOffset = 0;headerFields.horiz_uncertainty = sampleRate / 4;headerFields.pixelOffset = 0;headerFields.pntsPerScreen = sampleData.Length;headerFields.lastvalidPnts = sampleData.Length-1;headerFields.vertical_gain = volPerAd; //垂直增益headerFields.vertical_offset = 0; //垂直偏移headerFields.timeBase = 15;headerFields.fixed_Vert_Gain = 1; //垂直增益byte[] header = new byte[lecroy_trc_header.Length];for (int i = 0; i < header.Length; ++i){header[i] = 0;}lecroy_trc_header.CopyTo(header, 0);if (dicOfFields.Count == 0){foreach (trc_field_define i in trc_header_fields){if (dicOfFields.ContainsKey(i.standardName)) continue;dicOfFields.Add(i.standardName, i);}}Encoding.ASCII.GetBytes(headerFields.totalLength).CopyTo(header, dicOfFields["totalLength"].offetIdxbase0);BitConverter.GetBytes(headerFields.timeDataLength).CopyTo(header, dicOfFields["timeDataLength"].offetIdxbase0);BitConverter.GetBytes(headerFields.sampleDataLength).CopyTo(header, dicOfFields["sampleDataLength"].offetIdxbase0);BitConverter.GetBytes(headerFields.allDataLength).CopyTo(header, dicOfFields["allDataLength"].offetIdxbase0);BitConverter.GetBytes(headerFields.horizInterval).CopyTo(header, dicOfFields["horizInterval"].offetIdxbase0);BitConverter.GetBytes(headerFields.horizOffset).CopyTo(header, dicOfFields["horizOffset"].offetIdxbase0);BitConverter.GetBytes(headerFields.horiz_uncertainty).CopyTo(header, dicOfFields["horiz_uncertainty"].offetIdxbase0);BitConverter.GetBytes(headerFields.pixelOffset).CopyTo(header, dicOfFields["pixelOffset"].offetIdxbase0);BitConverter.GetBytes(headerFields.pntsPerScreen).CopyTo(header, dicOfFields["pntsPerScreen"].offetIdxbase0);BitConverter.GetBytes(headerFields.lastvalidPnts).CopyTo(header, dicOfFields["lastvalidPnts"].offetIdxbase0);BitConverter.GetBytes(headerFields.vertical_gain).CopyTo(header, dicOfFields["vertical_gain"].offetIdxbase0);BitConverter.GetBytes(headerFields.vertical_offset).CopyTo(header, dicOfFields["vertical_offset"].offetIdxbase0);BitConverter.GetBytes(headerFields.timeBase).CopyTo(header, dicOfFields["timeBase"].offetIdxbase0);BitConverter.GetBytes(headerFields.fixed_Vert_Gain).CopyTo(header, dicOfFields["fixed_Vert_Gain"].offetIdxbase0);FileStream fs = new FileStream(fi.FullName, FileMode.OpenOrCreate, FileAccess.Write);BinaryWriter bw = new BinaryWriter(fs);/*(byte[] zero24 = new byte[24];for (int i = 0; i < zero24.Length; ++i){zero24[i] = 0;}bw.Write(zero24);*/UInt16 min = UInt16.MaxValue;UInt16 max = UInt16.MinValue;foreach (uint data in sampleData){UInt16 d16 = (UInt16)data;if(min>d16) min = d16;if(max<d16) max = d16;}BitConverter.GetBytes((float)min).CopyTo(header, dicOfFields["min"].offetIdxbase0);BitConverter.GetBytes((float)max).CopyTo(header, dicOfFields["max"].offetIdxbase0);bw.Write(header);foreach (uint data in sampleData){UInt16 d16 = (UInt16)data;bw.Write(BitConverter.GetBytes(d16));}bw.Flush();fs.Close();ret = true;}catch (Exception ex){Console.WriteLine(ex.Message);return false;}return ret;}}
}

附件3:可用的命令行转换工具

csv=>.trc lecroy bin格式波形文件命令行转换工具icon-default.png?t=N4P3https://download.csdn.net/download/twicave/87846064

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/256250.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

playwright - 剧作家, 端对端测试

本文基于 playwright v1.34.3, node v18.16.0 注意&#xff1a;playwright 版本随 node lts 版本更新而更新&#xff0c;所以请确保 node 版本与 playwright 版本匹配。 写在前面 前端开发阶段&#xff0c;少不了测试&#xff0c;一般包含两类测试&#xff1a;单元测试、端对端…

如何搭建苹果虚拟服务器降级,ios14怎么降级13.6 苹果iOS14降级超详细教程

iOS14相信很多朋友都体验过了&#xff0c;最近不少的小伙伴都升级到iOS14&#xff0c;但是对这个版本并不满意&#xff0c;那么iOS14怎么降级13.6呢?下面就来为大家分享一下苹果iOS14降级13.6的教程。 1、通过 iTunes 降级系统(注意事项&#xff1a;降级只能降级到最新的iOS 1…

苹果手机无法验证应用怎么办_苹果关闭iOS 14.0.1验证,用户将无法降级_

2020年10月28日 10:01 作者&#xff1a;陈沐梁 编辑&#xff1a;陈沐梁 文章出处&#xff1a;泡泡网原创 10月28日消息 在上周发布 iOS 14.1正式版之后&#xff0c;苹果今天停止了对 iOS 14.0.1的验证&#xff0c;这意味着用户无法再降级到该版本。 苹果通常会在新版本发布后停…

苹果开放降级通道_苹果出手,关闭降级系统iOS13验证,iOS14再也回不去了!

自苹果发布最新版iOS 14系统后&#xff0c;有人已经抢先尝鲜升级了&#xff0c;有人还在观望中&#xff0c;这一次iOS 14系统升级&#xff0c;主要带来的变化有新增了一系列小功能&#xff0c;比如主屏小组件、APP资源库、给照片命名等&#xff0c;而据外媒报道&#xff0c;iOS…

苹果6严重卡顿_苹果手机iOS系统: 如果开放系统降级通道会怎么样?

苹果手机的iOS系统有一个最大的特点就是只能升级不能降级&#xff0c;每次系统升级之后&#xff0c;大约只有两周的时间让用户反悔&#xff0c;通过刷机的方式降级&#xff0c;超过了这个时间就永远不能降级了。 但是苹果每次推出新版本系统又总是出岔子&#xff0c;尤其是这次…

苹果手机几月份最便宜_苹果手机越来越便宜了么?目前看来确实是这样的!

原标题&#xff1a;苹果手机越来越便宜了么&#xff1f;目前看来确实是这样的&#xff01; 苹果手机越来越便宜了么&#xff1f;目前看来确实是这样的&#xff0c;iPhone11系列已经从当初的5000元跌到了现如今的4000出头&#xff0c;在某多多甚至只需要3979元即可入手&#xff…

苹果手机编辑word_苹果手机更新后卡顿,关闭这两个开关立马恢复,设置之后差点泪崩...

现在很多使用苹果手机的小伙伴&#xff0c;升级系统之后手机就会出现很多穿线问题&#xff0c;不仅没有达到预计的流畅度&#xff0c;升级之后反而出现各种问题&#xff0c;下面给出两种恢复原版流畅度的方法&#xff0c;大家一起来看一下&#xff0c;有用的话记得给小编点个赞…

Android手机直播系统开发介绍

近两年直播热的兴起也带动了直播开发行业的崛起&#xff0c;每个人都想要去吃直播开发这块蛋糕。但这块蛋糕也不是这么容易吃到的&#xff0c;在激烈的市场竞争下&#xff0c;有几个大的直播平台始终占据着市场中较大的份额&#xff0c;也有一些小的公司承受不住冲击倒下&#…

鸿蒙系统上市对苹果的影响,鸿蒙系统华为手机今年上市?假如能够比肩iOS,苹果还有何优势?...

最近一段时间关于华为鸿蒙系统的消息大家想必是已经看了不少了&#xff0c;这一波波峰回路转的剧情也确实很是引人注目&#xff0c;先是谷歌响应“实体名单”&#xff0c;逼的华为不得不抛出“备胎”计划&#xff0c;鸿蒙系统也由此进入大众视野&#xff0c;而后谷歌见势不妙又…

苹果手机几月份最便宜_苹果手机越来越便宜,安卓手机越来越贵,果真是这样吗?...

[PConline 杂谈]在北京时间2020年4月15日的晚间&#xff0c;苹果悄然地在其官网更新了一款与旧设备同名的产品iPhone SE。与当年的iPhone SE复刻iPhone 5S的路线相同&#xff0c;新款iPhone SE也走了“复古怀旧”的路线&#xff0c;沿用了iPhone 8系列的外观。 iPhone降价&…

如何降低计算机版本,苹果系统怎么降级到好用的老版本

怎样降级成ios11?很多人升成ios12以后发觉耗电量、卡顿等难题,又后悔莫及升級了,那麼人们能否降回到ios11呢?回答那时候是能够 的啦,下边为大伙儿详细介绍iPhone系统软件降级实例教程。 准备工作 1、准备好一台Windows系统电脑或iPhoneMacOS系统电脑; 2、在电脑上下载和安…

苹果手机系统更新在哪里显示无服务器,苹果手机系统升级出现故障问题,怎么看问题出在哪里...

大家的苹果手机有时候升级或者刷机的时候都会出现各种报错故障&#xff0c;当手机出现各种故障错误是不是无从下手&#xff0c;今天教大家怎么样解决苹果故障问题。 验证CPU-验证内存-验证硬盘-进度条开始走(写硬盘)-走到 50%表示硬盘已经写完 验证基带-写基带-进度条走到80%表…

苹果6系统怎么更新不了_苹果手机系统怎么降级

很多朋友把自己的iPhone升级到新版本系统之后,可能会遇到系统升级之后变卡、运行不流畅等这些情况,想把iPhone降回老的版本系统恢复起来。那么苹果手机系统怎么降级呢?那今天我就跟大家分享一下iPhone降回老版本系统方法,下面就一起来看看吧。 苹果手机系统怎么降级 1、首先…

Go开发学习 | 如何使用Gomail.v2模块包发送邮箱验证码消息及附件学习记录

欢迎关注「全栈工程师修炼指南」公众号 点击 &#x1f447; 下方卡片 即可关注我哟! 设为「星标⭐」每天带你 基础入门 到 进阶实践 再到 放弃学习&#xff01; “ 花开堪折直须折&#xff0c;莫待无花空折枝。 ” 作者主页&#xff1a;[ https://www.weiyigeek.top ] 博客&…

CorelDRAW Graphics Suite2023新功能详解下载教程

CorelDRAW2023版本有效快速创作&#xff0c;充分体现设计者创意&#xff0c;一款全面图形设计软件。应用广告宣传、艺术作品、纺织业等各个行业。 CorelDRAW Graphics Suite涵盖了全部CorelDRAW图形处理组件&#xff0c;是一款智能高效的平面设计软件&#xff0c;广泛应用于排版…

CorelDRAW 2023版本更新内容及安装详细教程

这里是CorelDRAW 2023版本更新内容及安装详细教程: CorelDRAW 2023是最新更新版本,在界面和功能上做了较大提升与优化: 1. 简洁界面:采用全新设计界面,简约而不简单。菜单和工具栏进行了整合与重组,更加直观。拥有自动标记和提示,易于上手使用。 2. 全新工作空间:提供“轻量…

coreldraw2023安装包下载及新功能介绍

对于广告标识业来说 coreldraw这个软件&#xff0c;对我们来说绝对不陌生&#xff0c;我从2008年开始接触到广告制作&#xff0c;到现在已经13多年了&#xff0c;从一开始的coreldraw 9红色的热气球开始。就被这个强大的软件所吸引&#xff0c;他有强大的排榜功能已经对位图的处…

CorelDRAW2022新版本序列号 cdrx8安装向导教程

如果在工作生活中需要设计图形、照片、网站等&#xff0c;可以使用cdr设计软件&#xff0c;那么如何下载呢&#xff0c;下面小编就跟小伙伴们一起分享下cdr下载中文版免费方法的教程。希望对小伙伴们有所帮助。 cdr下载中文版免费教程方法 如果在工作生活中需要设计图形、照…

CorelDRAW2022全新试用版功能详细讲解

CorelDRAW Graphics Suite2022是配备齐全的专业设计工具包&#xff0c;可以非常高的效率提供令人惊艳的矢量插图、布局、照片编辑和排版项目。在 Windows 和 Mac&#xff08;包括Windows 11、macOS Monterey&#xff09;上尽享对最新技术的原生支持&#xff0c;和 Apple M1 芯片…

基于Android应用开发实现UWB(超宽带)通信

什么是超宽带UWB 超宽带通信是一种无线电技术,专注于设备之间的精确测距(测量位置的精度为 10 厘米)。这种无线电技术可以使用低能量密度进行短距离测量,并在大部分无线电频谱上执行高带宽信号传输。UWB 的带宽大于 500 MHz(或超过 20% 的小数带宽)。 从 Android 13 开…