“Microduino-CoreRF/zh”的版本间的差异
502748957@qq.com(讨论 | 贡献) (→文档) |
18811016169(讨论 | 贡献) |
||
(未显示3个用户的28个中间版本) | |||
第3行: | 第3行: | ||
|- | |- | ||
| | | | ||
− | [[File: | + | [[File:DSC01831.JPG|400px|thumb|right|Microduino-CoreRF]] |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | Microduino-CoreRF是原生支持802.15.4无线协议的的AVR核心板, 它集成了802.15.4协议无线模块,支持基于802.15.4协议的无线模块,包括ZigBee,MAC/6LoWPAN和 RF4CE。 | ||
==特色== | ==特色== | ||
− | + | *集成802.15.4协议无线模块,支持任何基于802.15.4协议的无线模块,包括ZigBee,MAC/6LoWPAN和 RF4CE | |
− | * | ||
*小巧、便宜、堆叠、开放; | *小巧、便宜、堆叠、开放; | ||
*开源的硬件电路设计,与 Arduino 兼容的编程开发环境程; | *开源的硬件电路设计,与 Arduino 兼容的编程开发环境程; | ||
第20行: | 第15行: | ||
==规格== | ==规格== | ||
+ | 采用ATmega128RFA1核心: | ||
{|class="wikitable" | {|class="wikitable" | ||
|- | |- | ||
− | | | + | |供电||3.3 V |
|- | |- | ||
− | | | + | |Flash||128 KB |
|- | |- | ||
− | |EEPROM|| | + | |SRAM||16 KB |
+ | |- | ||
+ | |EEPROM||4 KB | ||
|- | |- | ||
|时钟速度||16 MHz | |时钟速度||16 MHz | ||
第32行: | 第30行: | ||
− | * Digital I/O 数字输入/ | + | * Digital I/O 数字输入/输出端共22个(其中6个支持ADC): |
− | ** | + | *2路硬串口: |
+ | **UART0_RX:D0 | ||
+ | **UART0_TX:D1 | ||
+ | **UART1_RX:D2 | ||
+ | **UART1_TX:D3 | ||
+ | *支持7路PWM: | ||
+ | **D4、D5、D6、D7、D8、D9、D10 | ||
+ | *6路外部中断: | ||
+ | **Interrupt0 (pin SCL) | ||
+ | **Interrupt1 (pin SDA) | ||
+ | **Interrupt2 (pin D2) | ||
+ | **Interrupt3 (pin D3) | ||
+ | **Interrupt4 (pin D5) | ||
+ | **Interrupt5 (pin D6) | ||
* Analog I/O 模拟输入端共10个: | * Analog I/O 模拟输入端共10个: | ||
** 在模块上标示为 A0,A1,A2,A3,A6,A7,D8(A8),D9(A9),D3(A10),D4(A11); | ** 在模块上标示为 A0,A1,A2,A3,A6,A7,D8(A8),D9(A9),D3(A10),D4(A11); | ||
** 每一个都提供了10位分辨率(即0~1024),默认情况下,模拟电压测量范围为GND至VCC电压值; | ** 每一个都提供了10位分辨率(即0~1024),默认情况下,模拟电压测量范围为GND至VCC电压值; | ||
** 详情请参阅'''[http://www.arduino.cc/en/Reference/AnalogRead analogRead()]'''函数。 | ** 详情请参阅'''[http://www.arduino.cc/en/Reference/AnalogRead analogRead()]'''函数。 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* SPI支持,共1路: | * SPI支持,共1路: | ||
** 在模块上标示为 D13(SCK),D12(MISO),D11(MOSI),D10(SS)。 | ** 在模块上标示为 D13(SCK),D12(MISO),D11(MOSI),D10(SS)。 | ||
* I2C支持,共1路: | * I2C支持,共1路: | ||
** 在模块上标示为 SDA(D18),SCL(D19)。 | ** 在模块上标示为 SDA(D18),SCL(D19)。 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
*引脚说明: | *引脚说明: | ||
− | |||
{|class="wikitable" | {|class="wikitable" | ||
| align="center" style="background:#f0f0f0;"|'''Pin''' | | align="center" style="background:#f0f0f0;"|'''Pin''' | ||
第74行: | 第73行: | ||
| 2||VCC||+3V3||||||||||||||||+3.3V | | 2||VCC||+3V3||||||||||||||||+3.3V | ||
|- | |- | ||
− | | 3||(OC0A/OC1C | + | | 3||(OC0A/OC1C)PB7||D7||D7||||||yes|||||||| |
|- | |- | ||
− | | 4||(OC1B | + | | 4||(OC1B)PB6||D8||D8||||||yes|||||||| |
|- | |- | ||
− | | 5||(OC1A | + | | 5||(OC1A)PB5||D9||D9||||||yes|||||||| |
|- | |- | ||
− | | 6||(SS) | + | | 6||(OC2A/SS)PB4||D10||D10||||||yes||||SS|||| |
|- | |- | ||
| 7||(PDI/MOSI)PB2||D11||D11||||||||||MOSI|||| | | 7||(PDI/MOSI)PB2||D11||D11||||||||||MOSI|||| | ||
第90行: | 第89行: | ||
| 10||AREF||AREF|||||||||||||||| | | 10||AREF||AREF|||||||||||||||| | ||
|- | |- | ||
− | | 11||(ADC7 | + | | 11||(ADC7)PF7||A0||D14||A0|||||||||||| |
|- | |- | ||
− | | 12||(ADC6 | + | | 12||(ADC6)PF6||A1||D15||A1|||||||||||| |
|- | |- | ||
− | | 13||(ADC5 | + | | 13||(ADC5)PF5||A2||D16||A2|||||||||||| |
|- | |- | ||
− | | 14||(ADC4 | + | | 14||(ADC4)PF4||A3||D17||A3|||||||||||| |
|- | |- | ||
− | | 15||(SDA | + | | 15||(SDA)PD1||SDA||D18||||1||||||||SDA|| |
|- | |- | ||
− | | 16||( | + | | 16||(SCL)PD0||SCL||D19||||0||||||||SCL|| |
|- | |- | ||
− | | 17||( | + | | 17||(ADC3)PF3||A6||D20||A6|||||||||||| |
|- | |- | ||
− | | 18||( | + | | 18||(ADC2)PF2||A7||D21||A7|||||||||||| |
|- | |- | ||
− | | 19||( | + | | 19||(RXD0)PE0||RX0||D0|||||||||0(RX)||||||| |
|- | |- | ||
− | | 20||( | + | | 20||(TXD0)PE1||TX1||D1|||||||||0(RX)||||||| |
|- | |- | ||
− | | 21||( | + | | 21||(RXD1)PD2||D2||D2||||2||||1(RX)|||||| |
|- | |- | ||
− | | 22||( | + | | 22||(TXD1)PD3||D3||D3||||3||||1(TX)|||||| |
|- | |- | ||
− | | 23||( | + | | 23||(OC3A)PE3||D4||D4|||||||yes||||||| |
|- | |- | ||
− | | 24||( | + | | 24||(OC3B)PE4||D5||D5||||4||yes|||||||| |
|- | |- | ||
− | | 25||( | + | | 25||(OC3C)PE5||D6||D6||||5||yes|||||||| |
|- | |- | ||
| 26||RESET||RST|||||||||||||||| | | 26||RESET||RST|||||||||||||||| | ||
第124行: | 第123行: | ||
| 27||GND||GND||||||||||||||||GND | | 27||GND||GND||||||||||||||||GND | ||
|} | |} | ||
+ | [[File:RF引脚.jpg|600px|thumb|center|Microduino-CoreRF引脚]] | ||
+ | [[File:CoreRFpinlayout.jpg|600px|thumb|center|Microduino-CoreRF元件]] | ||
+ | |||
+ | ==文档== | ||
+ | |||
+ | 【'''[[media:Microduino-Core RF.pdf |CoreRF原理图]]'''】 | ||
− | |||
− | |||
− | |||
* Microduino-coreRF中使用的主要元器件 | * Microduino-coreRF中使用的主要元器件 | ||
+ | ATmega128RFA1: | ||
+ | http://www.atmel.com/zh/cn/devices/ATMEGA128RFA1.aspx?tab=documents | ||
==开发== | ==开发== | ||
第143行: | 第147行: | ||
[[Microduino 四轴飞行器教程]] | [[Microduino 四轴飞行器教程]] | ||
+ | ==测试== | ||
+ | 使用ZigduinoRadio库的示例程序“ZigduinoRadioExample”来进行测试 | ||
+ | <source lang = "cpp"> | ||
+ | void loop() | ||
+ | { | ||
+ | if (Serial.available()) | ||
+ | { | ||
+ | ZigduinoRadio.beginTransmission(); | ||
+ | |||
+ | Serial.println(); | ||
+ | Serial.print("Tx: "); | ||
+ | |||
+ | while(Serial.available()) | ||
+ | { | ||
+ | char c = Serial.read(); | ||
+ | Serial.write(c); | ||
+ | ZigduinoRadio.write(c); | ||
+ | } | ||
+ | |||
+ | Serial.println(); | ||
+ | |||
+ | ZigduinoRadio.endTransmission(); | ||
+ | } | ||
+ | |||
+ | if (ZigduinoRadio.available()) | ||
+ | { | ||
+ | Serial.println(); | ||
+ | Serial.print("Rx: "); | ||
+ | |||
+ | while(ZigduinoRadio.available()) | ||
+ | Serial.write(ZigduinoRadio.read()); | ||
+ | |||
+ | Serial.println(); | ||
+ | Serial.print("LQI: "); | ||
+ | Serial.print(ZigduinoRadio.getLqi(), 10); | ||
+ | Serial.print(", RSSI: "); | ||
+ | Serial.print(ZigduinoRadio.getLastRssi(), 10); | ||
+ | Serial.print(" dBm, ED: "); | ||
+ | Serial.print(ZigduinoRadio.getLastEd(), 10); | ||
+ | Serial.println("dBm"); | ||
+ | } | ||
+ | |||
+ | delay(100); | ||
+ | } | ||
+ | |||
+ | void errHandle(radio_error_t err) | ||
+ | { | ||
+ | Serial.println(); | ||
+ | Serial.print("Error: "); | ||
+ | Serial.print((uint8_t)err, 10); | ||
+ | Serial.println(); | ||
+ | } | ||
+ | |||
+ | void onXmitDone(radio_tx_done_t x) | ||
+ | { | ||
+ | Serial.println(); | ||
+ | Serial.print("TxDone: "); | ||
+ | Serial.print((uint8_t)x, 10); | ||
+ | Serial.println(); | ||
+ | } | ||
+ | </source> | ||
+ | 该示例实现无线串口透传功能 | ||
+ | 因为Core RF采用串口下载,所以你先要叠加一个Microduino-USBTTL: | ||
+ | 板卡选择Microduino Core RF | ||
+ | [[File:154343ch79m113a77932i7.jpg|600px|thumb|center]] | ||
+ | 分别给两块Core-RF下载好程序以后,打开串口监视器,输入"Hello Microduino!"点击发送,会得到如下图结果: | ||
+ | [[File:Result.png|600px|thumb|center]] | ||
+ | [[File:Result1.png|600px|thumb|center]] | ||
+ | 至此测试完成 | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
==图库== | ==图库== | ||
− | + | *正面 | |
− | + | [[File:CORERFFRONT.jpg|600px|thumb|center|Front]] | |
− | + | *背面 | |
+ | [[File:CORERFBACK.jpg|600px|thumb|center|Back]] | ||
− | |||
|} | |} |
2018年6月12日 (二) 06:53的最新版本
Language | English |
---|
Microduino-CoreRF是原生支持802.15.4无线协议的的AVR核心板, 它集成了802.15.4协议无线模块,支持基于802.15.4协议的无线模块,包括ZigBee,MAC/6LoWPAN和 RF4CE。 特色
规格采用ATmega128RFA1核心:
文档
ATmega128RFA1: http://www.atmel.com/zh/cn/devices/ATMEGA128RFA1.aspx?tab=documents 开发
应用测试使用ZigduinoRadio库的示例程序“ZigduinoRadioExample”来进行测试 void loop()
{
if (Serial.available())
{
ZigduinoRadio.beginTransmission();
Serial.println();
Serial.print("Tx: ");
while(Serial.available())
{
char c = Serial.read();
Serial.write(c);
ZigduinoRadio.write(c);
}
Serial.println();
ZigduinoRadio.endTransmission();
}
if (ZigduinoRadio.available())
{
Serial.println();
Serial.print("Rx: ");
while(ZigduinoRadio.available())
Serial.write(ZigduinoRadio.read());
Serial.println();
Serial.print("LQI: ");
Serial.print(ZigduinoRadio.getLqi(), 10);
Serial.print(", RSSI: ");
Serial.print(ZigduinoRadio.getLastRssi(), 10);
Serial.print(" dBm, ED: ");
Serial.print(ZigduinoRadio.getLastEd(), 10);
Serial.println("dBm");
}
delay(100);
}
void errHandle(radio_error_t err)
{
Serial.println();
Serial.print("Error: ");
Serial.print((uint8_t)err, 10);
Serial.println();
}
void onXmitDone(radio_tx_done_t x)
{
Serial.println();
Serial.print("TxDone: ");
Serial.print((uint8_t)x, 10);
Serial.println();
}
该示例实现无线串口透传功能 因为Core RF采用串口下载,所以你先要叠加一个Microduino-USBTTL: 板卡选择Microduino Core RF 分别给两块Core-RF下载好程序以后,打开串口监视器,输入"Hello Microduino!"点击发送,会得到如下图结果: 至此测试完成
图库
|