2022-02-04 10:28:01 索煒達(dá)電子 1828
項(xiàng)目編號(hào):E2520
文件大小:2.6M
源碼說(shuō)明:帶中文注釋
開(kāi)發(fā)環(huán)境:C編譯器
簡(jiǎn)要概述:
基于NRF24L01的無(wú)線搖桿,含接收和發(fā)射端的PCB和原理圖, 以及單片機(jī)代碼。主要原理是,搖桿端單片機(jī)采集按鍵狀態(tài),通過(guò)NRF24L01發(fā)送給接收端, 接收端單片機(jī)通過(guò)USB接口虛擬成一個(gè)USB搖桿設(shè)備, 收到搖桿端發(fā)過(guò)來(lái)的數(shù)據(jù)后,通過(guò)USB上報(bào)給主機(jī)。
Keil代碼(需要安裝相應(yīng)的庫(kù)才能打開(kāi))
目錄│文件列表:
└ 基于NRF24L01的無(wú)線搖桿
├ joystick-Sender-STM32F103C8
│ │ JLinkSettings.ini
│ │ lunzhou.uvgui.Kelly
│ │ lunzhou.uvguix.Kelly
│ │ lunzhou.uvopt
│ │ lunzhou.uvoptx
│ │ lunzhou.uvproj.saved_uv4
│ │ lunzhou.uvprojx
│ ├ Libraries
│ │ ├ CMSIS
│ │ │ │ License.doc
│ │ │ └ Core
│ │ │ ├ CM3
│ │ │ │ │ core_cm3.c
│ │ │ │ │ core_cm3.h
│ │ │ │ │ stm32f10x.h
│ │ │ │ │ system_stm32f10x.c
│ │ │ │ │ system_stm32f10x.h
│ │ │ │ └ startup
│ │ │ │ └ arm
│ │ │ │ │ startup_stm32f10x_cl.s
│ │ │ │ │ startup_stm32f10x_hd.s
│ │ │ │ │ startup_stm32f10x_hd_vl.s
│ │ │ │ │ startup_stm32f10x_ld.s
│ │ │ │ │ startup_stm32f10x_ld_vl.s
│ │ │ │ │ startup_stm32f10x_md.s
│ │ │ │ │ startup_stm32f10x_md_vl.s
│ │ │ │ └ startup_stm32f10x_xl.s
│ │ └ STM32F10x_StdPeriph_Driver
│ │ ├ inc
│ │ │ │ misc.h
│ │ │ │ stm32f10x_adc.h
│ │ │ │ stm32f10x_bkp.h
│ │ │ │ stm32f10x_can.h
│ │ │ │ stm32f10x_cec.h
│ │ │ │ stm32f10x_crc.h
│ │ │ │ stm32f10x_dac.h
│ │ │ │ stm32f10x_dbgmcu.h
│ │ │ │ stm32f10x_dma.h
│ │ │ │ stm32f10x_exti.h
│ │ │ │ stm32f10x_flash.h
│ │ │ │ stm32f10x_fsmc.h
│ │ │ │ stm32f10x_gpio.h
│ │ │ │ stm32f10x_i2c.h
│ │ │ │ stm32f10x_iwdg.h
│ │ │ │ stm32f10x_pwr.h
│ │ │ │ stm32f10x_rcc.h
│ │ │ │ stm32f10x_rtc.h
│ │ │ │ stm32f10x_sdio.h
│ │ │ │ stm32f10x_spi.h
│ │ │ │ stm32f10x_tim.h
│ │ │ │ stm32f10x_usart.h
│ │ │ └ stm32f10x_wwdg.h
│ │ └ src
│ │ │ misc.c
│ │ │ stm32f10x_adc.c
│ │ │ stm32f10x_bkp.c
│ │ │ stm32f10x_can.c
│ │ │ stm32f10x_cec.c
│ │ │ stm32f10x_crc.c
│ │ │ stm32f10x_dac.c
│ │ │ stm32f10x_dbgmcu.c
│ │ │ stm32f10x_dma.c
│ │ │ stm32f10x_exti.c
│ │ │ stm32f10x_flash.c
│ │ │ stm32f10x_fsmc.c
│ │ │ stm32f10x_gpio.c
│ │ │ stm32f10x_i2c.c
│ │ │ stm32f10x_iwdg.c
│ │ │ stm32f10x_pwr.c
│ │ │ stm32f10x_rcc.c
│ │ │ stm32f10x_rtc.c
│ │ │ stm32f10x_sdio.c
│ │ │ stm32f10x_spi.c
│ │ │ stm32f10x_tim.c
│ │ │ stm32f10x_usart.c
│ │ └ stm32f10x_wwdg.c
│ ├ OutPut
│ │ └ Joystick_Sender_F103C8.hex
│ ├ RTE
│ │ └ RTE_Components.h
│ └ SRC
│ │ 24l01.c
│ │ 24l01.h
│ │ IIC.c
│ │ IIC.h
│ │ main.c
│ │ NRF24L01.c
│ │ NRF24L01.h
│ │ spi.c
│ │ spi.h
│ │ STM32F103C8_3.5.lib
│ │ stm32f10x_conf.h
│ │ stm32f10x_it.c
│ └ stm32f10x_it.h
├ PCB-接收發(fā)射合在一塊板子上,裁開(kāi)即可
│ │ Joystick.PcbDoc
│ │ Joystick.PrjPCB
│ └ Joystick.SchDoc
└ USB-receiver-STM32F072C8
│ JLinkSettings.ini
│ STM32F042.uvguix.Administrator
│ STM32F042.uvguix.Kelly
│ STM32F042.uvoptx
│ STM32F042.uvprojx
├ Lib
│ ├ inc
│ │ │ stm32f0xx_adc.h
│ │ │ stm32f0xx_can.h
│ │ │ stm32f0xx_cec.h
│ │ │ stm32f0xx_comp.h
│ │ │ stm32f0xx_crc.h
│ │ │ stm32f0xx_crs.h
│ │ │ stm32f0xx_dac.h
│ │ │ stm32f0xx_dbgmcu.h
│ │ │ stm32f0xx_dma.h
│ │ │ stm32f0xx_exti.h
│ │ │ stm32f0xx_flash.h
│ │ │ stm32f0xx_gpio.h
│ │ │ stm32f0xx_i2c.h
│ │ │ stm32f0xx_iwdg.h
│ │ │ stm32f0xx_misc.h
│ │ │ stm32f0xx_pwr.h
│ │ │ stm32f0xx_rcc.h
│ │ │ stm32f0xx_rtc.h
│ │ │ stm32f0xx_spi.h
│ │ │ stm32f0xx_syscfg.h
│ │ │ stm32f0xx_tim.h
│ │ │ stm32f0xx_usart.h
│ │ └ stm32f0xx_wwdg.h
│ ├ src
│ │ │ STM32F042.lib
│ │ │ stm32f0xx_adc.c
│ │ │ stm32f0xx_can.c
│ │ │ stm32f0xx_cec.c
│ │ │ stm32f0xx_comp.c
│ │ │ stm32f0xx_crc.c
│ │ │ stm32f0xx_crs.c
│ │ │ stm32f0xx_dac.c
│ │ │ stm32f0xx_dbgmcu.c
│ │ │ stm32f0xx_dma.c
│ │ │ stm32f0xx_exti.c
│ │ │ stm32f0xx_flash.c
│ │ │ stm32f0xx_gpio.c
│ │ │ stm32f0xx_i2c.c
│ │ │ stm32f0xx_iwdg.c
│ │ │ stm32f0xx_misc.c
│ │ │ stm32f0xx_pwr.c
│ │ │ stm32f0xx_rcc.c
│ │ │ stm32f0xx_rtc.c
│ │ │ stm32f0xx_spi.c
│ │ │ stm32f0xx_syscfg.c
│ │ │ stm32f0xx_tim.c
│ │ │ stm32f0xx_usart.c
│ │ └ stm32f0xx_wwdg.c
│ ├ Sys
│ │ │ arm_common_tables.h
│ │ │ arm_const_structs.h
│ │ │ arm_math.h
│ │ │ core_cm0.h
│ │ │ core_cm0plus.h
│ │ │ core_cm3.h
│ │ │ core_cm4.h
│ │ │ core_cm4_simd.h
│ │ │ core_cmFunc.h
│ │ │ core_cmInstr.h
│ │ │ core_sc000.h
│ │ │ core_sc300.h
│ │ │ stm32f0xx.h
│ │ │ system_stm32f0xx.c
│ │ └ system_stm32f0xx.h
│ └ USB
│ │ joystick1_core.c
│ │ joystick1_core.h
│ │ joystick2_core.c
│ │ joystick2_core.h
│ │ STM32F042USBCore.lib
│ │ usbd_conf.h
│ │ usbd_conf_template.h
│ │ usbd_core.c
│ │ usbd_core.h
│ │ usbd_def.h
│ │ usbd_desc.c
│ │ usbd_desc.h
│ │ usbd_hid_cdc_wrapper.c
│ │ usbd_hid_cdc_wrapper.h
│ │ usbd_ioreq.c
│ │ usbd_ioreq.h
│ │ usbd_pwr.c
│ │ usbd_pwr.h
│ │ usbd_req.c
│ │ usbd_req.h
│ │ usbd_usr.c
│ │ usbd_usr.h
│ │ usb_bsp.c
│ │ usb_bsp.h
│ │ usb_bsp_template.c
│ │ usb_conf.h
│ │ usb_conf_template.h
│ │ usb_core.c
│ │ usb_core.h
│ │ usb_dcd.c
│ │ usb_dcd.h
│ │ usb_dcd_int.c
│ │ usb_dcd_int.h
│ └ usb_regs.h
├ MianC
│ │ 24l01.c
│ │ 24l01.h
│ │ main.c
│ │ readme.txt
│ │ spi.c
│ │ spi.h
│ │ stm32f0xx_conf.h
│ │ stm32f0xx_it.c
│ │ stm32f0xx_it.h
│ │ system_stm32f0xx.c
│ └ RTE
│ │ RTE_Components.h
│ ├ Device
│ │ └ STM32F042F6
│ │ │ startup_stm32f042.s
│ │ └ system_stm32f0xx.c
│ └ USB
│ │ USBD_Config_0.c
│ │ USBD_Config_HID_0.h
│ └ USBD_Config_HID_1.h
├ Objects
│ └ USB_receiver_F072C8.hex
└ RTE
│ RTE_Components.h
└ Device
├ STM32F042F6
│ │ startup_stm32f042.s
│ └ system_stm32f0xx.c
└ STM32F072C8
│ startup_stm32f072.s
└ system_stm32f0xx.