The MCR20A Wireless UART application functions as an wireless UART bridge between two (one-to-one) or several (one to many) boards. The application can be used with both a TERM, or with software that is capable of opening a serial port and writing to or reading from it. The characters sent or received are not necessarily ASCII printable characters.

Dependencies:   fsl_phy_mcr20a fsl_smac mbed-rtos mbed

Fork of mcr20_wireless_uart by Freescale

By default, the application uses broadcast addresses for OTA communication. This way, the application can be directly downloaded and run without any user intervention. The following use case assumes no changes have been done to the project.

  • Two (or more) MCR20A platforms (plugged into the FRDM-K64F Freescale Freedom Development platform) have to be connected to the PC using the mini/micro-USB cables.
  • The code must be downloaded on the platforms via CMSIS-DAP (or other means).
  • After that, two or more TERM applications must be opened, and the serial ports must be configured with the same baud rate as the one in the project (default baud rate is 115200). Other necessary serial configurations are 8 bit, no parity, and 1 stop bit.
  • To start the setup, each platform must be reset, and one of the (user) push buttons found on the MCR20A platform must be pressed. The user can press any of the non-reset buttons on the FRDM-K64F Freescale Freedom Development platform as well. *This initiates the state machine of the application so user can start.

Documentation

SMAC Demo Applications User Guide

Committer:
cotigac
Date:
Sun Mar 15 06:08:30 2015 +0000
Revision:
16:549f2f246ece
Parent:
RF_Drivers_Atmel/driverDebug.h@13:4fa8e504061f
Minor updates to compile also online

Who changed what in which revision?

UserRevisionLine numberNew contents of line
sam_grove 2:3e7685cfb2a7 1 /*
sam_grove 2:3e7685cfb2a7 2 * driverDebug.h
sam_grove 2:3e7685cfb2a7 3 *
sam_grove 2:3e7685cfb2a7 4 * Created on: 21 May 2014
sam_grove 2:3e7685cfb2a7 5 * Author: jarpas01
sam_grove 2:3e7685cfb2a7 6 */
sam_grove 2:3e7685cfb2a7 7 #ifndef DRIVERDEBUG_H_
sam_grove 2:3e7685cfb2a7 8 #define DRIVERDEBUG_H_
sam_grove 2:3e7685cfb2a7 9
sam_grove 2:3e7685cfb2a7 10 #include "stdint.h"
sam_grove 2:3e7685cfb2a7 11
sam_grove 2:3e7685cfb2a7 12 //typedef unsigned char const prog_uint8_t;
sam_grove 2:3e7685cfb2a7 13
sam_grove 2:3e7685cfb2a7 14 extern void debug_integer(uint8_t width, uint8_t base, int16_t n);
sam_grove 2:3e7685cfb2a7 15 extern int16_t debug_get(void);
sam_grove 2:3e7685cfb2a7 16 extern int8_t debug_put(uint8_t byte);
sam_grove 2:3e7685cfb2a7 17 extern void debug_send(uint8_t *str);
sam_grove 2:3e7685cfb2a7 18 //extern void debug_send_const(prog_uint8_t *str);
sam_grove 2:3e7685cfb2a7 19 extern void printf_array(uint8_t *ptr , uint16_t len);
sam_grove 2:3e7685cfb2a7 20 extern void printf_string(uint8_t *ptr , uint16_t len);
sam_grove 2:3e7685cfb2a7 21 extern void printf_ipv6_address(uint8_t *addr_ptr);
sam_grove 2:3e7685cfb2a7 22 extern int8_t debug_init(uint32_t speed, uint8_t io_conf);
sam_grove 2:3e7685cfb2a7 23 extern void debug_interrupt_handler(void);
sam_grove 2:3e7685cfb2a7 24 extern uint32_t debug_round(uint32_t value, uint32_t divider);
sam_grove 2:3e7685cfb2a7 25
sam_grove 2:3e7685cfb2a7 26 /**
sam_grove 2:3e7685cfb2a7 27 * Macro for printing a constant string to the debug port.
sam_grove 2:3e7685cfb2a7 28 *
sam_grove 2:3e7685cfb2a7 29 * \param y pointer to the string
sam_grove 2:3e7685cfb2a7 30 *
sam_grove 2:3e7685cfb2a7 31 */
sam_grove 2:3e7685cfb2a7 32 //#define debug(y) debug_send_const(y);
sam_grove 2:3e7685cfb2a7 33 /**
sam_grove 2:3e7685cfb2a7 34 * Macro for printing a 8-bit variable in HEX format to the debug port.
sam_grove 2:3e7685cfb2a7 35 *
sam_grove 2:3e7685cfb2a7 36 * \param y 8-bit variable
sam_grove 2:3e7685cfb2a7 37 *
sam_grove 2:3e7685cfb2a7 38 */
sam_grove 2:3e7685cfb2a7 39 #define debug_hex(y) debug_integer(2, 16, y)
sam_grove 2:3e7685cfb2a7 40
sam_grove 2:3e7685cfb2a7 41 /**
sam_grove 2:3e7685cfb2a7 42 * Macro for printing a 8/16-bit variable in integer format to the debug port.
sam_grove 2:3e7685cfb2a7 43 *
sam_grove 2:3e7685cfb2a7 44 * \param y 8/16-bit variable
sam_grove 2:3e7685cfb2a7 45 *
sam_grove 2:3e7685cfb2a7 46 */
sam_grove 2:3e7685cfb2a7 47 #define debug_int(y) debug_integer(6, 10, y)
sam_grove 2:3e7685cfb2a7 48
sam_grove 2:3e7685cfb2a7 49
sam_grove 2:3e7685cfb2a7 50 #endif /* DRIVERDEBUG_H_ */