打印
[汽车MCU – KEA]

基于KEA单片机的出租车载nfc终端设计

[复制链接]
楼主: gxliu08
手机看帖
扫描二维码
随时随地手机跟帖
21
gxliu08|  楼主 | 2014-6-26 13:32 | 只看该作者 回帖奖励 |倒序浏览
本帖最后由 gxliu08 于 2014-6-26 13:34 编辑

PN532的驱动早就写好了,在考虑需不需要操作系统的事,如果以后扩展的功能多,倒是可以考虑用,不过不想要ucos,freescale的东西当然要跑freescale的系统mqx。貌似mqx 的实时性比ucos强一点,不过名气没有ucos大。

使用特权

评论回复
22
gxliu08|  楼主 | 2014-6-26 13:40 | 只看该作者
KEA系列的SPI库,开始干活!

使用特权

评论回复
23
gxliu08|  楼主 | 2014-6-26 13:46 | 只看该作者
是不是有必要接个小图像液晶?
13232点阵液晶考虑中,无字库液晶成本不高,显示效果也不错,考虑接一个,SI/SCL串行接口。

使用特权

评论回复
24
gxliu08|  楼主 | 2014-6-26 15:10 | 只看该作者
这次活动热度不高啊,看来放假造成的影响还是蛮大的,论坛上泡的很多是学生?

使用特权

评论回复
25
gxliu08|  楼主 | 2014-6-26 15:18 | 只看该作者
如何实现管理是个问题,要是能用上车载的3G/GPS接口就好了。

使用特权

评论回复
26
zndz410| | 2014-6-26 22:27 | 只看该作者
楼主这是自己设计的,不错,谢谢分亨,学习一下。

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
gxliu08 + 4 很给力!
27
gxliu08|  楼主 | 2014-6-27 09:20 | 只看该作者
zndz410 发表于 2014-6-26 22:27
楼主这是自己设计的,不错,谢谢分亨,学习一下。

喜欢这一行,完成一项设计,再能有客户,很有成就感!

使用特权

评论回复
28
gxliu08|  楼主 | 2014-6-27 09:24 | 只看该作者
联系了一圈也没找到样片,想在其它设计里也用。

使用特权

评论回复
29
gxliu08|  楼主 | 2014-6-27 09:30 | 只看该作者
void SPI_Init(SPI_Type *pSPI, SPI_ConfigType *pConfig)
{

    /* enable SPI clock gating on */
    if( pSPI == SPI0)    {
        SIM->SCGC |= SIM_SCGC_SPI0_MASK;
    }    else    {
        SIM->SCGC |= SIM_SCGC_SPI1_MASK;     
    }

    /* configure other control bits */
    if( pConfig->sSettings.bIntEn)    {
        SPI_IntEnable(pSPI);

        if( pSPI == SPI0 )    {
                        NVIC_EnableIRQ(SPI0_IRQn);
        }    else    {
                        NVIC_EnableIRQ(SPI1_IRQn);
        }
    }

    if( pConfig->sSettings.bTxIntEn)    {
        SPI_TxIntEnable(pSPI);

        if( pSPI == SPI0 )        {
                        NVIC_EnableIRQ(SPI0_IRQn);
        }        else        {
                        NVIC_EnableIRQ(SPI1_IRQn);
        }
    }


    if( pConfig->sSettings.bMasterMode)    {
        SPI_SetMasterMode(pSPI);
    }    else    {
                SPI_SetSlaveMode(pSPI);
    }

    if( pConfig->sSettings.bClkPolarityLow)    {
            SPI_SetClockPol(pSPI,1);
    }
    if( pConfig->sSettings.bClkPhase1)    {
        SPI_SetClockPhase(pSPI,1);
    }

    if( pConfig->sSettings.bShiftLSBFirst)    {
        SPI_SetLSBFirst(pSPI);
    }
    if( pConfig->sSettings.bMatchIntEn)    {
        SPI_MatchIntEnable(pSPI);
    }
    if( pConfig->sSettings.bModeFaultEn)    {
        SPI_ModfEnable(pSPI);
    }
    if( pConfig->sSettings.bMasterAutoDriveSS)    {
        /* set both SSOE and MODFEN bits when auto drive slave SS is enabled */
        SPI_SSOutputEnable(pSPI);
        SPI_ModfEnable(pSPI);
    }   

    if( pConfig->sSettings.bPinAsOuput)    {
        SPI_BidirPinEnable(pSPI);
    }

    if( pConfig->sSettings.bBidirectionModeEn)    {
        SPI_BidirOutEnable(pSPI);
    }
    if( pConfig->sSettings.bStopInWaitMode)    {
        SPI_ClockStopEnable(pSPI);
    }

    if(pConfig->sSettings.bMasterMode)    {
        SPI_SetBaudRate(pSPI,pConfig->u32BusClkHz,pConfig->u32BitRate);
    }

    /* enable SPI module */
    if( pConfig->sSettings.bModuleEn)    {
        SPI_Enable(pSPI);
    }
}

使用特权

评论回复
30
gxliu08|  楼主 | 2014-6-27 09:32 | 只看该作者
void SPI_SetBaudRate(SPI_Type *pSPI,uint32_t u32BusClock,uint32_t u32Bps)
{
    uint32_t u32BitRateDivisor;
    uint8_t u8Sppr;
    uint8_t u8Spr;
    uint8_t u8ReadFlag;
    u32BitRateDivisor = u32BusClock/u32Bps; /* calculate bit rate divisor */

    u8ReadFlag = 0;
    /* find best fit SPPR and SPR */
    for (u8Spr = 0; u8Spr <= 8; u8Spr++)    {
        for(u8Sppr = 0; u8Sppr <= 7; u8Sppr++)        {
            if((u32BitRateDivisor>>(u8Spr+1))<=(u8Sppr+1))            {
                u8ReadFlag = 1;
                break;
            }
        }
        if(u8ReadFlag)        {
            break;
        }
    }
    if(u8Sppr >=8)    {
        u8Sppr = 7;
    }
    if(u8Spr >8)    {
        u8Spr = 8;
    }
    /* set bit rate */
    pSPI->BR = SPI_BR_SPPR(u8Sppr) | SPI_BR_SPR(u8Spr);
}


使用特权

评论回复
31
gxliu08|  楼主 | 2014-6-27 09:34 | 只看该作者
准备PN532驱动修改,就是没有板子,不好确认。

使用特权

评论回复
32
gxliu08|  楼主 | 2014-6-27 11:20 | 只看该作者
是不是KE系列的片子可以替换?只是不是汽车级的?FAE可以帮忙确认一下吗?

使用特权

评论回复
33
gxliu08|  楼主 | 2014-6-27 11:20 | 只看该作者
是不是KE系列的片子可以替换?只是不是汽车级的?FAE可以帮忙确认一下吗?

使用特权

评论回复
34
gxliu08|  楼主 | 2014-6-27 17:18 | 只看该作者
本帖最后由 gxliu08 于 2014-6-27 17:19 编辑

开始在KEIL下建立演示工程,这个版本还不支持这个型号,暂时不想升级KEIL,先自己新建个型号。这个帖子基本上就我自己在贴,有点自娱自乐啊,就当作这个课题的流水账了。

使用特权

评论回复
35
gxliu08|  楼主 | 2014-6-27 19:28 | 只看该作者
TRK-KEA8、TRK-KEA64、TRK-KEA128的开发板资料,包括原理图,例程都公布了, Serial communication Interface (UART),FlexTimer (FTM),Analog to Digital Converter (ADC) module,Keyboard Interrupt (KBI) module例程,就是没有SPI的,郁闷,先自己调吧。

使用特权

评论回复
36
gxliu08|  楼主 | 2014-6-27 20:03 | 只看该作者
KEIL 4.74已经支持SKEAZN和SKEAZ系列了。果断升级。

使用特权

评论回复
37
hu_uuu| | 2014-6-27 23:11 | 只看该作者
gxliu08 发表于 2014-6-26 13:23
淘宝了一下,没有找到该系列片子。

可以申请样片啊,不过在官网的样片中心也没有找到

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
gxliu08 + 4 很给力!
38
604603487| | 2014-6-28 12:30 | 只看该作者
gxliu08 发表于 2014-6-26 10:18
每天都有成百上千吨的优惠券被打印出来发送给路人。这么做既不环保,用起来也麻烦。而设计这个车载NFC终端 ...

现在都是二维码了。。。。。

使用特权

评论回复
39
gxliu08|  楼主 | 2014-6-28 20:25 | 只看该作者
604603487 发表于 2014-6-28 12:30
现在都是二维码了。。。。。

出租上能扫二维码吗?

使用特权

评论回复
40
gxliu08|  楼主 | 2014-6-28 20:27 | 只看该作者
hu_uuu 发表于 2014-6-27 23:11
可以申请样片啊,不过在官网的样片中心也没有找到

先用非汽车级的型号KE系列

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则