SPI總線的軟件模擬

發(fā)布時(shí)間:2023-10-30
對(duì)于沒(méi)有提供spi接口的單片機(jī)而言,通??墒褂密浖霓k法來(lái)模擬spi的總線操作,包括串行時(shí)鐘、數(shù)據(jù)輸入和輸出。
atmel公司生產(chǎn)的eeprom具有spi接口,存儲(chǔ)容量為4kb的at25040就有spi接口,80c51系列單片機(jī)與at25040的spi總線接口接線如圖所示。
圖 spi總線接口接線圖
圖9-6中,p1.0模擬spi的數(shù)據(jù)輸出端(mosi),p1.1模擬spi的sck輸出端,p1.2模擬spi的從機(jī)選擇端(ss),p1.3模擬spi的數(shù)據(jù)輸入端(miso)。下面給出模擬spi串行輸入、串行輸出和串行輸入/輸出的3個(gè)子程序。
1.mcu串行輸入子程序spiin
從at25040的so端接收8位數(shù)據(jù)并放入寄存器r0中。參考程序如下:
spiin:setb p1.1 ;使p1.1(時(shí)鐘)輸出為1
clrp1.2 ;選擇從機(jī)
mov r1, #08h ;置循環(huán)次數(shù)
spiin1: clr p1.1 ;使p1.1(時(shí)鐘)輸出為0
nop ;延時(shí)
nop
mov c, p1.3 ;從機(jī)輸出送進(jìn)位c
rlc a;左移至累加器a
setbp1.1 ;使p1.1(時(shí)鐘)輸出為1
djnz r1, spiin1 ;判斷是否循環(huán)8次(8位數(shù)據(jù))
mov r0, a ;8位數(shù)據(jù)送r0
ret
2.mcu串行輸出子程序spiout
將80c51單片機(jī)中r0寄存器的內(nèi)容傳送到at25040的si端。參考程序如下:
spiout: setb p1.1 ;使p1.1(時(shí)鐘)輸出為1
clrp1.2 ;選擇從機(jī)
mov r1, #08h ;置循環(huán)次數(shù)
mov a, r0 ;8位數(shù)據(jù)送累加器a
spiout1: clr p1.1 ;使p1.1(時(shí)鐘)輸出為0
nop;延時(shí)
nop
rlca;左移至累加器a,最高為至c
mov p1.0, c ;進(jìn)位c送從機(jī)輸入
setb p1.1 ;使p1.1(時(shí)鐘)輸出為1
djnz r1, spiout1 ;判斷是否循環(huán)8次(8位數(shù)據(jù))
ret
3.mcu串行輸入/輸出子程序 spiio
將80c51單片機(jī)r0寄存器的內(nèi)容傳送到at25040的si端,同時(shí)從at25040的so端接收8位數(shù)據(jù)。參考程序如下:
spiio:setb p1.1 ;使p1.1 (時(shí)鐘)輸出為1
clr p1.2 ;選擇從機(jī)
mov r1, #08h ;置循環(huán)次數(shù)
mov a, r0 ;8位數(shù)據(jù)送累加器a
spiio1: clr p1.1 ;使p1.1(時(shí)鐘)輸出為0
nop;延時(shí)
nop
mov c, p1.3 ;從機(jī)輸出送進(jìn)位c
rlca;左移至累加器a,最高為至c
mov p1.0, c ;進(jìn)位c送從機(jī)輸入
setbp1.1 ;使p1.1(時(shí)鐘)輸出為1
djnz r1, spiio1 ;判斷是否循環(huán)8次(8位數(shù)據(jù))
ret
這些子程序適用于在串行時(shí)鐘的上升沿輸入和下降沿輸出的各種串行外圍接口芯片(如d/a和a/d轉(zhuǎn)換芯片、實(shí)時(shí)時(shí)鐘芯片、led顯示驅(qū)動(dòng)芯片等)。對(duì)于下降沿輸入、上升沿輸出的各種串行外圍接口芯片,只要改變p1.1的輸出電平順序,這些子程序也同樣適用。
如先置p1.1為低電平,之后再次置p1.1為高電平,再置p1.1為低電平等等。
上一個(gè):楊樹(shù)主要病害防治技術(shù)
下一個(gè):工程開(kāi)始到結(jié)束,施工員需要做什么?

美國(guó)haskel泵
小米輸入時(shí)聲音怎么關(guān),小米手機(jī)怎么消除寫(xiě)信息時(shí)觸屏聲
花中混血兒――美人梅
計(jì)算機(jī)控制裝置種類
水楊梅栽培養(yǎng)護(hù)技術(shù)
心臟嗜鉻細(xì)胞瘤2例
缺陷樁處理常用方法有哪些?
二合一平板電腦排行前十,平板電腦二合一性價(jià)比排行
同等價(jià)位什么筆記本好
那種固態(tài)硬盤(pán)最好,固態(tài)硬盤(pán)哪個(gè)牌子最好
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos