如何将16F886的I/O口信息送至CAN总线上?

[复制链接]
3216|10
 楼主| chongren 发表于 2011-5-10 09:18 | 显示全部楼层 |阅读模式
  使用的是PIC16F886作为主控芯片,原先是将其I/O输出的信号直接接至达林顿驱动器以驱动继电器等等,现在想要减少线束,把输出的信号送至CAN总线,那这个输出的信号该如何处理呢?是不是得加上一个CAN/LIN控制器?要是真的加上一个总线控制器,那有什么样的型号考选呢?
shizaigaole 发表于 2011-5-10 09:36 | 显示全部楼层
CAN是总线,本身不能驱动继电器吧?

本地编码MCU数据帧,通过CAN总线传输,远端用MCU接收,执行相关操作。
 楼主| chongren 发表于 2011-5-10 10:00 | 显示全部楼层
2# shizaigaole
没有啦,我的意思是我只要把16F886发出的信号送至CAN总线上,驱动那一块我不要做的
kvdong 发表于 2011-5-10 11:30 | 显示全部楼层
SJA1000+82C250
XIEYUANBIN 发表于 2011-5-10 12:00 | 显示全部楼层
2# shizaigaole
首先你要一个带CAN 模块的单片机,或者一个别的什么把IO口信号转换成通讯数据的,然后通过一个CAN收发器把CAN模块发来的TTL信号转变成差分信号发送或接收
 楼主| chongren 发表于 2011-5-10 12:22 | 显示全部楼层
5# XIEYUANBIN
谢谢,那你说的这两个芯片一个是CAN控制器,一个是CAN收发器,和PIC16F886兼容伐?
headwolf_83 发表于 2011-5-11 19:03 | 显示全部楼层
PIC16F886+MCP2515+MCP2551,做为一个CAN节点挂到总线。你该不会想通过一个几百元的转换器挂到总线上吧。
 楼主| chongren 发表于 2011-5-11 19:38 | 显示全部楼层
7# headwolf_83 额,那您有什么推荐或建议吗?我是想把16F886的输出信号送至CAN总线上,但其内部没有CAN控制器,故而无奈的选择了MCP2515,现在经板上的人介绍,18F2580是带有CAN控制器的,现在想换成这个芯片,那原先的芯片外围电路可不可以移植到18F这个芯片上呢?程序什么的,移植性强不强?程序烧录的话,PICKIT3是不是也可用于18F上呢?

还望不吝赐教,谢谢啦!
谈的元 发表于 2011-5-12 21:58 | 显示全部楼层
18F功能强,价格贵的多

PICKIT3可用于18F上
谈的元 发表于 2011-5-12 21:59 | 显示全部楼层
PIC16F886+MCP2515+MCP2551 是一个比较好的办法
梅开二度 发表于 2011-5-12 22:22 | 显示全部楼层
10# 谈的元
PIC18F25K80差不多15、6
PIC16F886+MCP2515应该也差不了多少;
但是从硬件到软件都要方便很多很多。。。。PCB也要省下不小的面积。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

19

主题

75

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部