mcp2515芯片工作原理

mcp2515芯片工作原理

      mcp2515芯片工作原理:根据芯片手册可知,MCP2515有8个中断源,当中断发生时,INT引脚将被MCP2515拉低为低电平,并且保持低电平状态直至MCU清除中断。

      由原理图可知MCP2515芯片外部中断接到S3C2416的外部中断1口上,所以在probe时使用request_irq申请外部中断1的中断。我们可以通过判断中断标志位的方式来接收数据。然而我们使用request_irq函数注册的中断实际是中断上半部,在Linux中把中断分为两个部分,在上半部不能有中断发生,尽可能使上半部处理少的工作。在MCP2515中断函数中,我们要判断中断标志,和接收数据,所以需要下半部机制。

MCP2515的外围CAN总线接口,MCP2515和9200的接口部分。由于设备需要安装在铁路沿线,必须具有防雷击的能力。因此MCP2515与CAN总线收发器(TJA1050)之间采用高速光耦进行完全的电气隔离,并且光耦两端电路的电源也必须用电源隔离模块隔离开,这样才能真正起到隔离的作用。

在TJA1050的CANH和CANL引脚与地之间连接2个30 pF的电容,可以过滤CAN总线上的高频干扰2个二极管可以在总线电压发生瞬变干扰时起保护作用。

光耦正常工作时输入电流为10 mA左右,内部发光二极管的正向电压降为1.7 V左右,因此要特别注意输入端串联电阻的阻值选择。