# qpstudy **Repository Path**: lhtgitee1/qpstudy ## Basic Information - **Project Name**: qpstudy - **Description**: QP学习例程,包含博客与例程代码,旨在将众多的QP初学者认识到QP的价值。 - **Primary Language**: C - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 8 - **Created**: 2024-08-23 - **Last Updated**: 2024-08-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # QPStudy项目说明 -------- ### QP的优势 QP([Quantum Leaps](https://www.state-machine.com),量子平台),是一个非常优秀的嵌入式开发平台。我从2014年开始接触QP,从2015年开始用于单片机开发,在上面写过的代码,已经数不胜数。可以这么说,QP是对我影响最大的嵌入式代码。 使用QP做嵌入式开发,有若干好处: + 有利于写出可靠性极高的程序。 + 写代码的扩展性好,不必修改一点就引起BUG。 + 有利于单片机工程师,掌握编程思想,了解设计模式,提升抽象能力,而不是陷在经验主义的怪圈里,进步缓慢。 + 有利于单片机工程师,向上位机、嵌入式Linux等领域转移。 因此,我个人非常推荐大家使用QP,研究QP,至少试一试QP。我个人所在公司(一家美资世界500强)已经把QP当成了公司统一的嵌入式开发平台,并在QP的基础上,进行了很多扩展,极大提升了工作效率。据我所知,重视QP的公司,还有很多。大家可以从QP的官网上,窥见一二。 ### 个人对QP的发展 我个人用QP这些年,对QP的原理、应用和实现,都已经非常熟悉。这些年,也发展出了一套更适合自己的嵌入式开发平台:[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)。 这些年,在和同事和网友交流的过程中,大家都反映QP的学习曲线很陡。从我个人的学习经历来看,QP的学习曲线,不在于其使用,而在于其思想,颠覆了之前的**前后台**和**RTOS**的思维逻辑。用过去的思维,套在QP上,学习的效果必定是差的。尤其是单片机开发者,大部分都是电子信息、自动化等硬件专业出身的,对数据结构、面向对象、设计模式、抽象和解耦等概念,很少有接触。而QP本身,又是注重这些。这也造成QP学习曲线较陡的原因。 把QP初学者,从固有的开发思维里领出来,再让其带入到QP的思维里去。这是对QP初学者进行指导的好方法。 [EventOS Nano](https://gitee.com/atthesea/eventos-nano.git),是QP的简化版,是针对国内单片机工程师开发习惯,进行重新开发的另一个QP。它摒弃了QP一些复杂的概念和特性,力争以最小的学习成本,来入门状态机框架。等从[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)入门之后,再去看QP,相信大家一定会有新的感觉。 ### QPStudy和EventOS Nano两个项目的关系 [EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)项目,是未来我长期维护的项目。与[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)相对应的,是**EventOS**项目,这是一个融合了事件驱动、分布式和跨平台开发的一个大规模项目,还在开发准备中,力争在2022年底,能开源第一版。 [EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)项目中,我未来会增加一些有意思的例程,现在想到的是**电子表**和**俄罗斯方块**。这两个例程,都是典型的状态机和事件驱动的应用,可以在这些项目里体会到事件驱动和状态机的优势。 而上面所说的这些例程,我同样会在**QPStudy**项目中,用QP去实现。有兴趣的,可以看到**QP**和[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)的不同之处,或许能够发现[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)的优势和不足之处。 另外,关于与网友所进行QP的问答、向冷门芯片的移植,我所做的QP总结等等,我都会更新到**QPStudy**这个工程里。因为,就目前的形势来看,大家所关心的,是产品的稳定性,[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)的稳定性,还有待考验。QP仍是网友们关注的重点。 ### 联系方式 大家有任何关于QP和[EventOS Nano](https://gitee.com/atthesea/eventos-nano.git)的问题,都可以联系我。 邮箱:event-os@outlook.com 除了邮箱之外,也可以加微信联系我,请注明**技术讨论**等相关字样。 ![avatar](/doc/figures/wechat.jpg)