历史上的今天
今天是:2025年12月16日(星期二)
2022年12月16日 | 关于单片机应用系统架构的几点见解
2022-12-16 来源:zhihu
可能大部分单片机工程师对于开发都没有架构的概念,认为架构只存在于处理器设计,软件工程等听起来很高大上的领域,这种想法是不对的!在嵌入式领域,无论电路板设计还是程序设计,都需要一个优质的架构,它是做出高质量产品的一个重要保证!本文从以下几个方面讲述单片机应用系统架构:

作者并非从事硬件或者电路板设计工作,因此对此稍作讲解。在电路板设计初期,首先考虑电路板功能、功耗、体积、稳定性、抗干扰性等要求,然后据此设计原理图和PCB,它决定了单片机应用系统的硬件结构,是产品设计的重要阶段,最后SMT将电子部件装在电路板上,进行电气测试。良好的电路板设计需要一位经验丰富的电子工程师,当然了电路板设计需要长期的优化,升级过程。
关于软件架构方便,在8位单片机里,由于其计算资源和存储资源比较少,一般采用裸机编程的方式,其架构有基于前后台的顺序执行结构,时间片轮旬执行结构和RTOS结构。在32位单片机里,或者说微控制器里,例如以CORTEX-M为内核STM32系列微控制器、NXP系列微控制器等会选择运行实时操作系统ucos、freertos、rt-thread等;跑操作系统具备诸多优势,一方面降低开发难度,提高实时性,另一方面便于团队合作进行程序设计。
一个优质的软件应该具备高效率,可读性,可移植性等优势,而分层思想就可以提高这些优势。纵观现代的软件设计都有分层思想,尤其在团队合作里面尤为重要,不同的人员可以设计不同层次的软件。当然了软件分层思想在嵌入式领域同样适用。一个分层的原则就是,越往上层硬件无关性越强,这样的设计有利于后期软件的升级和维护。例如在一个智能车软件系统中可以将其分为三层,第一层是驱动层,有电机驱动,灯光驱动,喇叭驱动和传感器驱动等;第二层是中间层,它用于实现部分逻辑功能,例如智能车遇见障碍物,灯光闪烁提示,喇叭鸣笛等;第三层功能层,它是智能车最终功能的体现,例如智能车的寻迹模式,它调用各类中间模块,协调整车部件共同工作。
一款优秀的产品取决于它的架构的合理性,一个好的架构不仅让产品脱颖而出,而且可以明确开发过程和有利于后期升级,维护。
上一篇:单片机应用系统之温度测试
下一篇:我是怎么提高单片机编程能力的?
史海拾趣
|
器件封装,就是指把硅片上的电路管脚,用导线接引到外部接头处,以便与其它器件连接。封装形式是指安装半导体集成电路芯片用的外壳。它不仅起着安装、固定、密封、保护芯片及增强电热性能等方面的作用,而且还通过芯片上的接点用导线连接到封装外壳的 ...… 查看全部问答> |
|
这些天我把所有器件的封装打上,准备画PCB。网友、参加活动的朋友可以帮我找找有没有疏忽的地方。特别是STM32的ARM,这100脚封装的第一次用,不知道有没有丢的东西。还有什么建议也可以提。 另外接受软件开发报名(报名可以在下面跟贴),将在PCB出 ...… 查看全部问答> |
|
arm9 (timer counter) 外接buzzer 怎样选择 时钟频率 接入一个外设buzzer。 i/o接入。应该设置timer counter. 看datasheet 现在有5个Timer Counter Clock TIMER_CLOCK1 MCK/2 TIMER_CLOCK2 MCK/8 TIMER_CLOCK3 MCK/32 TIMER_CLOCK4 MCK/128 TIMER_CLOCK5 SLCK 我应该选择那个。我用的是arm9 AT91 ...… 查看全部问答> |
|
/****************************************************************************** // MSP430F20xx Demo - Timer_A, Toggle P1.0, CCR0 Cont. Mode ISR, DCO SMCLK // // Description: Toggle P1.0 using software and ...… 查看全部问答> |
|
The New Ipad发布,更名为New Ipad(牛排) 又出乎大家的意料,新一代的ipad更名为New Ipad(牛排)。 显示屏达到了2048x1536的分辨率,CPU更新为A5X,GPU变成了4个。 但是不知道GPU跟以前的是不是一样的,GPU 的增强跟屏幕也是相关的。 支持1080P视频录制,其他指标见下图。、 … 查看全部问答> |
|
该课题主要设计空气净化器,通过检测室内空气污染物的含量以及室内人员的活动程度,经单片机分析处理后,再控制空气净化器进行杀菌消毒。需要微型计算机一台进行控制系统软硬件设计。 设计内容: 1)根据室内空气需要净化的需求,分析控制系统中 ...… 查看全部问答> |




