【工程师分享】MPSoC VCU调试方法和调试流程

FPGA开发圈 2021-10-12 14:24

作者:Hank FU,hankf@xilinx.com,文章来源:博客园


概要介绍

MPSoC VCU在很多产品中得到了应用。在不同产品的调试过程中,有一些共同的办法。


首先看看Video子系统的简单框图,其中包含视频输入、编解码、视频输出等模块。视频输入模块,硬件可能是HDMI-RX和FrmBufWrite; 软件一般是Linux V4L2。编解码模块是VCU,配套的软件是GStreamer,或者Ctrl-SW。视频输出模块,硬件可能是HDMI-TX和FrmBufRead; 软件一般是Linux DRM。

调试时,根据上述框图,逐个检查其中的模块的输入输出。


视频输入模块

检查视频输入源
调试VCU时,首先检查视频输入模块的输出是否正常。如果Linux V4L2管理视频输入模块的硬件,则会创建Linux的media/video设备,可以使用工具media-ctl查看它们的信息。对于HDMI-Rx,可以看到有没有连接源设备,视频输入源的分辨率、格式等。

#media-ctl -p -d /dev/media0 

Media controller API version 0.1.0

Media device information
------------------------
driver xilinx-video
model Xilinx Video Composite Device
serial
bus info
hw revision 0x0
driver version 0.0.0

Device topology
- entity 1: vcap_hdmi output 0 (1 pad, 1 link)
type Node subtype V4L flags 0
device node name /dev/video0
pad0: Sink
<- "a0000000.v_hdmi_rx_ss":0 [ENABLED]

- entity 5: a0000000.v_hdmi_rx_ss (1 pad, 1 link)
type V4L2 subdev subtype Unknown flags 0
device node name /dev/v4l-subdev0
pad0: Source
[fmt:RBG24/1920x1080 field:none]
[dv.caps:BT.656/1120 min:0x0@25000000 max:4096x2160@297000000 stds:CEA-861,DMT,CVT,GTF caps:progressive,reduced-blanking,custom]
[dv.detect:BT.656/1120 1920x1080p60 (2200x1125) stds:CEA-861 flags:CE-video]
-> "vcap_hdmi output 0":0 [ENABLED]


抓取原始图像
在确保视频输入源的工作正常、分辨率和格式正确后,可以再继续使用yavta来抓取原始图像,从而检查图像内容。

#yavta -n 3 -c10 -f UYVY -f UYVY -s 1920x1080 --skip 7 -F /dev/video0
Device /dev/video0 opened.
Device `vcap_hdmi output 0' on `platform:vcap_hdmi:0' is a video output (without mplanes)[63898.159475] xilinx-frmbuf a0010000.v_frmbuf_wr: Framebuffer not configured for fourcc 0x59565955
device.
Video format set: UYVY (59565955) 1920x1080 field none[63898.173868] xilinx-frmbuf a0010000.v_frmbuf_wr: Framebuffer not configured for fourcc 0x59565955
, 1 planes:
* Stride 3840, buffer size 4147200
Video format:[63898.188189] xilinx-frmbuf a0010000.v_frmbuf_wr: Framebuffer not configured for fourcc 0x59565955
UYVY (59565955) 1920x1080 field none, 1 planes:
* Stride 3840, buffer size 4147200
3 buffers requested.
length: 1 offset: 3444933696 timestamp type/source: mono/EoF
Buffer 0/0 mapped at address 0x7fa84b0000.
length: 1 offset: 3444933696 timestamp type/source: mono/EoF
Buffer 1/0 mapped at address 0x7fa80bb000.
length: 1 offset: 3444933696 timestamp type/source: mono/EoF
Buffer 2/0 mapped at address 0x7fa7cc6000.
Unable to start streaming: Invalid argument (22).
3 buffers released.


检查原始图像
接下来再使用YUV Player 或者 YUV Player github 分支 检查原始图像是否正确。需要根据图像源,正确设置分辨率和YUV格式。如果图像轮廓就时错误的,这表明Y数据就是错误的,或者分辨率的行宽是错误的,如果轮廓正确、颜色错误,这表明Y数据是对的,分辨率的高不对,或色彩格式不对。大块的连续色彩错误,有可能是把Y数据,当成了UV数据。


Encoder
得到了正确的YUV数据后,继续使用Encoder编码。如果有问题,保存Encoder输出的码流,传送到PC机上,使用FFMpeg检查。首先可以使用ffplay播放,用肉眼观察图像。

Microsoft Windows [Version 10.0.18363.1801]
(c) 2019 Microsoft Corporation. All rights reserved.
C:\prj>ffplay vcu_example.h265
ffplay version N-89369-g5a93a85fd0 Copyright (c) 2003-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
libavutil 56. 4.100 / 56. 4.100
libavcodec 58. 6.102 / 58. 6.102
libavformat 58. 2.103 / 58. 2.103
libavdevice 58. 0.100 / 58. 0.100
libavfilter 7. 6.100 / 7. 6.100
libswscale 5. 0.101 / 5. 0.101
libswresample 3. 0.101 / 3. 0.101
libpostproc 55. 0.100 / 55. 0.100
[hevc @ 000001b016710180] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, hevc, from 'vcu_example.h265':= 0KB sq= 0B f=0/0
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv, unknown/bt709/unknown), 3840x2160, 45 fps, 45 tbr, 1200k tbn, 45 tbc
nan M-V: nan fd= 2 aq= 0KB vq= 844KB sq= 0B f=0/0


其次可以使用ffprobe导出码流信息,查看各帧的类型和大小。

C:\prj>ffprobe vcu_example.h265 > vcu_example.h265.txt
ffprobe version N-89369-g5a93a85fd0 Copyright (c) 2007-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
libavutil 56. 4.100 / 56. 4.100
libavcodec 58. 6.102 / 58. 6.102
libavformat 58. 2.103 / 58. 2.103
libavdevice 58. 0.100 / 58. 0.100
libavfilter 7. 6.100 / 7. 6.100
libswscale 5. 0.101 / 5. 0.101
libswresample 3. 0.101 / 3. 0.101
libpostproc 55. 0.100 / 55. 0.100
[hevc @ 0000019dfe94cd80] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, hevc, from 'vcu_example.h265':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv, unknown/bt709/unknown), 3840x2160, 45 fps, 45 tbr, 1200k tbn, 45 tbc


还可以使用ffmpeg把每一帧转换成bmp图片,仔细查看。

C:\prj>ffmpeg  -i vcu_example.h265  -frames 10 vcu_example.%04d.bmp
ffmpeg version N-89369-g5a93a85fd0 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
libavutil 56. 4.100 / 56. 4.100
libavcodec 58. 6.102 / 58. 6.102
libavformat 58. 2.103 / 58. 2.103
libavdevice 58. 0.100 / 58. 0.100
libavfilter 7. 6.100 / 7. 6.100
libswscale 5. 0.101 / 5. 0.101
libswresample 3. 0.101 / 3. 0.101
libpostproc 55. 0.100 / 55. 0.100
[hevc @ 000002bda8bd9880] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, hevc, from 'vcu_example.h265':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv, unknown/bt709/unknown), 3840x2160, 45 fps, 45 tbr, 1200k tbn, 45 tbc
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> bmp (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'vcu_example.%04d.bmp':
Metadata:
encoder : Lavf58.2.103
Stream #0:0: Video: bmp, bgr24, 3840x2160, q=2-31, 200 kb/s, 45 fps, 45 tbn, 45 tbc
Metadata:
encoder : Lavc58.6.102 bmp
frame= 10 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.22 bitrate=N/A speed=0.568x
video:243001kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown


有问题时,再使用保存的YUV文件,使用xilinx发布的ctrlsw_encoder在ZCU106单板上编码,对比效果。也可以试试Xilinx提供的配置文件。如果有区别,再对比实际代码和xilinx发布的ctrlsw_encoder、配置文件的区别。


Decoder
检查完encoder的输出,再检查decoder的输出。ctrlsw_decoder默认输出I420(YUV420)/I422(YUV422)格式的YUV输出。如果需要,可以参考VCU Ctrl-SW 2020.2输出 NV12 的 YUV 文件,使ctrlsw_decoder输出NV12/NV16的文件。输出后,也可以使用YUV Player 或者 YUV Player github 分支 检查解码后的YUV图像是否正确。


图像质量
如果图像质量有问题,建议使用大的显示器或电视机查看。显示器或电视机要真实支持检查的分辨率,在显示中不能有缩放,避免缩放引起新的问题。也可以使用ffmpeg的下面命令,将码流转换为bmp图片,一帧一帧查看。

C:\prj>ffmpeg  -i vcu_example.h265  -frames 10 vcu_example.%04d.bmp
ffmpeg version N-89369-g5a93a85fd0 Copyright (c) 2000-2017 the FFmpeg developers
built with gcc 7.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-sdl2 --enable-bzlib --enable-fontconfig --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libfreetype --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libtheora --enable-libtwolame --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libzimg --enable-lzma --enable-zlib --enable-gmp --enable-libvidstab --enable-libvorbis --enable-cuda --enable-cuvid --enable-d3d11va --enable-nvenc --enable-dxva2 --enable-avisynth --enable-libmfx
libavutil 56. 4.100 / 56. 4.100
libavcodec 58. 6.102 / 58. 6.102
libavformat 58. 2.103 / 58. 2.103
libavdevice 58. 0.100 / 58. 0.100
libavfilter 7. 6.100 / 7. 6.100
libswscale 5. 0.101 / 5. 0.101
libswresample 3. 0.101 / 3. 0.101
libpostproc 55. 0.100 / 55. 0.100
[hevc @ 000001bb953e9880] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, hevc, from 'vcu_example.h265':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: hevc (Main), yuv420p(tv, unknown/bt709/unknown), 3840x2160, 45 fps, 45 tbr, 1200k tbn, 45 tbc
Stream mapping:
Stream #0:0 -> #0:0 (hevc (native) -> bmp (native))
Press [q] to stop, [?] for help
Output #0, image2, to 'vcu_example.%04d.bmp':
Metadata:
encoder : Lavf58.2.103
Stream #0:0: Video: bmp, bgr24, 3840x2160, q=2-31, 200 kb/s, 45 fps, 45 tbn, 45 tbc
Metadata:yo
encoder : Lavc58.6.102 bmp
frame= 10 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.22 bitrate=N/A speed=0.553x
video:243001kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown


通常,增大码率、减小QP值、使用VBR、使用跳帧等,可以优化图像质量。


VCU性能


如果检查VCU性能,建议使用实际视频输入输出,因为文件操作有耗时内存拷贝。如果用文件,也一定要把文件放在Linux的ramdisk上,不能使用sd等存放。


测试性能时,千万记住,不能使用软件复制Video数据,包括Gstreamer的tee插件。



案例

使用VBR优化图像质量
有项目反应图像质量与参考的视频有差距。拿到VCU编码的视频码流和参考视频码流后,使用ffprobe分析,得到每一帧的大小。发现VCU的视频码流的I帧小于150KByte,而参考视频码流的视频码流的I帧有400KByte。建议使用VBR。应用VBR后,图像质量明显改善。


解决I帧小导致的图像质量问题
有项目反应图像质量与参考的视频有差距。拿到VCU编码的视频码流和参考视频码流后,使用ffprobe分析,得到每一帧的大小。发现VCU的视频码流的I帧大约时是180KByte,而参考视频码流的视频码流的I帧有1000KByte。该项目使用VBR后,I帧图像也没有增大。检查VCU的配置,发现配置文件了有“MaxPictureSize = 1500”,相当于180KByte。建议客户设置“MaxPictureSize = 20000”,或者移除这一条后,图像质量明显改善。MaxPictureSize用于限制帧编码后的最大大小,目的是减少码率波动,会限制I帧的质量。


建议
分析VCU的问题时,请提供VCU的视频码流、参考视频码流、原始码流、配置文件。


关注我们

FPGA开发圈 这里介绍、交流、有关FPGA开发资料(文档下载,技术解答等),提升FPGA应用能力。
评论
  • 戴上XR眼镜去“追龙”是种什么体验?2024年11月30日,由上海自然博物馆(上海科技馆分馆)与三湘印象联合出品、三湘印象旗下观印象艺术发展有限公司(下简称“观印象”)承制的《又见恐龙》XR嘉年华在上海自然博物馆重磅开幕。该体验项目将于12月1日正式对公众开放,持续至2025年3月30日。双向奔赴,恐龙IP撞上元宇宙不久前,上海市经济和信息化委员会等部门联合印发了《上海市超高清视听产业发展行动方案》,特别提到“支持博物馆、主题乐园等场所推动超高清视听技术应用,丰富线下文旅消费体验”。作为上海自然
    电子与消费 2024-11-30 22:03 70浏览
  • 艾迈斯欧司朗全新“样片申请”小程序,逾160种LED、传感器、多芯片组合等产品样片一触即达。轻松3步完成申请,境内免费包邮到家!本期热荐性能显著提升的OSLON® Optimal,GF CSSRML.24ams OSRAM 基于最新芯片技术推出全新LED产品OSLON® Optimal系列,实现了显著的性能升级。该系列提供五种不同颜色的光源选项,包括Hyper Red(660 nm,PDN)、Red(640 nm)、Deep Blue(450 nm,PDN)、Far Red(730 nm)及Ho
    艾迈斯欧司朗 2024-11-29 16:55 155浏览
  • By Toradex胡珊逢简介嵌入式领域的部分应用对安全、可靠、实时性有切实的需求,在诸多实现该需求的方案中,QNX 是经行业验证的选择。在 QNX SDP 8.0 上 BlackBerry 推出了 QNX Everywhere 项目,个人用户可以出于非商业目的免费使用 QNX 操作系统。得益于 Toradex 和 QNX 的良好合作伙伴关系,用户能够在 Apalis iMX8QM 和 Verdin iMX8MP 模块上轻松测试和评估 QNX 8 系统。下面将基于 Apalis iMX8QM 介
    hai.qin_651820742 2024-11-29 15:29 150浏览
  • 国产光耦合器正以其创新性和多样性引领行业发展。凭借强大的研发能力,国内制造商推出了适应汽车、电信等领域独特需求的专业化光耦合器,为各行业的技术进步提供了重要支持。本文将重点探讨国产光耦合器的技术创新与产品多样性,以及它们在推动产业升级中的重要作用。国产光耦合器创新的作用满足现代需求的创新模式新设计正在满足不断变化的市场需求。例如,高速光耦合器满足了电信和数据处理系统中快速信号传输的需求。同时,栅极驱动光耦合器支持电动汽车(EV)和工业电机驱动器等大功率应用中的精确高效控制。先进材料和设计将碳化硅
    克里雅半导体科技 2024-11-29 16:18 157浏览
  • 《高速PCB设计经验规则应用实践》+PCB绘制学习与验证读书首先看目录,我感兴趣的是这一节;作者在书中列举了一条经典规则,然后进行详细分析,通过公式推导图表列举说明了传统的这一规则是受到电容加工特点影响的,在使用了MLCC陶瓷电容后这一条规则已经不再实用了。图书还列举了高速PCB设计需要的专业工具和仿真软件,当然由于篇幅所限,只是介绍了一点点设计步骤;我最感兴趣的部分还是元件布局的经验规则,在这里列举如下:在这里,演示一下,我根据书本知识进行电机驱动的布局:这也算知行合一吧。对于布局书中有一句:
    wuyu2009 2024-11-30 20:30 86浏览
  • RDDI-DAP错误通常与调试接口相关,特别是在使用CMSIS-DAP协议进行嵌入式系统开发时。以下是一些可能的原因和解决方法: 1. 硬件连接问题:     检查调试器(如ST-Link)与目标板之间的连接是否牢固。     确保所有必要的引脚都已正确连接,没有松动或短路。 2. 电源问题:     确保目标板和调试器都有足够的电源供应。     检查电源电压是否符合目标板的规格要求。 3. 固件问题: &n
    丙丁先生 2024-12-01 17:37 57浏览
  • 光耦合器作为关键技术组件,在确保安全性、可靠性和效率方面发挥着不可或缺的作用。无论是混合动力和电动汽车(HEV),还是军事和航空航天系统,它们都以卓越的性能支持高要求的应用环境,成为现代复杂系统中的隐形功臣。在迈向更环保技术和先进系统的过程中,光耦合器的重要性愈加凸显。1.混合动力和电动汽车中的光耦合器电池管理:保护动力源在电动汽车中,电池管理系统(BMS)是最佳充电、放电和性能监控背后的大脑。光耦合器在这里充当守门人,将高压电池组与敏感的低压电路隔离开来。这不仅可以防止潜在的损坏,还可以提高乘
    腾恩科技-彭工 2024-11-29 16:12 117浏览
  • 光伏逆变器是一种高效的能量转换设备,它能够将光伏太阳能板(PV)产生的不稳定的直流电压转换成与市电频率同步的交流电。这种转换后的电能不仅可以回馈至商用输电网络,还能供独立电网系统使用。光伏逆变器在商业光伏储能电站和家庭独立储能系统等应用领域中得到了广泛的应用。光耦合器,以其高速信号传输、出色的共模抑制比以及单向信号传输和光电隔离的特性,在光伏逆变器中扮演着至关重要的角色。它确保了系统的安全隔离、干扰的有效隔离以及通信信号的精准传输。光耦合器的使用不仅提高了系统的稳定性和安全性,而且由于其低功耗的
    晶台光耦 2024-12-02 10:40 54浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-30 14:30 63浏览
  • 在电子技术快速发展的今天,KLV15002光耦固态继电器以高性能和强可靠性完美解决行业需求。该光继电器旨在提供无与伦比的电气隔离和无缝切换,是现代系统的终极选择。无论是在电信、工业自动化还是测试环境中,KLV15002光耦合器固态继电器都完美融合了效率和耐用性,可满足当今苛刻的应用需求。为什么选择KLV15002光耦合器固态继电器?不妥协的电压隔离从本质上讲,KLV15002优先考虑安全性。输入到输出隔离达到3750Vrms(后缀为V的型号为5000Vrms),确保即使在高压情况下,敏感的低功耗
    克里雅半导体科技 2024-11-29 16:15 119浏览
  • 国产光耦合器因其在电子系统中的重要作用而受到认可,可提供可靠的电气隔离并保护敏感电路免受高压干扰。然而,随着行业向5G和高频数据传输等高速应用迈进,对其性能和寿命的担忧已成为焦点。本文深入探讨了国产光耦合器在高频环境中面临的挑战,并探索了克服这些限制的创新方法。高频性能:一个持续关注的问题信号传输中的挑战国产光耦合器传统上利用LED和光电晶体管进行信号隔离。虽然这些组件对于标准应用有效,但在高频下面临挑战。随着工作频率的增加,信号延迟和数据保真度降低很常见,限制了它们在电信和高速计算等领域的有效
    腾恩科技-彭工 2024-11-29 16:11 106浏览
  • 在现代科技浪潮中,精准定位技术已成为推动众多关键领域前进的核心力量。虹科PCAN-GPS FD 作为一款多功能可编程传感器模块,专为精确捕捉位置和方向而设计。该模块集成了先进的卫星接收器、磁场传感器、加速计和陀螺仪,能够通过 CAN/CAN FD 总线实时传输采样数据,并具备内部存储卡记录功能。本篇文章带你深入虹科PCAN-GPS FD的技术亮点、多场景应用实例,并展示其如何与PCAN-Explorer6软件结合,实现数据解析与可视化。虹科PCAN-GPS FD虹科PCAN-GPS FD的数据处
    虹科汽车智能互联 2024-11-29 14:35 149浏览
  • 随着航空航天技术的迅猛发展,航空电子网络面临着诸多挑战,如多网络并行传输、高带宽需求以及保障数据传输的确定性等。为应对这些挑战,航空电子网络急需一个通用的网络架构,满足布线简单、供应商多、组网成本相对较低等要求。而以太网技术,特别是TSN(时间敏感网络)的出现,为航空电子网络带来了新的解决方案。本文将重点介绍TSN流识别技术在航空电子网络中的应用,以及如何通过适应航空电子网络的TSN流识别技术实现高效的航空电子网络传输。一、航空电子网络面临的挑战航空航天业专用协议包括AFDX、ARINC等,这些
    虹科工业智能互联 2024-11-29 14:18 100浏览
  • 最近几年,新能源汽车愈发受到消费者的青睐,其销量也是一路走高。据中汽协公布的数据显示,2024年10月,新能源汽车产销分别完成146.3万辆和143万辆,同比分别增长48%和49.6%。而结合各家新能源车企所公布的销量数据来看,比亚迪再度夺得了销冠宝座,其10月新能源汽车销量达到了502657辆,同比增长66.53%。众所周知,比亚迪是新能源汽车领域的重要参与者,其一举一动向来为外界所关注。日前,比亚迪汽车旗下品牌方程豹汽车推出了新车方程豹豹8,该款车型一上市就迅速吸引了消费者的目光,成为SUV
    刘旷 2024-12-02 09:32 59浏览
  • 学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习笔记&记录学习习笔记&记学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&学习学习笔记&记录学习学习笔记&记录学习学习笔记&记录学习学习笔记&
    youyeye 2024-11-29 14:30 118浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦