【技术】IoT工程师必备干货:为你的设计选择正确的软件架构
摘要:在本文中,我们将讨论你在为微控制器或无线微控制器项目选择一套优秀的软件时,所需要考虑的各种要素。
为你的设计选择正确的软件架构
我们都曾在职业生涯的某个时间点思考过这个问题:你已经把一个想法仔细思考过一阵子,逐渐得出可行的结论,现在,你想要创建一个合适的项目,看是要更进一步探索这个想法或是将其产品化。但是,应该从哪种软件架构入手呢?Espruino?Arduino?micro Python?Segger embOS?MicriumuC/OS-II?以及在uC/OS-II和uC/OS-III之间又有什么区别呢?究竟该采用初始成本较低的开源架构,还是选择需要支付前期费用的商业解决方案,来加速你的设计过程呢?
什么是软件架构?
在本文件中,将“软件构架”解释为“编写软件的一种特定方式”。例如,Arduino提供编写程序代码的一种特定方式,允许软件的片段可以跨越多个项目被重新使用。
软件架构是由几个不同的部分所组成,并由以下组件所定义:程序语言、应用程序编程接口(API),以及某些工具集的连接。例如,像是在Arduino和Espruino的案例中,软件架构可以被紧密地连接到工具,或是像在Micrium和FreeRTOS的案例中则是会被分离。
什么是操作系统?
因此,该如何选择一个软件架构呢?首先,我们需要对一些名词解释的更明确一点,我们已经开始提到操作系统(OS)这个名词。你真正需要写的是可以执行你的特定要求的程序代码,这些程序代码将可以把你的产品与其他产品区分出来。但是,你仍然需要依靠软件的其他部分,像是ADC的驱动程序或SD卡的文件系统栈。这些软件的部分通常被称为软件构件。
在此用一个比较实质的比喻方式,你可以想象你的软件构件就像是砖块,然后把操作系统视为水泥。在操作系统中定义了砖块的形状,以及它们将如何与其他的砖块互动,因此当你添加更多构件到软件之中时,他们将可以继续完美地协同工作。这听起来相当不错,但你真的需要一个操作系统吗?增加操作系统也带来了额外的负荷,它将会消耗数千字节的闪存,为事件的响应增加了延迟的时间,并且还需要花费些许的时间学习如何在操作系统环境中编写程序。
决定采用哪个软件架构,将会决定你的想法是否可以按时间、按预算地推动,或是将你的投资放在风险之中。
一般的经验法则是,如果你的目标闪存容量是128 KB或更高,并且或是需要通讯功能,便需要一些栈(USB、以太网络、SDIO、CAN、Wi-Fi、BLE),长期来看,你最好还是使用操作系统。
在操作系统中最重要的其中一件事情便是调度程序(scheduler)。调度程序是用在为可能会争夺相同资源的不同任务、分配资源和处理时间的组件。在一般情况下,调度程序有两种作业的方式,而这正是“实时”在实时操作系统(RTOS)的意义所在。实时意味着在一个特定的时间内,会有一个特定的任务将会被执行。假设你得到一个你需要处理的射频封包,无论你的设备目前正在做什么事,实时操作系统的核心会先离开它目前所做的任务,先完成这一个高优先等级的任务。这种类型的行为在处理器的利用上并不是最有效率的方式,但例如在马达控制应用中,它在通讯栈与应用中最需要重视的便是反应时间的议题。
商用与开源解决方案的比较
举例来说,如果你已经想通了是否需要采用实时操作系统,并开始组建软件需求。你可能知道,你需要一个USB栈和以太网络栈,搭配外部MAC/PHY驱动程序来一起将设备连接到互联网。但是,你该从哪里开始呢?你真的只需要为你首选的微控制器下载最新的FreeRTOS模板,并继续下载开源软件并放到装置中就可以了吗?或者你只是需要去找有你所需软件的商业供货商,并获得完整的软件组合?
为了做出更明智的决定,我们经常谈论要给选定的解决方案一个总体拥有成本(TCO)的概念。所谓的总体拥有成本包含的不仅是你为软件付出的货币价值,还包括花费在寻找解决方案、组装不同的构件,并将不同的构件整合到你的项目,以及开发、测试和生产的工作时间。
在一般情况下,我们看到的是商业解决方案的总体拥有成本(TCO),将比自己组建开放原始码组件的解决方案要来的更低一些。但既然是商业解决方案便涉及到初始成本,这些厂商通常要求在使用解决方案的前期,取决于你所需要的组件,便必须先支付1万到10万美元之间的费用。在另一方面,下载FreeRTOS并开始组装自己的解决方案,在某些拥有密集资源的应用中,其所花费的金钱,相对会更便宜一些。
决定你的项目的最佳解决方案,将高度依赖于它是否是最容易让你赚到现金,或是能够为总体拥有成本的工时来“买单”。
候选方案
所以,当你已经看到这里,你的大脑中可能已经开始吶喊:“只要给我一个可以让我开始使用的架构就好了!”
可惜没有那么快,肯定有一些方案的选项是比其他选项更好,微控制器的应用非常多样性,肯定没有那种一个尺寸便适合所有需求的解决方案。我们先来了解许多最流行的操作系统和软件架构,并分别仔细地讨论(本文所提到的操作系统都具有实时能力):
1)商用解决方案
• Micrium uC/OS-II与uC/OS-III
这是在微控制器业界最流行的两个实时操作系统,特别是因为其创新的商业模式,因为Micrium公司允许你下载完整的软件套件,并开始发展,等你真正开始产生营收后,才需要开始支付解决方案的费用。他们在安全至上的系统中拥有重要的地位,并且他们的大部分软件构件都已经通过认证。
• Segger embOS
嵌入式软件市场的新进入者,但这并不意味着他们是新手。该软件产品已经开发了超过20年的时间,并已经使用在他们自己的硬件产品之中,因此对装置的支持程度非常好,并配有一个优秀的驱动程序库。
• Express Logic ThreadX
由行业的资深人士所创办,该公司专注在所有关于性能的事物上,并挤压出元器件中每一个时钟周期的效能。它通常被看作是操作系统中的劳斯莱斯,并已经有很多认证被使用在安全至上的系统之中。
2)开源解决方案
• FreeRTOS
FreeRTOS跟MicriumuC/OS一样,都是在同行业中最常被采用的实时操作系统之一。它有一个庞大的社群,有很多人都在为软件做出贡献,像是TCP/IP栈,但做为开源软件,便意味着没有公司会负责整合,因此需要更多的工作来创建一个整合的解决方案。
也有一些公司在FreeRTOS的生态系统中,专门从事将差异化的软件构件提供给那些需要整合协助的客户,例如,Wittenstein高完整性系统公司提供称为SAFERTOS安全认证的FreeRTOS替换核心,以及HCC嵌入式公司提供可以与任何实时操作系统工作的USB、以太网络和文件系统。
• mbed OS
mbed OS解决一些你通常会在开源软件所遇到的痛点,因为ARM这一家公司会负责整合的工作。然而,它仍然是处于萌芽阶段,所以如果你想要有些贡献就可以去这里。
• RIOT OS
RIOT OS被冠以“物联网中最友好的操作系统”,它是以通讯概念为基础所建立起来的操作系统。这使得它即使在面对困难的通讯问题时,仍然精简且高效率。然而它仍然还在积极发展的阶段当中,所以你得计划多花几个小时来进行除错。
3)架构
有一些操作系统的功能就像是将砖块黏合在一起的水泥一样,会与发展框架紧密地结合在一起,因此一般不能使用软件本身做为项目的一部分,你必须围绕着它来进行整个开发流程。这些框架往往是使用比C++更高阶的语言所编写,通常可以在实时操作系统上运行。
• mbed
mbed也出现在这里,这时则做为快速成型的项目。它是用C++编写,并对大多数微控制器和电路板有绝佳的支持,拥有一个庞大的元件程序库,和一个采用网页架构的漂亮集成开发环境(IDE)。目前,在它准备全面部署之前,它仍然需要一点成熟的时间,但它很适合硬件原型的开发。
• Espruino
Espruino是在微控制器上运行的实时JavaScript解释器。它允许你能够动态地更改程序代码,甚至不需要读写微控制器便可以撰写程序代码。在它开始量产之前,仍然需要一些时间来发展,但它很适合用于硬件原型,并呈现出成为一个不可忽视软件架构的巨大潜力。
• microPython
microPython所能做的事与Espruino大致相同,差别仅在于其使用Python来代替JavaScript。它发展的概念,便是让你从产品开发的一开始到量产,都能够支持预先编译的程序代码,并使用C语言来编写时序至上的程序代码。目前仍在开发当中。
• microEJ
microEJ是一个采用Java架构的框架,让你轻松地为你的设备打造好看的图形化应用程序。它已经在许多智能手表和一些物联网(IoT)设备中使用。
结语
如果你想要着手进行设备的开发,而无需安装单一的程序,像是mbed和microPython这类的框架,便是入门的好方法。但是,如果你要建立更大的部署,采用一个纯粹的实时操作系统将会是更好的选择。如果使用工作时间而不是金钱来当作软件的投资,对你的公司来说会更为轻松的话,像是FreeRTOS或RIOT这类非商业解决方案便有其优势。如果你的公司能负担得起前期投资,像是Segger、Express Logic和Micrium的商业解决方案,将大大降低软件开发风险和缩短产品上市的时间。在商业解决方案中,特别像是Micrium的稳定性和认证的程序代码基础,广泛普及的部署,良好的元器件支持,开放的原始码,以及适合大多数经济效益的商业模式,更使其在商业解决方案中显得特别突出。
- |
- +1 赞 0
- 收藏
- 评论 4
本网站所有内容禁止转载,否则追究法律责任!
评论
全部评论(4)
-
守猪待兔 Lv7. 资深专家 2018-09-07好东西
-
Ranger Lv8. 研究员 2018-08-29不错
-
皇甫の殇 Lv4. 资深工程师 2018-02-26nbiot
-
hozamon Lv6. 高级专家 2017-12-21正在研究IoT
相关推荐
秒懂无线IoT传感器设计的五大关键
随着无线收发器和创新传感器在物联网技术的普及,家居设计人员面临着外观小巧,电池耐电等挑战,本文从差异化的需求、无线协议的选择、模式等因素的考虑、传感器的设计、电池的选择五个方面来深入探讨电池方面的问题。
技术探讨 发布时间 : 2019-07-23
【技术】ARM Cortex-M 32 位微控制器EFM32 外设反射系统实现更低功耗
借助EFM32 MCU外设反射系统,外围设备能够产生其他外围设备可以接收并即刻反应的信号,而CPU 依然处于睡眠状态,从而达到降低系统功耗的目的。
技术探讨 发布时间 : 2016-06-18
雅特力(Artery)AT32全系列32位微控制器(MCU)选型指南(中文)
描述- 雅特力坚持自主研发,以科技创新引领智慧未来,专注于ARM® Cortex®-M4/M0+的32位微控制器研发与创新,提供高效能、高可靠性且具有竞争力的产品。自2018年正式对外销售至今,累积了相当多元的终端产品成功案例,广泛地覆盖工控、电机、车载、消费、商务、5G及物联网等领域,助力客户实现产业升级。
型号- AT32F413CCU7,AT32F437ZCT7,AT32A403ACGU7,AT32F405CCU7,AT32L021K6U7-4,AT32F421K6T7,AT32F437VMT7,AT32F425R8T7,AT32F437RGT7,AT32F423VBT7,AT32F423RBT7-7,AT32A403A 系列,AT32A403ACGT7,AT32A423RBT7-7,AT32A423CCU7,AT32F413CBT7,AT32F435CMT7,AT32F403ARCT7,AT32L021C4T7,AT32F435RCT7,AT32F435ZGT7,AT32F405CCT7,AT32F403ACET7,AT32F405 系列,AT32A423R8T7,AT32L021K8T7,AT32 WB SERIES,AT32A423CBT7,AT32L021F8P7,AT32F435CMU7,AT32F437VDT7,AT32F415KBU7-4,AT32F413CBU7,AT32F402CBT7,AT32F405KCU7-4,AT32F407RCT7,AT32L021G4U7,AT32F403ACGU7,AT32F425K8U7-4,AT32F402KBU7-4,AT32F425R8T7-7,AT32F415RCT7,AT32F423VCT7,AT32F402CBU7,AT32F423T8U7,AT32F425K6T7,AT32F435CDT7,AT32F405RBT7,AT32A403ARCT7,AT32F421K6U7,AT32F421G8U7,AT32F415RBT7-7,AT32F421F4P7,AT32A423CCT7,AT32 F SERIES,AT32WB415系列,AT32F413KCU7-4,AT32F425F6P7,AT32F423C8T7,AT32A403ACEU7,AT32F437VGT7,AT32F437ZMT7,AT32F423RCT7-7,AT32A423TBU7,AT32A423C8T7,AT32F421K8T7,AT32F435 系列,AT32F413C8T7,AT32F415RBT7,AT32F403ARET7,AT32F435CGT7,AT32A423K8U7-4,AT32A403ACET7,AT32F435VCT7,AT32A423C8U7,AT32F403ACGT7,AT32F421C4T7,AT32L021K6T7,AT32A423R8T7-7,AT32F403AVCT7,AT32L021F6P7,AT32F437ZDT7,AT32F415RCT7-7,AT32F435CGU7,AT32F415CCT7,AT32F405KBU7-4,AT32F407VCT7,AT32F405CBU7,AT32F415KCU7-4,AT32A423TCU7,AT32F407RET7,AT32 A,AT32A423CBU7,AT32F435RMT7,AT32L021K8U7,AT32L021,AT32 F,AT32 L,AT32A423KBU7-4,AT32F423C8U7,AT32F423 系列,AT32F435RDT7,AT32L021F8U7,AT32F425K8T7,AT32F405CBT7,AT32A403AVCT7,AT32F421K8U7,AT32A403ARET7,AT32F423TBU7,AT32F421K6U7-4,AT32F421F6P7,AT32F403A,AT32 L SERIES,AT32A403ACCU7,AT32F415CBT7,AT32F415R8T7,AT32F425F8P7,AT32A403A,AT32F437ZGT7,AT32F423R8T7,AT32F425C6U7,AT32A423T8U7,AT32F421K4U7-4,AT32A,AT32F437RCT7,AT32F423CCU7,AT32F402 系列,AT32F425 系列,AT32F402RCT7,AT32L021C8T7,AT32F403ARGT7,AT32WB415CCU7-7,AT32F415CCU7,AT32A403ACCT7,AT32F403AVET7,AT32F435RGT7,AT32F435VMT7,AT32F421C6T7,AT32A423VBT7,AT32L021K4U7-4,AT32L021K4T7,AT32F423TCU7,AT32F405RBT7-7,AT32F413KBU7-4,AT32F435ZCT7,AT32 A SERIES,AT32F423CCT7,AT32WB415,AT32L021F4P7,AT32L021G8U7,AT32F407VET7,AT32F407RGT7,AT32F403ACCU7,AT32L021K6U7,AT32F423CBU7,AT32F403A 系列,AT32A423RCT7-7,AT32F435VDT7,AT32F415CBU7,AT32L021K8U7-4,AT32A423VCT7,AT32L021F6U7,AT32A403AVET7,AT32 WB,AT32F413 系列,AT32F425K6U7-4,AT32F425C6T7,AT32F421G4U7,AT32F407 系列,AT32A403ARGT7,AT32A423KCU7-4,AT32F421F8P7,AT32F423CBT7,AT32F413RCT7,AT32F425R6T7-7,AT32F413,AT32F423V8T7,AT32F415,AT32家族,AT32F437VCT7,AT32F423KCU7-4,AT32F402CCT7,AT32F421K4T7,AT32F435CDU7,AT32F425C8U7,AT32F425R6T7,AT32F423RBT7,AT32A423 系列,AT32F423K8U7-4,AT32F421,AT32F402,AT32F421 系列,AT32F435VGT7,AT32F405,AT32A423RBT7,AT32L021C6T7,AT32F407,AT32F402CCU7,AT32F421C8T7,AT32F435CCT7,AT32F415 系列,AT32F403AVGT7,AT32F405RCT7,AT32F423R8T7-7,AT32F403ACCT7,AT32F435ZMT7,AT32A423V8T7,AT32F413RBT7,AT32F405RCT7-7,AT32F415C8T7,AT32F402RBT7-7,AT32F435,AT32F437,AT32F407VGT7,AT32F435CCU7,AT32L021G6U7,AT32,AT32F402RCT7-7,AT32F403ACEU7,AT32F415K8U7-4,AT32L021K4U7,AT32F415R8T7-7,AT32F437RDT7,AT32F423RCT7,AT32F437 系列,AT32F402KCU7-4,AT32F402RBT7,AT32F423,AT32F425,AT32F413CCT7,AT32A423RCT7,AT32F421K4U7,AT32F421K8U7-4,AT32L021F4U7,AT32F425C8T7,AT32F437RMT7,AT32A403AVGT7,AT32F421G6U7,AT32L021 系列,AT32F423KBU7-4,AT32F435ZDT7,AT32A423
Silicon Labs(芯科科技) 8 bit 集成开发环境 (IDE)
描述- Silicon Labs(芯科科技) 集成开发环境 (IDE) 是一个完整独立的软件程序,其包含项目管理器、源代码编辑器、源代码级调试器和其他实用工具。第三方开发工具链的 IDE 接口,可为系统设计者提供完整的嵌入式软件开发环境。IDE 支持全部的 8 位微控制器 (MCU) 组合。
极海半导体(Geehy Semiconductor)汽车电子芯片 选型指南
描述- 极海汽车电子芯片产品布局通用微控制器/微处理器、传感器、接口、驱动等多条产品线,战略聚焦车身控制、信息娱乐系统、BMS电池管理系统及域控等领域,提供符合ISO 26262功能安全标准、安全可靠、质量稳定的芯片产品与应用方案,并为客户提供丰富的开发生态与本地化技术支持。通过优质的服务和多元化的产品组合,满足汽车电子行业日益增长的应用需求,协助客户实现快速量产,助力国产汽车产业向上发展。
型号- G32A1445UAT0MLL,G32A1465UAT0MLL,G32A1445UAT0MLH,G32A1465UAT0MLH,APM32F103RCT7,APM32A407VGT7,APM32A407,APM32A103,APM32A103CBT7,APM32F003F6U7,GURC01,APM32A407ZGT7,APM32A103系列,APM32A091RCT7,APM32A091,APM32,APM32F072RBT7,APM32A091系列,APM32A407系列,G32A1445系列,APM32A103RET7,APM32A103VET7,APM32F072CBT7,G32A1445,G32A
武汉芯源(CW)CW32系列微控制器选型表
描述- 武汉芯源半导体目前已推出CW32F003系列、CW32F030系列以及CW32L083系列MCU产品,可以满足各行业的需求,客户行业广泛涉及通信电子、工业电子、消费电子、新能源、安防监控、物联网以及汽车电子等多个行业,并且已经在无线充方案、电子烟方案、水表方案、燃气表方案、BLDC电动工具、BMS方案、三轴云台、无线传感器方案等项目中得到实际应用,未来将能够满足更多的市场需求。
型号- CW32F030K8T7,F002,F003,CW32F030F8V7,CW32L083MCT6,CW32W031R8U6,CW32L031C8T6,A030 系列,L052,L083 系列,F030,L052 系列,CW32F030K8U7,L031 系列,CW32L052R8S6,CW32A030C8T7,A030,CW32L031K8U6,CW32L031C8U6,CW32L031F8P6,CW32L083RCT6,R031 系列,CW32R031C8U6,CW32L052C8T6,CW32L083VCT6,CW32 系列,CW32F020K6U7,F020,CW32,CW32F030F6P7,CW32L052R8T6,CW32F002F3U7,F002 系列,CW32L083RCS6,CW32F020C6U7,R031,CW32L031F8U6,CW32F003F4P7,L031,F030 系列,F003 系列,CW32F020F6U7,CW32F030C8T7,CW32F002F3P7,F020 系列,CW32F003F4U7,CW32L083RBT6,L083,CW32F003E4P7,W031 系列,W031
【选型】Silicon Labs的8位微控制器EFM8BB5和EFM8BB21性能差异对比
为了方便客户了解EFM8BB5系列和EFM8BB21系列的区别,更好的进行选型,本文例举出了Silicon Labs的8位微控制器EFM8BB21、EFM8BB51和EFM8BB52三者之间的不同点,来进行性能差异对比。
器件选型 发布时间 : 2021-10-24
极海半导体加入深圳市汽车电子行业协会,共同推动国产汽车电子产业持续健康向上发展
热烈祝贺珠海极海半导体有限公司加入深圳市汽车电子行业协会,成为深圳市汽车电子行业协会的副会长单位!珠海极海半导体有限公司,是一家致力于开发工业级/车规级微控制器、模拟与混合信号IC及系统级芯片的集成电路设计型企业。极海团队拥有20年集成电路设计经验和嵌入式系统开发能力,为客户提供核心可靠的芯片产品,实现准确感应、安全传输和实时控制。
原厂动态 发布时间 : 2024-02-09
EFM32和STM32有熟悉二者的大虾简单概括下?现在STM 32这么火那么EFM32凭什么更吸引人?
Silicon Labs EFM32 微控制器全系列都是超低功耗的,特别适用于低功耗和能源敏感型应用,包括能源、水表和燃气表、楼宇自动化、警报及安防和便携式医疗/健身器材等领域。具备以下10大技术特点。详见链接:世界上最节能的微控制器EFM32之十大低功耗奥秘1、极低的运行模式功耗,仅需63uA/MHz2、减少处理时间3、快速唤醒时间4、超低的待机电流5、外设自主操作6、PRS — 周边反射系统7、节能外围设备8、LESENSE — 低能耗传感器接口9、10、 Simplicity Studio和高级能耗监控模块
技术问答 发布时间 : 2017-10-20
雅特力携工业控制、电机控制、消费电子、智能家居及汽车电子等领域近百款产品与方案亮相ELEXCON 2022
雅特力作为32位微控制器的创新领导者,携工业控制、电机控制、消费电子、智能家居及汽车电子等五大领域近百款产品与方案亮相此次展会,全面展示了雅特力最新技术与成果,吸引了众多电子行业人士参观交流!
行业资讯 发布时间 : 2022-11-10
8位单片机EFM8的烧录器有哪些?
8位单片机EFM8系列采用C2调试接口,常见的烧录器有:1,官方的EFM8 STK、USB Debug Adapter、ToolStick。2,第三方的U-EC2/6、WizPro200EFM(支持EFM8和EFM32)等。
技术问答 发布时间 : 2016-10-25
世界上最节能的微控制器EFM32之十大低功耗奥秘
Silicon Labs EFM32 32 位微控制器系列是世界上最为节能的微控制器,特别适用于低功耗和能源敏感型应用,包括能源、水表和燃气表、楼宇自动化、警报及安防和便携式医疗/健身器材。本文着重强调10个Silicon Labs32位MCU功耗低的因素。
新产品 发布时间 : 2016-07-11
【产品】中微半导体首款RISC-V内核的32位微控制器ANT32RV56xx问世,可满足消费电子对高算力、低功耗的要求
近日,中微半导体宣布正式发布首款集成RISC-V内核的32位微控制器-ANT32RV56xx,轻松应对消费电子对高算力、低功耗的要求。ANT32RV56xx设计旨在以超强外设和丰富资源减少驱动电路的元器件数量,以更高效的设计提升系统控制效率。
新产品 发布时间 : 2020-12-18
C8051F120和AT45DB系列的存储芯片写数据,编译器在单步执行的时候MCU可以读到数据,但是程序运行的时读不到数据,这是为什么?
分析流程:1、MCU通过SPI写数据到1区的SRAM时,有SCK的信号确认,保证数据正常写入SRAM;2、AT45DB系列SRAM到主存写入,是通过开始地址和指令来执行,带擦除的话,先还擦除页面后再写入数据;3、AT45DB系列主存到2区SRAM,也是是通过开始地址和指令来执行,此时如果步骤2写入主存指令还没有执行完成,那么此时写入指令是无效的;4、如果步骤3指令没有执行成功,此时读到数据也是不正确的。由流程可以分析出来:如果主存区忙碌的话,再去对主存区域进行操作,读出的数据无效,所以在写入主存区域,先判断是否忙碌,可读取寄存器地址为57H的状态寄存器,判断第7bit的“RDY/BUSY”位,或者延时一段时间在去操作主存区。
技术问答 发布时间 : 2016-10-25
电子商城
现货市场
服务
可定制板装式压力传感器支持产品量程从5inch水柱到100 psi气压;数字输出压力传感器压力范围0.5~60inH2O,温度补偿范围-20~85ºС;模拟和数字低压传感器可以直接与微控制器通信,具备多种小型SIP和DIP封装可选择。
提交需求>
定制水冷板尺寸30*30mm~1000*1000 mm,厚度1mm~50mm,散热能力最高50KW,承压可达3MPA;液冷机箱散热能力达500W~100KW。项目单次采购额需满足1万元以上,或年需求5万元以上。
提交需求>
登录 | 立即注册
提交评论