TI,CC1101,演示板程序、AT32F413RCT7 或 STM32F103RCT6
|
|
6 months ago | |
|---|---|---|
| .vscode | 6 months ago | |
| STM32F10x_FWLib | 6 months ago | |
| app | 6 months ago | |
| core | 6 months ago | |
| image | 6 months ago | |
| keil_v5 | 6 months ago | |
| peripheral | 6 months ago | |
| project | 6 months ago | |
| radio | 6 months ago | |
| README.md | 6 months ago | |
| README.pdf | 6 months ago | |
| gitFocePushRemote.bat | 6 months ago | |
| gitInit.bat | 6 months ago | |
| gitPushRemote.bat | 6 months ago | |
| keilkilll.bat | 6 months ago |
adapterBoardDriver
ʾ
շͨѶ
6
S1ƶ꣨ѡᷴԣѡֵѭƶѡS2ԷһS3ƶ꣨ѡᷴԣѡֵѭƶѡS4ܴS51ʱ½빦ѡ档2ȷѡĿ3˳״̬
2
D5ɫLEDͳɹָʾƵ
D4ɫLEDճɹָʾƵ
оѶӵҺģJLX19296G-382-PN
Һģ֧4SPIнӿںIICӿڣĿʹIICӿʾС192*96
ֹ֧
USBMICRO-Bͷ
3*5ŵع
2pinPHӹ磬עѹܳ5V
87mm*131.5mm
433MHz490MHz868MHz915MHz
SX1268SX1262LLCC68
AT32F413RCT7MCUSTM32F103RCT6Ӳ
P7תUSB
J1J2MCUGPIO
P1microBITۣģתӰ
P7MICRO-BUSBӣ
P6ⲿ
P5¼ӿ
MDK-ARM Standard Version: 5.14.0.0
C99
STM32F10x_StdPeriph_Lib_V3.5.0
-->S5-->ѡEnter RF Transmiter
-->S5-->Packet Tx
-->S5-->ʼͣͬʱSTART˸ʾ
ɺ6SյACK·ͣͬʱطʱʱ䣨ӿʼ͵յACKʱ䣩ʱԶطʱط10κطʱʱԶл6S
ͳɹD5ɫLED˸һ¡
413msΪӿʼ͵յԷظӦĵʱ䣬ôʾOUTʾյȴACKʱ100%ΪͳƵĶʣ°°S5¼hello world?Ϊյݰе?λõַÿζһ-004dBmΪһյݰźǿ
-->S5-->ѡEnter RF Receiver
-->S5-->Packet Rx
-->S5-->ʼգͬʱSTART˸ʾ
յݺD4ɫLED˸һ
11.67mAΪǰģĹ-13dBmΪһյݰźǿhello world2hello world3hello world4Ϊյ3ݰյµݰʱʾϹ
뷢Ͳ[style=bold,label="myRadio_receiver"]; 뷢Ͳ -> ʱ䵽[style=bold,label="myRadio_receiver"]; ʱ䵽 -> Ƶ[style=bold,label="myRadio_transmit"]; Ƶ -> [style=bold,label="ص\nrfRx_callback\n״ֵ̬\nTX_STA_SECCESS"]; -> ½״̬[style=bold,label="myRadio_receiver"]; } ">
-->S5-->ѡEnter RF Setting
-->S5-->Setting
S1S3лĿȷҪõĿS5вãĹ˸ʾʱͨS1S3µڲٰS5˳ãѡѡá
TypeѡӦģͺţǰdemoĹ̼ܻݶͺŵģ飬ͺŵģԹһ̼
ChnlõǰģŵŵӦʻTypeͺStepŵöıStepŵÿŵ֮Ƶʴʵ̫ССļܻɲͬŵ豸ƵɸšTxPower߷书ʡ书ԽԽߣӦͨѶҲԽԶRfBr߲ʡ߲ʵĴСʵĴС߲ԽʱԽСӦĴԽ̣֮ԽԶյͨѶ룬ųص£Դ߷书ʺ߲
ҪļradioеAPIȫֲӲصȫradio/myRadio_gpio.cУĿƽ̨ҲCԻļradioеļֻӦradio/myRadio_gpio.cļеGPIOȿɣmyRadio_gpio.cõGPIOǺ궨project/board.hҲҪradio/board.hеĶֲMCUƽ̨Ҳģֻproject/board.hжӦĺ궨弴ɡ
˾ΪͳһdemoƵصIJ¶һ㣬radio/myRadio.cӦÿԲο
IOھproject/board.h
RSTţϵʼҪõIO1ţڽоƬжӦָʾ̸ͽжӦָʾûжӳ书IO3ţڽоƬжӦָʾ̸δʹãûжӳ书busyţڼƵоƬ״̬Ƿæ״̬IOδʹãɸʵֲ
ʹƵΪƵоƬʹõľƵģ羧ƵΪ32MHzҪʹ448MHzƵ
ȱ֤SPIͨѶSPIʱƵоƬҪãͨʾǽӲ
SPIͨѶһԲ鿴ĴдĴжֲɹ
Ӱߴ
ߵƵףʹõƵκ߲
书
棬ͬ߶źŵĽЧӰܴ
·ģҪǰʹõΧ¥ľɽڵ
źŸ
sleep
sleep״̬params.Fields.WarmStart = 1;params.Fields.WarmStart = 0;
params.Fields.WarmStart = 1:ֱӵRadio.RxRadio.Send
params.Fields.WarmStart = 0:ҪóʼܵRadio.RxRadio.Send
ѹ3.3V@SX126xSetDio3AsTcxoCtrl( TCXO_CTRL_3_3V, RADIO_TCXO_SETUP_TIME << 6 );
..\adapterBoardDriver_xxxxxxxxxxxxxxx_Vxx
app \\Ӧģװ
|
core \\MCUںļ
|
STM32F10x_FWLib \\MCUٷ⺯
image \\mdļʾõͼƬ
|
keil_v5 \\keilļɵHEXļ
| Object \\ɵHEXļڴļ
peripheral \\ĿõMCU
|
project \\ĿGPIOļ
|
radio \\Ƶײļ
| myRadio_gpio.c \\ƵӿӲʼ
| myRadio.c \\ΪӦͨ÷װAPI
ʼ-void myRadio_init(int agr0, void *agr1_ptr)
ƵоƬIOڳʼ-myRadio_gpio_init()
Ƶʼ
ƵеײִAPI-void myRadio_process(void)
whileѭִ
ƵAPI-void myRadio_abort(void)
ȡƵ-uint32_t myRadio_getFrequency(void)
Ƶ-void myRadio_setFrequency(uint32_t freq)
ȡ书-int8_t myRadio_getTxPower(void)
÷书-void myRadio_setTxPower(int8_t power)
ȡ߲-uint8_t myRadio_getBaudrate(void)
߲-void myRadio_setBaudrate(uint8_t br)
ݰģʽ-void myRadio_transmit(rfTxPacket_ts *packet)
ݰģʽ-void myRadio_receiver(void)
ģʽ-void myRadio_setCtrl(controlMode_te mode, uint32_t value)
ز书ܣԤ
directģʽԤ
ƲԤ
Ƶжϻصvoid myRadio_gpioCallback(uint8_t index)
ⲿжϼⶨmyRadio_gpio.c
ٷδ壬ڵijAPIͬҵƵһ
| GDOx_CFG[5:0] | Description |
|---|---|
| 0 0x00 | RX FIFO RX FIFO 䵽 RX FIFO ֵʱԡ RX FIFO ľͬһֵʱȡ |
| 1 0x01 | RX FIFO RX FIFO 䵽 RX FIFO ֵݰĩβʱԡ RX FIFO Ϊʱȡԡ |
| 2 0x02 | TX FIFO TX FIFO ڻ TX FIFO ֵʱԡ TX FIFO ͬһֵʱȡ |
| 3 0x03 | TX FIFO TX FIFO ʱԡ TX FIFO ľ TX FIFO ֵʱȡԡ |
| 4 0x04 | RX FIFO ʱˢ FIFO ʱȡԡ |
| 5 0x05 | TX FIFO ʱˢ FIFO ʱȡԡ |
| 6 0x06 | ڷ/ͬʱԣݰĩβȡԡ RX Уݰڵַȹ˶ߵRXFIFO_OVERFLOW״̬ʱҲȡλTX TX FIFO 磬Žȡλ |
| 7 0x07 | յ CRC OK ݰʱԡ RX FIFO ȡһֽʱȡ |
| 8 0x08 | ﵽǰ PQI ڱ̵ PQT ֵʱԡоƬ½ RX ״̬ MARCSTATE=0x0D PQI ڱ̵ PQT ֵʱȡλ |
| 9 0x09 | RSSI ֵʱΪߣȡڵǰCCA_MODEã |
| 10 0x0A | תߵƽPLL״̬ҪPLLӦMCUж |
| 11 0x0B | ʱӡͬģʽͬRXģʽ£GDOx_INV=0ʱCC1101½ݡTXģʽ£GDOx_INV=0. |
| 12 0x0C | ͬͬģʽ |
| 13 0x0D | 첽ģʽ |
| 14 0x0E | С RSSI ֵΪߡģʽʱ |
| 15 0x0F | CRC_OKCRCȽƥ䡣/ RX ģʽʱ |
| 16 0x10 | |
| 21 0x15 | C ڲ |
| 22 0x16 | RX_HARD_DATA[1]RX_SYMBOL_TICKһʹãRX |
| 23 0x17 | RX_HARD_DATA[0].RX_SYMBOL_TICKһʹãRX |
| 24 0x18 | |
| 26 0x1A | C ڲ |
| 27 0x1B | PA_PD. ע⣺PA_PD˯ߺ TX ״̬½ͬźŵƽҪʹ SLEEP ״̬Ӧпⲿ PA RX/TX أ GDOx_CFGx=0x2F |
| 28 0x1C | LNA_PD. ע⣺LNA_PD˯ߺͽ״̬½ͬźŵƽҪʹ SLEEP ״̬Ӧпⲿ LNA RX/TX أ GDOx_CFGx=0x2F |
| 29 0x1D | RX_SYMBOL_TICKRX_HARD_DATAһʹãRX |
| 30 0x1E | |
| 35 0x23 C ڲ | |
| 36 0x24 | WOR_EVNT0 |
| 37 0x25 | WOR_EVNT1 |
| 38 0x26 | CLK_256 |
| 39 0x27 | CLK_32k |
| 40 0x28 | C ڲ |
| 41 0x29 | CHIP_RDYn |
| 42 0x2A | C ڲ |
| 43 0x2B | XOSC_STABLE |
| 44 0x2C | C ڲ |
| 45 0x2D | C ڲ |
| 46 0x2E | 迹3 ̬ |
| 47 0x2F | HW Ϊ 0ͨ GDOx_INV=1 ʵ HW1ڿⲿ LNA/PA RX/TX |
| 48 (0x30) | CLK_XOSC/1 Note: There are 3 GDO pins, but only one CLK_XOSC/n can be selected as an output at any time. If CLK_XOSC/n is to be monitored on one of the GDO pins, the other two GDO pins must be configured to values less than 0x30. The GDO0 |
| 49 (0x31) | CLK_XOSC/1.5 |
| 50 (0x32) | CLK_XOSC/2 |
| 51 (0x33) | CLK_XOSC/3 |
| 52 (0x34) | CLK_XOSC/4 |
| 53 (0x35) | CLK_XOSC/6 |
| 54 (0x36) | CLK_XOSC/8 |
| 55 (0x37) | CLK_XOSC/12 |
| 56 (0x38) | CLK_XOSC/16 |
| 57 (0x39) | CLK_XOSC/24 |
| 58 (0x3A) | CLK_XOSC/32 |
| 59 (0x3B) | CLK_XOSC/48 |
| 60 (0x3C) | CLK_XOSC/64 |
| 61 (0x3D) | CLK_XOSC/96 |
| 62 (0x3E) | CLK_XOSC/128 |
| 63 (0x3F) | CLK_XOSC/192 |
1ֻṩʾĿʹãδĿ֤ͻʹãʹʽĿ⣬˾Ųʹùκ⣬ɼʱ뱾˾Աϵ 2ļҵĿֲ˾롣