欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 調(diào)試STM32的i2c和io口模擬spi協(xié)議 [打印本頁(yè)]

作者: 2806695136    時(shí)間: 2022-8-30 10:04
標(biāo)題: 調(diào)試STM32的i2c和io口模擬spi協(xié)議
在調(diào)試STM32的i2c和io口模擬spi協(xié)議時(shí)發(fā)現(xiàn)時(shí)序是很關(guān)鍵的。stm32在72M運(yùn)行下可以實(shí)現(xiàn)i2c或者spi協(xié)議,但并不代表把相同的代碼移植到51單片機(jī)上就會(huì)成功的跑起來(lái),因?yàn)?1單片機(jī)的速讀最塊8M,所以在時(shí)序上會(huì)產(chǎn)生很多大的區(qū)別。經(jīng)過(guò)測(cè)試,在stm32上的spi協(xié)議時(shí)鐘線可達(dá)到20Khz,移植到51后,頻率會(huì)降到<10hz。可是盡管把延時(shí)調(diào)小或者去掉還是無(wú)濟(jì)于事,此時(shí)就要加幾句把鐘線置高置低的語(yǔ)句了以便增大的速度,后來(lái)成功后,測(cè)試時(shí)鐘線的確達(dá)到了10Khz左右。
先貼上部分代碼
unsigned char ReadRawRC(unsigned char Address)
{
    unsigned char i, ucAddr;
    unsigned char ucResult=0;

    MF522_SCK = 0;
    MF522_NSS = 0;
     ucAddr= ((Address<<1)&0x7E)|0x80;

    for(i=8;i>0;i--)
    {
        MF522_SI =((ucAddr&0x80)==0x80);
        MF522_SCK = 1;//stm32上沒(méi)有
        ucAddr <<= 1;
        MF522_SCK = 0;
    }

    for(i=8;i>0;i--)
    {
        MF522_SCK = 1;//stm32上沒(méi)有
        ucResult <<= 1;
        ucResult|=(bit)MF522_SO;
        MF522_SCK = 0;
    }

    MF522_NSS = 1;
    MF522_SCK = 1;
     returnucResult;
}


作者: 2806695136    時(shí)間: 2022-8-30 10:10
把延時(shí)調(diào)小或者去掉還是無(wú)濟(jì)于事,此時(shí)就要加幾句把鐘線置高置低的語(yǔ)句了以便增大的速度




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1