yangjiaxu

  • 2025-03-01
  • 回复了主题帖: 二月二,龙抬头,金银财宝向家流

    好哦,一起扶摇直上,幸福美满

  • 回复了主题帖: 关于小喇叭的2线转4线

    这也看不出来啊,你看看多余的2根线接喇叭上了吗?也可能是作为电脑检测喇叭设备在不在的功能存在哦

  • 2025-02-25
  • 回复了主题帖: 《开关电源仿真与设计》-心得4-基本功能块和通用开关模型的理解

    防御符 发表于 2025-2-25 11:45 用的应该是 https://nifei0.github.io/circuitjs1/  猜的很对,就是用的这种在线仿真软件

  • 2025-02-24
  • 发表了主题帖: 《开关电源仿真与设计》-心得4-基本功能块和通用开关模型的理解

    本帖最后由 yangjiaxu 于 2025-2-24 22:42 编辑 《开关电源仿真与设计--基于SPICE(第2版修订版)》的第四章主要讲解的是SPICE的基本功能块和通用开关模型,其基本功能块和通用开关模型的理解与应用是理解和设计电路仿真的关键部分。关于基本功能块主要是包含:电阻、电容、电感、二极管、晶体管、运放、电流源、受控源(包括电压控制电压源(VCVS)、电流控制电流源(CCCS)、电压控制电流源(VCCS)和电流控制电压源(CCVS))等,除此之外还有一些自己自定义的模型。关于通用开关模型来说,SPICE中的开关模型用于模拟理想开关的行为,通常用于模拟开关电路或数字电路中的开关行为。这种开关是一种高度非线性的元件,其状态(开或关)取决于控制电压或电流的大小。同时关于通用开关模型通常包括以下几个关键参数: 阈值电压(VT):当控制电压达到此值时,开关状态发生变化(从关到开或从开到关)。 开态电阻(RON):开关处于开启状态时,其两端的电阻值。 关态电阻(ROFF):开关处于关闭状态时,其两端的电阻值。通常,ROFF远大于RON,以确保开关在关闭时能够有效地隔离电路。 滞后电压(VH)和滞后电流(IH):这些参数用于描述开关在状态转换过程中的滞后效应。滞后效应是指开关在从一个状态转换到另一个状态时,控制电压或电流需要超过或低于阈值一定量才能触发状态转换。 通过基本功能块和开关模型完全可以模拟一些关于实际电路上遇到的问题,比如4.7章分享的是“前沿消隐”前沿消隐是一种在开关电源中常用的技术,主要用于消除或抑制开关管(如MOSFET)在开启瞬间产生的噪声或干扰。这种噪声通常是由于开关管的快速开关动作引起的,可能会影响电路的正常工作,尤其是对电流检测电路的干扰。书中提出的一种方法就是给延迟线子电路提供给定的传输时间。 其实实际应用上,可以增加电容和电阻也就是所谓的RC电路来实现前沿消隐,用来解决开关管或者输入的电源产生的噪声/干扰。通过修改电容/电阻的值可以很好的实现噪声和干扰过滤。如下图所示: 仿真出来的延迟状态: 我通过在线版本的仿真软件,将电容和电阻数值放大(由于在线仿真没有那么精确,所以放大之后看到的效果会更好)可以看出,电容10uF,电阻1R时,具有一定的延迟上电的效果,其延迟上电是因为需要给电容充电,导致的延迟状态。 总结:至此,关于第四章SPICE的基本功能块和通用开关模型就理解的差不多了,并且通过在线仿真软件模拟了关于延迟状态的现象,第四章大致就针对于SPICE的每种模块进行了大致讲解,方便用户如何使用,确实很不错,不过如果这个模块要是放在前两章是不是会更好一些?但作者的设计一定有他的道理,非常实用的一本技能书籍,我等继续学习吧~

  • 2025-02-21
  • 回复了主题帖: 《开关电源仿真与设计》-心得3-电源的波特图理解与仿真心得

    Jacktang 发表于 2025-2-21 07:35 TPS54360DDAR芯片,官方建议后续可以使用TPS54360B芯片,现在的TPS54360B芯片也好买了 对的,官网是这么介绍的,其实TI的电源芯片确实牛,配套之类的,支持太全面太完善了

  • 2025-02-20
  • 发表了主题帖: 《开关电源仿真与设计》-心得3-电源的波特图理解与仿真心得

    本帖最后由 yangjiaxu 于 2025-2-20 17:15 编辑 《开关电源仿真与设计--基于SPICE(第2版修订版)》的第三章主要讲解的是反馈和控制环,正常来说,反馈就是指通过测量电源的输出电压或电流,并将其与预设的参考值进行比较,从而调整电源的工作状态以确保输出电压或电流的稳定。反馈机制是闭环控制系统的基础,它使电源能够适应负载变化、输入电压波动等外部扰动,保持稳定的输出。 而电源的控制环是指根据反馈信号调整电源工作状态的控制逻辑和电路。它通常包括误差放大器、比较器、PWM控制器等组成部分。 1、误差放大器:其负责将反馈信号与参考信号进行比较并放大误差信号。在电压控制模式中,误差放大器的输出信号直接用于调整PWM控制器的占空比;在电流控制模式中,误差放大器的输出信号可能与电流采样信号一起用于调整PWM控制器的占空比。 2、比较器:在PWM控制器中,比较器负责将误差放大器的输出信号(或误差放大器与电流采样信号的组合)与锯齿波或三角波信号进行比较。当误差放大器的输出信号达到或超过锯齿波/三角波信号的某个阈值时,比较器输出高电平或低电平信号,用于控制开关管的导通或截止。 3、PWM控制器:PWM控制器根据比较器的输出信号生成具有特定占空比的PWM信号,用于控制开关管的导通和截止时间。通过调整PWM信号的占空比,可以改变电源的输出电压或电流。 由于我做嵌入式电路设计比较多,用的电源一般均为DC-DC方案,所以本次继续拿DC-DC方案来与大家分享,本次采用的芯片为TI的TPS54360DDAR芯片,官方建议后续可以使用TPS54360B芯片,听说完全兼容,但性能更优。 本次依旧是使用TI的在线仿真工具“WEBENCH POWER DESIGNER”打开后我们需要进行芯片选择和电路设计。本次采用宽电压供电设计,输入最低11V,最高为26V,输出为3.3V2A 输入好自己需求之后,再进行下一步,用来生成SCH原理图,该原理图仅为电源芯片最小电路,如果需要保护之类的产品电路需要增加一些自己的电路设计,比如防反接电路,防浪涌电路以及指示灯与降低纹波等的元件与电路。 比如,在输入前端增加防反接电路,防反接可以使用MOS或者二极管的方式实现,在输入端建议再增加一个薄膜电容,用来处理高频干扰,在后端建议增加一个1uF的薄膜电容。同时需要根据实际情况,应当调节电容的参数,从而保证电源的稳定可靠性。 本次仿真输出的依旧是波特图, 从仿真结果来看,低频增益为64.92dB,交叉频率为38kHz,相位裕度为59.35 Deg。 在书中叙述说,建议相位裕度最小为45°,作为一个可靠的设计,其相位裕度应为70-90°,这样可以提供良好的稳定性和快速无振铃瞬态响应。 从结果与书籍中的建议来看,低频增益较好,稳态误差小:不会发生振荡情况。同时建议电路仿真就是仿真,属于理论基础,在理论的基础上设计的电路会事半功倍,最后,参考官方推荐的电路布局与电路走线,这样会更好的设计出比较适合作为产品的稳定电路。

  • 2025-02-17
  • 回复了主题帖: 你参加哪吒2的百亿项目了吗?

    你家娃画的真好看,有天赋啊。感觉哪吒2这里洗白了申公豹,把无量仙翁染黑是比较大胆的决定吧,就像剧里说的“人心中的成见是一座大山,任你怎么努力都休想搬动”确实震撼到了我。

  • 2025-02-15
  • 发表了主题帖: 《开关电源仿真与设计》-心得2-电源的小信号建模

    本帖最后由 yangjiaxu 于 2025-2-15 16:39 编辑 《开关电源仿真与设计--基于SPICE(第2版修订版)》的第二章主要讲解的是小信号建模,所谓电源中的小信号建模是一种用于分析电源系统在小扰动下动态响应的方法。具体来说,它通过线性化处理,将非线性系统在某个工作点附近近似为线性系统,以便使用线性系统理论进行分析和设计。 电源中的小信号建模主要包括以下几种模型: 状态空间平均模型 传递函数模型 等效电路模型 频域模型 小信号扰动模型 开关网络模型 阻抗模型 作者在这里主要玩耍了一下“状态空间平均模型” 其实状态空间平均模型是开关电源建模中一种强大且通用的工具,特别适用于 DC-DC变换器 和 AC-DC变换器 的分析与设计。它的主要优点在于精确性和通用性,但也存在高频特性不足和线性化限制等缺点。在实际应用中,通常需要结合其他模型(如开关网络模型或频域模型)来弥补其局限性。不过,对于我这种应用选手来说,确实有些难了,现在的DCDC电路基本上就是拿来参考就用,顶多是调调阻容和电感的大小和尺寸,布局方式等等,一般使用模型分析的确实还是较少。 接下来作者又讲述关于PWM开关模式,这个是DCDC常用的一种电源变换器的一种方法,比如我经常使用的TI的TPS5430就是一种高输出电流PWM转换器,其集成了低电阻、高侧N沟道MOSFET,还包括高性能电压误差放大器(可在瞬态条件下提供高稳压精度)、欠压锁定电路(用于防止在输入电压达到 5.5V 前启动)、内部设置的慢启动电路用于限制浪涌电流)以及电压前馈电路(用于改进瞬态响应)。通过使用 ENA 引脚,关断电源电流通常可减少到15μA。其他特性包括高电平有效使能端、过流限制、过压保护和热关断。为降低设计复杂性并减少外部元件数量,对TPS5430反馈环路进行内部补偿。 接下来和大家分享一下关于TPS5430的电源电路与仿真解析。下图为TPS5430的电路设计,采用DC12V输入,输出要求为5V/3A,采用异步整流模式,电路如下: 电路设计较为简单,输入用一个电容22uF的电容,但是实际电路上基本是采用铝电解电容效果会好一些,并且会并联一个0.1uF的薄膜电容。再输出端采用PWM开关模式,电感采用15uH的功率电感,其功能是整流功能,采用D1肖特基二极管作为续流功能,输出boot串联一个10nF的电容作为滤波,采用Rfbt和Rfbb作为电压调节功能存在。最后在负载前端并联一个铝电解电容其参数建议为330uF,耐压值建议为输出电压的2倍以上。接下来是仿真图,如下所示: 由于不习惯使用SPICE软件,所以本次仿真才用的是TI的WEBENCH POWER DESIGNER在线设计工具,TI是提供了关于SPICE模型的,所以有好奇的话,可以自行下载。本次仿真输出的是波特图,波特图(Bode Plot)是一种用于分析线性时不变系统频率响应的图形工具,广泛应用于控制工程、电子电路和信号处理等领域。它通过绘制系统的幅频特性和相频特性,直观地展示系统对不同频率信号的响应。 从仿真结果来看,低频增益为63.25dB,交叉频率为12.62 kHz,相位裕度为59.94 Deg。从结果来看,低频增益较好,稳态误差小:高增益减少输出电压与目标值的偏差。动态响应快:快速应对负载突变和输入电压变化。稳定性强:在满足带宽需求的同时保证系统稳定。其相位裕度能够达到大于45°系统可以很快进入到稳定状态。最后分享一下关于该电源的PCB布局参考。 总的来说,电源提前仿真会很容易了解这颗电源的优缺点,并知道如何调整,在电路设计的时候会有很好的辅助意义。

  • 2025-02-14
  • 回复了主题帖: 《开关电源仿真与设计》-心得1-电源简介

    秦天qintian0303 发表于 2025-2-14 11:21 这本书的配合着仿真软件来,相当不错的工具书 确实书籍不错,而且还需要本身有一些关于SPICE软件使用经验才行,书籍中没有将软件使用列入,默认读者是已经会用SPICE的这项技能的了

  • 2025-02-13
  • 发表了主题帖: 《开关电源仿真与设计》-心得1-电源简介

    本帖最后由 yangjiaxu 于 2025-2-13 16:22 编辑 年前收到这本《开关电源仿真与设计--基于SPICE(第2版修订版)》,但是由于收到的时间太晚了,就没读多少,最近眼瞅着要“交作业”了,一定要抓紧的阅读起来,其实电源我还是有点了解的,因为我是做嵌入式设计的嘛,其中嵌入式硬件很多都是需要电源来做能量供给和支撑的嘛,所以我对电源设计是有些自己的了解和见解的。 记得最初我在设计电路的时候,师傅就教我说电路设计要注意区分电源线和信号线,电源线尽量要粗一些,保证电流能正常通过,信号线要规避容易引发干扰的地方,比如晶振、电感、强磁强电的地方,尽量用地线包围一下,来做信号屏蔽。 后来,自己可以独立的做电路设计,就了解了一些电源的走线的需求,比如电感要根据不同的封装要做不一样的布局(这里均按2层电路设计说),比如非全屏蔽电感可以在附近的一层挖空,下面一层可以完全铺地,这样一方面屏蔽电磁波,另一方面维持电源地的完整性,挖空的铜箔必须有开口,不能形成回路,以免成为天线这么做的原因是影响EMC的问题比较小;如果一体成型电感,一般就上下两层均铺铜即可,但这里注意无论是什么电感,下方都不可以走信号线,电源线也是需要走较粗的电源线才行。 再后来就是可以很游刃有余的去做电路设计了,虽然电路设计基本一版就成,就算是比较复杂基本也就是两版/三版就可以了,而且可以很稳定可靠的工作,虽然每次做EMC的时候也能学到一些,但不如通过前辈教授经验来的快。其实“学无止境”不是一句空话,到现在我也认为是这样的,因此申请这本书也是有我的私心的,希望能让自己的电源部分的设计技能可以提升一些。 拿到《开关电源仿真与设计--基于SPICE(第2版修订版)》这本书呢,第一章算是科普,其目录如下:         第一章电源变换器介绍          1.1 电路真的需要仿真吗          1.2 本书讨论的内容          1.3 本书不讨论的内容          1.4 用电阻变换电源          1.5 用开关变换功率          1.6 占空比因子          1.7 降压变换器          1.8 升压变换器          1.9 降压升压变换器          1.10 输入滤波          1.11 小结          附录1A RLC传输函数          附录1B 电容等效模型          附录1C 电源按拓扑的分类          附录1D CCM和DCM开关波形的均方根值  其主要讲了电路需要仿真,虽然仿真有些时候和实际不符合,但是有条件的话也一定要仿真,仿真可以知道电路哪里可能有缺陷,哪里会有问题,再配合实际的电路设计就可以很快的“对症下药”。下来就是讲电源的转换,用电阻实现的分压啊,还有一些升降压的基础工作原理介绍,这种基本就是适用于新手入门来了解的,我平时使用时也会经常遇到,比如一般就会使用LDO实现电源的降压和稳压,主要是提供给一些需要稳定电源的一些精密器件,比如运放、MCU、ADC等等,比较常用的如AMS1117,LM7805这种;DCDC主要实现直流电源的升降压功能,一般都是使用DCDC降压功能,主要是降压居多,因为降压比升降压和升压的价格都要合适合理,而且工作效率也比较高。比如通用的LM2596、LM317这种。 这本书通篇我大致看了看,其实我觉得电源比较重要的EMC和EMI部分作者却没有过多的分享,其实电源尤其是开关电源的设计,过EMC这种检测大致是必然的,但是如果经验少或者电路设计的不好很容易过不去,所以如果要是分享一些关于过检测的经验在本书里面应该是极好的。希望能拜读到作者这方面的著作。 最后,第一章节的心得就分享到这里,总的来说,电源的设计在于项目的需求,电源的架构选择也是依据客户/项目的要求来设计,但是要注意的是,电源不仅仅是了解书本的知识就可以,实际上电源的架构选择和电路设计与电路布局与走线等,息息相关,必须全都理解与擅长,才有可能做出一款比较好的电源流入市场的

  • 2025-01-19
  • 回复了主题帖: 【测评入围名单(最后1批)】年终回炉:FPGA、AI、高性能MCU、书籍等65个测品邀你来~

    个人信息无误,确认可以完成测评计划

  • 2025-01-17
  • 回复了主题帖: 【新年新挑战,任务打卡赢好礼!】第一批获奖名单公布

    已确认

  • 2025-01-15
  • 回复了主题帖: 新年新挑战,任务打卡赢好礼!

    参加参加 更新资料   回帖*3   认真学完1个大学堂视频   报名参加活动中心的1个活动   下载一份资源站资料  

  • 加入了学习《IoT物联网项目基础知识和工具介绍培训教程》,观看 IoT物联网项目基础知识和工具介绍培训教程

  • 回复了主题帖: 【STM32H7S78-DK测评】3.转轮动效菜单的实现

    TGFX真的是高端,但是比较占用内存,和芯片资源,不过还不错,至少画面是好看

  • 回复了主题帖: 【KW41Z开发板测评】①开箱及搭建环境并点灯

    这个板子不错的,而且开发起来还不是很麻烦,而且这个thread真的是非常不错的

  • 回复了主题帖: 这个电源中78L05的上面电阻是什么作用?

    没这么设计过,感觉可以去掉之后应该也可以正常工作,不过这种设计应该是可以分担7805的热功耗吧

  • 2024-10-16
  • 发表了主题帖: 【匠芯创D133CBS】LVGL的应用 2

    上一篇做的UI虽然算是LVGL的应用,但是由于SRAM_S0溢出报错,并且不会配置到PSRAM导致用一个比较笨的方式来展现了匠芯创D133CBS开发板的显示功能,但是根本体现不了其强悍,而且也是我的一种遗憾,后来请教坛友@dirty,有幸得其指导,非常顺利的将PSRAM配置成功,并且做了最后的完善。本篇就来细说一下如何配置PSRAM与智慧餐厅的大致效果。 首先介绍PSRAM如何配置:如图1所示。进入到该界面都将其改成PSRAM即可。 图1 匠芯创D133CBS芯片配置PSRAM 图2 匠芯创D133CBS芯片配置后的界面 如果将上面都配置好之后,再进行编译,基本上就不会出现报错了。 接下来展示一下我添加的功能,基本上智慧餐厅的显示屏上基本上就是显示菜品,价格和支付的二维码,我就简单的使用了GUI-guider进行了界面搭建,主要使用的控件有label,image和qrcode这三种控件,使用GUI-guider是比较简单且方便的可以搭建大致的界面,但是在应用QRcode方面和图片方面是需要自己手动的添加一些代码和修改一些命名,否则是编译报错的。比如在QRcode方面,因为我们生成的C代码是没有包含QRcode部分代码的,所以需要自己手动添加。该库是我从这里克隆而来,如果大家有需要,可以复制过去,进行克隆即可:git clone https://github.com/littlevgl/lv_lib_qrcode.git /** * [url=home.php?mod=space&uid=1307177]@File[/url] lv_qrcode.c * */ /********************* * INCLUDES *********************/ #include "lv_qrcode.h" #include "qrcodegen.h" /********************* * DEFINES *********************/ #define QR_SIZE 140 /********************** * TYPEDEFS **********************/ /********************** * STATIC PROTOTYPES **********************/ /********************** * STATIC VARIABLES **********************/ /********************** * MACROS **********************/ /********************** * GLOBAL FUNCTIONS **********************/ /** * Create an empty QR code (an `lv_canvas`) object. * @param parent point to an object where to create the QR code * @param size width and height of the QR code * @param dark_color dark color of the QR code * @param light_color light color of the QR code * [url=home.php?mod=space&uid=784970]@return[/url] pointer to the created QR code object */ lv_obj_t * lv_qrcode_create(lv_obj_t * parent, lv_coord_t size, lv_color_t dark_color, lv_color_t light_color) { uint32_t buf_size = LV_CANVAS_BUF_SIZE_INDEXED_1BIT(size, size); uint8_t * buf = lv_mem_alloc(buf_size); LV_ASSERT_MALLOC(buf); if(buf == NULL) return NULL; lv_obj_t * canvas = lv_canvas_create(parent); if(canvas == NULL) return NULL; lv_canvas_set_buffer(canvas, buf, size, size, LV_IMG_CF_INDEXED_1BIT); lv_canvas_set_palette(canvas, 0, dark_color); lv_canvas_set_palette(canvas, 1, light_color); return canvas; } /** * Set the data of a QR code object * @param qrcode pointer to aQ code object * @param data data to display * @param data_len length of data in bytes * @return LV_RES_OK: if no error; LV_RES_INV: on error */ lv_res_t lv_qrcode_update(lv_obj_t * qrcode, const void * data, uint32_t data_len) { lv_color_t c; c.full = 1; lv_canvas_fill_bg(qrcode, c, LV_OPA_COVER); if(data_len > qrcodegen_BUFFER_LEN_MAX) return LV_RES_INV; uint8_t qr0[qrcodegen_BUFFER_LEN_MAX]; uint8_t data_tmp[qrcodegen_BUFFER_LEN_MAX]; memcpy(data_tmp, data, data_len); bool ok = qrcodegen_encodeBinary(data_tmp, data_len, qr0, qrcodegen_Ecc_MEDIUM, qrcodegen_VERSION_MIN, qrcodegen_VERSION_MAX, qrcodegen_Mask_AUTO, true); if (!ok) return LV_RES_INV; lv_img_dsc_t * imgdsc = lv_canvas_get_img(qrcode); lv_coord_t obj_w = imgdsc->header.w; int qr_size = qrcodegen_getSize(qr0); int scale = obj_w / qr_size; int scaled = qr_size * scale; int margin = (obj_w - scaled) / 2; uint8_t * buf_u8 = (uint8_t *)imgdsc->data + 8; /*+8 skip the palette*/ /* Copy the qr code canvas: * A simple `lv_canvas_set_px` would work but it's slow for so many pixels. * So buffer 1 byte (8 px) from the qr code and set it in the canvas image */ uint32_t row_byte_cnt = (imgdsc->header.w + 7) >> 3; int y; for (y = margin; y < scaled + margin; y+=scale) { uint8_t b = 0; uint8_t p = 0; bool aligned = false; int x; for (x = margin; x < scaled + margin; x++) { bool a = qrcodegen_getModule(qr0, (x - margin) / scale, (y - margin) / scale); if(aligned == false && (x & 0x7) == 0) aligned = true; if(aligned == false) { c.full = a ? 0 : 1; lv_canvas_set_px(qrcode, x, y, c); } else { if(!a) b |= (1 << (7 - p)); p++; if(p == 8) { uint32_t px = row_byte_cnt * y + (x >> 3); buf_u8[px] = b; b = 0; p = 0; } } } /*Process the last byte of the row*/ if(p) { /*Make the rest of the bits white*/ b |= (1 << (8 - p)) - 1; uint32_t px = row_byte_cnt * y + (x >> 3); buf_u8[px] = b; } /*The Qr is probably scaled so simply to the repeated rows*/ int s; const uint8_t * row_ori = buf_u8 + row_byte_cnt * y; for(s = 1; s < scale; s++) { memcpy((uint8_t*)buf_u8 + row_byte_cnt * (y + s), row_ori, row_byte_cnt); } } return LV_RES_OK; } /** * Delete a QR code object * @param qrcode pointer to a QR code obejct */ void lv_qrcode_delete(lv_obj_t * qrcode) { lv_img_dsc_t * img = lv_canvas_get_img(qrcode); lv_img_cache_invalidate_src(img); lv_mem_free(img->data); lv_obj_del(qrcode); } /********************** * STATIC FUNCTIONS **********************/   图3 添加qrcode库 代码添加完成之后,在进行头文件的包含,正常来说QRcode就可以正常使用了。接下来说说图片image,在图片方面,首先编译会出现报错,提示路径不对,也就是说我们需要的是图片读取方式替换,并且将图片的路径进行替换,这样才可以,而且由于没有包含关于LVGL_PATH的头文件,这里需要注意添加对应的头文件才可以lv_img_set_src(ui->screen_img_1, LVGL_PATH(import/image/bg.png));这里的路径要根据你想要显示的图片的路径来哦,我这个是关于我自己的路径,因此,要想用的话需要自己改到自己的图片路径才可以,至此,关于代码部分就已经大致搞完了。接下来就是展示~ 图4 GUI Guider绘制的大致界面 图4 实际显示界面  

  • 2024-10-15
  • 回复了主题帖: 【匠芯创D133CBS】--6.LVGL界面移植

    dirty 发表于 2024-10-15 11:42   强,搞定了,感谢大佬,哈哈,解惑了

  • 回复了主题帖: 【匠芯创D133CBS】--6.LVGL界面移植

    dirty 发表于 2024-10-14 19:43 都选psram,配置命令里可以找到 你好,大佬,我昨晚试了一下在meconfig中没找到,能大致说说me配置,关于PSRAM路径吗?还是因为工程的不一样导致的?我用的是官方例程11.d13x demo88-nor rt-thread helloworld

统计信息

已有250人来访过

  • 芯积分:117
  • 好友:3
  • 主题:51
  • 回复:252

留言

你需要登录后才可以留言 登录 | 注册


现在还没有留言