这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
ocrobot:alpha:8f328d-rf:main [2017/10/03 07:46] – 弘毅 | ocrobot:alpha:8f328d-rf:main [2023/06/07 04:23] (当前版本) – 外部编辑 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ====== ALPHA 8F328D-RF ====== | ||
+ | ALPHA 8F328D-RF是一款低成本的无线物连控制器。 | ||
+ | |||
+ | ===== 参数 ===== | ||
+ | ^ MCU | LGT8F328D | ||
+ | ^ FLASH | 32Kbytes | ||
+ | ^ SRAM | 2Kbytes | ||
+ | ^ E2PROM | ||
+ | ^ PWM | 6路 | | ||
+ | ^ 主频 | ||
+ | ^ ADC | 6通道12位 | ||
+ | ^ DAC | 1通道8位 | ||
+ | ^ SPI | 有 | | ||
+ | ^ TWI(I2C) | ||
+ | ^ GUID(全局设备号) | ||
+ | ^ 内部基准 | ||
+ | <WRAP center round important 60%> | ||
+ | 板卡版本需要选择0.0.12版本 | ||
+ | </ | ||
+ | |||
+ | =====参考图片===== | ||
+ | {{: | ||
+ | {{: | ||
+ | |||
+ | =====环境初始化===== | ||
+ | 前往http:// | ||
+ | |||
+ | 打开IDE界面 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 选择板卡管理器 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 在管理器中选择 LGT的支持环境,点击安装 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 等待安装完成,进度条消失即可 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | 选择 LGT8F328D 板卡即可 | ||
+ | |||
+ | {{: | ||
+ | |||
+ | =====支持库的安装与例程===== | ||
+ | |||
+ | 支持库下载:{{: | ||
+ | |||
+ | 将此压缩包解压缩到IDE根目录的libraries目录下 | ||
+ | |||
+ | |||
+ | 随后取出两块主板,分别作为发信机和接收机进行通讯测试(自行做好标记) | ||
+ | |||
+ | 发信机程序如下: | ||
+ | |||
+ | <code cpp> | ||
+ | /* | ||
+ | * 发信机 | ||
+ | * 迷你强 | ||
+ | * chenglei1234@gmail.com | ||
+ | | ||
+ | | ||
+ | |||
+ | This program is free software; you can redistribute it and/or | ||
+ | | ||
+ | | ||
+ | */ | ||
+ | |||
+ | /* Connections: | ||
+ | |||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | */ | ||
+ | #include < | ||
+ | #include " | ||
+ | / | ||
+ | const uint8_t PIN_NRF_RST = 24; | ||
+ | const uint8_t PIN_NRF_CS = 21; | ||
+ | const uint8_t PIN_NRF_PKT = 23; | ||
+ | |||
+ | |||
+ | bool writer; | ||
+ | |||
+ | LT8900 lt(PIN_NRF_CS, | ||
+ | |||
+ | void setup() | ||
+ | { | ||
+ | // put your setup code here, to run once: | ||
+ | Serial.begin(9600); | ||
+ | Serial.println(F(" | ||
+ | /*SPI 初始化*/ | ||
+ | SPI.begin(); | ||
+ | SPI.setBitOrder(MSBFIRST); | ||
+ | SPI.setDataMode(SPI_MODE1); | ||
+ | SPI.setClockDivider(SPI_CLOCK_DIV4); | ||
+ | delay(500); | ||
+ | /*2.4G 射频初始化*/ | ||
+ | lt.begin(); | ||
+ | lt.setCurrentControl(15, | ||
+ | lt.setDataRate(LT8900:: | ||
+ | lt.setChannel(0x06); | ||
+ | } | ||
+ | |||
+ | void loop() | ||
+ | { | ||
+ | delay(2000); | ||
+ | uint8_t data[] = { ' | ||
+ | lt.sendPacket(data, | ||
+ | lt.whatsUp(Serial); | ||
+ | } | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | 接收机部分代码 | ||
+ | <code cpp> | ||
+ | /* | ||
+ | * 收信机 | ||
+ | * 迷你强 | ||
+ | * chenglei1234@gmail.com | ||
+ | | ||
+ | | ||
+ | |||
+ | This program is free software; you can redistribute it and/or | ||
+ | | ||
+ | | ||
+ | */ | ||
+ | |||
+ | /* Connections: | ||
+ | |||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | */ | ||
+ | |||
+ | #include < | ||
+ | #include " | ||
+ | |||
+ | const uint8_t PIN_NRF_RST = 24; | ||
+ | const uint8_t PIN_NRF_CS = 21; | ||
+ | const uint8_t PIN_NRF_PKT = 23; | ||
+ | |||
+ | |||
+ | LT8900 lt(PIN_NRF_CS, | ||
+ | |||
+ | void setup() | ||
+ | { | ||
+ | // put your setup code here, to run once: | ||
+ | Serial.begin(9600); | ||
+ | Serial.println(F(" | ||
+ | /*SPI 初始化*/ | ||
+ | SPI.begin(); | ||
+ | SPI.setBitOrder(MSBFIRST); | ||
+ | SPI.setDataMode(SPI_MODE1); | ||
+ | SPI.setClockDivider(SPI_CLOCK_DIV4); | ||
+ | delay(500); | ||
+ | /*2.4G 射频初始化*/ | ||
+ | lt.begin(); | ||
+ | lt.setCurrentControl(15, | ||
+ | lt.setDataRate(LT8900:: | ||
+ | lt.setChannel(0x06); | ||
+ | } | ||
+ | |||
+ | void loop() | ||
+ | { | ||
+ | if (lt.available()) | ||
+ | { | ||
+ | uint8_t buf[32]; | ||
+ | int packetSize = lt.read(buf, | ||
+ | if (packetSize > 0) // | ||
+ | { | ||
+ | Serial.println(F(" | ||
+ | |||
+ | for(int i = 0; i < packetSize; i++) // | ||
+ | { | ||
+ | Serial.print((char)buf[i]); | ||
+ | } | ||
+ | Serial.println(); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | Serial.println(F(" | ||
+ | } | ||
+ | lt.startListening(); | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | 如上,此时,接收机应该能够正常接受并显示发信机发送的字符串hello,如果数据包在传输过程中受损,自动CRC校验功能会发现并且提示CRC错误 | ||
+ | |||
+ | =====下载===== | ||
+ | **原理图:** | ||
+ | |||
+ | {{: | ||