CPLD以前写的翻出来
2812外部扩展接口实际上没有用,地址总线19位(XA18:0)数据总线
(XD15:0)实际原理图上悬空。
查看程序,这一块也未有相关处理,
钥匙开关应该分为两个状态:
-
控制电源给定。
-
点火状态给定。
这块有个逻辑我认为是必须如此实现:
当整车控制器给电机控制器发电机使能信号后,还需要结合当前整车控制器与电机控制器的故障上报和,如果整车控制器,与电机控制器都没有故障,则这个使能信号才是有效的。
如果不是这个逻辑,假设一种工况,如果汽车运行中,发生了某个故障,导致电机控制器停止工作,而因为此时,DSP和CPLD未发生掉电情况,
因为故障并不影响电机使能信号的当前情况,所以会发生,指示的是车没有熄火,而车踩油门没有反应的情况。
所以正确的逻辑是:电机控制电路板首次上电,进行控制电的自检,主要检测传感器的状态是不是正常,如果自检通过,然后接着检查整车控制器上传的故障,如果没有故障,且整车控制器发生电机使能信号,则点火信号才有效。
开关断开,启动命令的图如下了。
对应CPLD的程序
可以看见,外部的开关,进入CPLD后,被CPLD 引脚检测到以后,然后上报给DSP。通过MCBSP总线。
获取CPLD外部的故障节点状态信息。以一个温度故障为例子。
发手机两张照片过来。
对28335 400HZ的DSP程序做了以下修改,因为不需要下载到FLASH里,我在RAM下进行调试,把宏定义去掉。如下图:
对28335支持浮点库有个地方需要设置好,请总结下来,