在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > DSP的SPI口和串行EEPROM在變頻器中的應(yīng)用

            DSP的SPI口和串行EEPROM在變頻器中的應(yīng)用

            作者: 時間:2009-05-07 來源:網(wǎng)絡(luò) 收藏

            圖5 寫陣列時序圖

              以下是寫陣列子程序,RA_ADDR為存儲要寫數(shù)據(jù)數(shù)組的首地址,EEP_ADDR為要寫入的首地址,N要存儲數(shù)據(jù)的個數(shù)。

              void WRITE_(unsigned int * RA_ADDR, unsigned int EEP_ADDR, unsigned int N)

             ?。?unsigned int I;

              WREN_(); /*寫使能*/

             ?。?a class="contentlabel" href="http://www.biyoush.com/news/listbylabel/label/SPI">PC1=0xBF; /*置低STE引腳,從而選通*/

             ?。?a class="contentlabel" href="http://www.biyoush.com/news/listbylabel/label/SPI">DAT=WRITE; /*發(fā)送x5168的寫狀態(tài)寄存器命令字*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

             ?。猄PIDAT=EEP_ADDR>>8; /*先發(fā)送高位地址在發(fā)送低位地址*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

             ?。猄PIDAT=EEP_ADDR; /*先發(fā)送高位地址在發(fā)送低位地址*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

              for (I=0;I

             ?。?*SPIDAT =*(RA_ADDR+I)>>8 ; /*發(fā)送數(shù)據(jù)用數(shù)組傳送,傳送數(shù)據(jù)高八位*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

             ?。猄PIDAT =*(RA_ADDR+I) ; /*發(fā)送數(shù)據(jù)用數(shù)組傳送,傳送數(shù)據(jù)第八位*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

             ?。?p>  *SPIPC1|=0x40; /*置高SPISTE引腳,從而禁止X5168*/

             ?。?p>  c).為向狀態(tài)寄存器寫數(shù)據(jù),在WRSR指令(00000001B)之后應(yīng)跟隨被寫入的數(shù)據(jù)(見圖6),數(shù)據(jù)位0和位1必須為“0”。

            圖6 寫狀態(tài)寄存器時序圖

              以下是寫狀態(tài)寄存器子程序:

              void WRSR_X5168(unsigned int COM) /*寫狀態(tài)*/

              { WREN_X5168(); /*寫使能*/

             ?。猄PIPC1=0xBF; /*置低SPISTE引腳,從而選通X5168*/

             ?。猄PIDAT=WRSR; /*發(fā)送X5168的寫狀態(tài)寄存器命令字*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPIBUF寄存器,清除SPI INT FLAG 位*/

              *SPIDAT=COM; /*STATUS_REG發(fā)送狀態(tài)字*/

              while((*SPISTS0x40)!=0x40){} /*等待SPI寫結(jié)束*/

              readspibuf=*SPIBUF; /*讀SPISTS寄存器,清除SPI INT FLAG 位*/

             ?。猄PIPC1|=0x40; /*置高SPISTE引腳,從而禁止X5168*/

              TIMEDEL(5); /*延時1us*/

             ?。?p>  以上子程序?qū)崿F(xiàn)了對X5168的讀寫功能,在主程序中調(diào)用這些子程序就可實現(xiàn)對X5168的操作。

            5 結(jié)束語

              由于篇幅的原因,本文沒有過多的講述外設(shè)接口和X5168的各項特性,這些說明書上都有敘述且很具體。而是把重點放在了講述擴展EEPROM的軟硬件設(shè)計,該設(shè)計已成功在筆者開發(fā)的中,經(jīng)過反復(fù)測試,運行可靠。


            上一頁 1 2 3 4 5 下一頁

            評論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉