前言
现在整车上的功能越来越复杂,伴随着芯片的功能也越来越强大。一个MCU有100多个引脚,这些引脚是做什么用的,急需一份文档来做约束,规范。
一、什么是HIS
HSI即Hardware Software interface,软硬件接口。主要作用是来规范硬件跟软件的交互。比如某个PIN,用作ADC还是PORT,以及一些其他的约束,我们在下面讲。
二、为什么要做HSI
在软件的开发过程中,每个人都负责不同的功能。由于很多引脚都是有复用功能的,大家在使用的时候,可能将同一功能重复配置,使用;又或者软件的设计杂乱,需求不清楚,导致出问题后无法排查。这时候,就需要一份专门的文档,来规定这些引脚的作用,并且通过review,在设计最初,就能规范的约定好功能需求。
三、HSI需要谁来做
HSI需要软件,硬件,系统共同参与。
首先系统,需要确定这个产品的架构,以及基本的功能。比如我们通信用CAN还是LIN;有几路ADC采样,采样的精度是多少,采样周期是多少等等
其次硬件,需要根据系统的需求,来画硬件原理图,在画图之前,他要规定好比如CAN0,是分配在PortApin1上还是PortBpin2上,然后PORT的话,你的方向是输入还是输出,硬件都会给你规定好。
最后软件,添加一些设计上的详细描述,比如ADC的实际软件设计的采样频率(比如系统规定200ms,软件实际设计100ms,不能比系统的慢),分辨率啊,数据类型之类的。如果是PORT信号,还应包括,初始化电平是高还是低,运行过程中的电平状态等等。