基于SPI總線的無(wú)線數(shù)據(jù)傳輸系統(tǒng)設(shè)計(jì)
3 nRF905無(wú)線收發(fā)芯片
nRF905是挪威Nordic VLSI公司推出的單片射頻收發(fā)器,工作電壓1.9~3.6 V,工作于433/868/915MHz這3個(gè)ISM頻段,頻道轉(zhuǎn)換時(shí)間650μs,最大數(shù)據(jù)速率為100kbit/s。nRF905由頻率合成器、接收解調(diào)器、功率放大器、晶體振蕩器和GFSK調(diào)制器組成。自動(dòng)產(chǎn)生前導(dǎo)碼和CR校驗(yàn)碼,可以很容易通過(guò)SPI接口進(jìn)行編程配置。外圍器件連接簡(jiǎn)單,無(wú)需外部SAw濾波器。nRF905有兩種工作模式和兩種節(jié)能模式。兩種工作模式分別是ShockBurst TM發(fā)送模式和ShockBurst RM接收模式,兩種節(jié)能模式分別是掉電和SPI編程模式,Standby和SPI編程模式。nRF905的工作模式由TRX_CE,TX_EN,PWR_UP這3個(gè)引腳的設(shè)置來(lái)決定。
4 nRF905和STC89C52RC的硬件連接電路
nRF905具有標(biāo)準(zhǔn)的SPI硬件接口,對(duì)于不帶SPI串行總線接口的STC89C52RC單片機(jī)來(lái)說(shuō),可以使用軟件來(lái)模擬SPI的操作。單片機(jī)和NRF905的對(duì)應(yīng)接法是:P1.6接MISO,P1.5口接MOSI,Pl.7口接SCIOCK,P1.3接CSN。選用單片機(jī)的P1.5模擬數(shù)據(jù)輸出端MOSI;Pl.6模擬數(shù)據(jù)輸入端MISO P1.7模擬SCK的輸出端;P1.3模擬從機(jī)選擇端CSN,由程序清零此I/O口,使得與它通信的NRF905做從機(jī)。采用SPI的進(jìn)行數(shù)據(jù)傳送時(shí),在SCK的每個(gè)下降沿將89C52配置NRF905的命令和數(shù)據(jù)通過(guò)MOSI引腳移入,在SCK的每個(gè)上升沿將欲傳給89C52的數(shù)據(jù)從MISO引腳移出。所以,這里將串行時(shí)鐘輸出口P1.7的初始狀態(tài)設(shè)置為低電平,選通從機(jī),即P1.3=0低電平后,再置P1.1為高電平。這樣,89C52在輸出1位SCK時(shí)鐘的同時(shí),將使NRF905中數(shù)據(jù)串行左移,從而輸出1位數(shù)據(jù)至89C52的P1.6口,此后再置P1.7為0,使89C52從P1.5輸出1位數(shù)據(jù)至NRF905,至此結(jié)束了模擬1位數(shù)據(jù)的傳輸。按上述步驟循環(huán)8次,即完成通過(guò)SPI總線傳輸1 bit的操作。nRF905有5個(gè)內(nèi)部寄存器,分別是狀態(tài)寄存器、RF配置寄存器、發(fā)送地址寄存器、發(fā)送數(shù)據(jù)寄存器和接收數(shù)據(jù)寄存器,這5個(gè)寄存器都是通過(guò)89C52軟件模擬的SPI接口來(lái)配置的。除了對(duì)寄存器進(jìn)行配置外,89C52還要對(duì)nRF905的工作模式進(jìn)行切換控制。
評(píng)論