S3C2416 SPI中断方式实现

samsung S3C2416支持HS_SPI(高速串行外设接口),是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,如今越来越多的芯片集成了这种通信协议。

将2416作为SPI主站与MCP2515通讯,s3c2416采用SPI中断方式处理发送和接收。

考虑到MCP2515spi协议,采用一问一答方式,中断处理中需严格遵循一条完整指令中的发送和接收,即发送完应马上处理需要的接收。

spi中断处理流程:

1.初始化SPI和中断

void SpiRegInit(PCAN_INFO pCan_info)
{
rCH_CFG |= (1<<5);//软件复位
rCH_CFG &= ~(1<<5);


rCH_CFG = (0<<4) | (0<<3) | (0<<2) | (0<<1) | (0<<0);


rCLK_CFG = PCLK/((2*SPICLK)+1);//时钟配置
rCLK_CFG |= (0<<9) | (1<<8);


rMODE_CFG = (rMODE_CFG & ~0x1fffffff) | TRAIL_CNT(0x3FF) | MODE_BUS_SZ_BYTE | TX_TRIG_LVL(0x1);//配置模式寄存器
//RX_TRIG_LVL(1);// | TX_TRIG_LVL(0x4);
//rSPI_INT_EN = 0;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值