1.spi初始化
//spi引腳配置 sck mosi nss 配置為推挽輸出 miso配置為輸入
gpio_init( spi_clk_gpio_port, spi_clk_gpio_pin, gpio_mode_out_pp_low_fast );//
gpio_init( spi_mosi_gpio_port, spi_mosi_gpio_pin, gpio_mode_out_pp_high_fast );
gpio_init( spi_nss_gpio_port, spi_nss_gpio_pin, gpio_mode_out_pp_high_fast );
gpio_init( spi_miso_gpio_port, spi_miso_gpio_pin, gpio_mode_in_pu_no_it );
spi_deinit();
spi_init(spi_firstbit_msb, spi_baudrateprescaler_8, spi_mode_master, spi_clockpolarity_low, spi_clockphase_1edge, spi_datadirection_2lines_fullduplex, spi_nss_soft, 0x00);
spi_cmd(enable);
2. nrf24l01初始化
void nrf24l01_gpio_init( void )
3. nrf24l01寫指定長度 資料, 位址裝置中有效 寫入0x20 | addr的位址資料, 由兩段字元組成,寫配置暫存器0x20命令 + 操作傳送暫存器,然後往傳送暫存器中寫入資料pbuff
void nrf24l01_write_buf( uint8_t regaddr, uint8_t *pbuf, uint8_t len )
rf24l01_set_cs_high( ); //取消片選
STM32軟體SPI實現NRF24L01
nrf一共是八個引腳,除去vcc和gnd還有六個引腳。所以我們只需要配置這六個引腳就可以了。這六個引腳分別是sck,mosi,miso,csn,ce,irq 除了miso和irq配置成輸入,其他的都配置為輸出即可,其實如果不配irq也沒事,如果有需要的話可以配置,不配的也是可以的,不會影響微控制器的...
nRF24L01 使用說明
bit0 prim rx設定工作模式,傳送或接收,0 傳送 1 接收。bit1 pwm up設定是否上電,晶元在傳送或接收完成後根據此位判斷是進入powerdown模式 0 還是進入standby模式 1 bit2 crco設定crc的位元組數,0 1byte 1 2byte。bit3 en crc...
NRF24L01的通訊距離
nrf24l01模組的傳輸距離由 使用什麼天線 是否加了功率晶元 程式中選擇的傳輸速率 空曠和有障礙物 四個因素決定。目前市場上的nrf24l01有三種模組。1.天線在pcb上 零售價6元 15元 該模組的天線在pcb上,沒有加功率晶元,屬於傳輸距離最短的模組。空曠條件下,經過實測,2m傳輸速率下1...