Rtos API example

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers main.cpp Source File

main.cpp

00001 #include "test_env.h"
00002 #include "mbed_semihost_api.h"
00003 
00004 #define MAC_VENDOR_ARM_0    0x00
00005 #define MAC_VENDOR_ARM_1    0x02
00006 #define MAC_VENDOR_ARM_2    0xF7
00007 
00008 int main() {
00009     MBED_HOSTTEST_TIMEOUT(10);
00010     MBED_HOSTTEST_SELECT(default_auto);
00011     MBED_HOSTTEST_DESCRIPTION(Semihost);
00012     MBED_HOSTTEST_START("MBED_22");
00013 
00014     printf("Semihost connected: %s\n", (semihost_connected()) ? ("Yes") : ("No"));
00015 
00016     char uid[DEVICE_ID_LENGTH + 1] = {0};
00017     bool result = true;
00018 
00019     const int ret = mbed_interface_uid(uid);
00020     if (ret == 0) {
00021         printf("UID: %s\r\n", uid);
00022     }
00023     else {
00024         result = false;
00025     }
00026 
00027     char mac[6] = {0};  // @param mac A 6-byte array to write the MAC address
00028     mbed_mac_address(mac);
00029     printf("MAC Address: %02X:%02X:%02X:%02X:%02X:%02X\r\n", mac[0], mac[1], mac[2], mac[3], mac[4], mac[5]);
00030 
00031     if (mac[0] == MAC_VENDOR_ARM_0 &&
00032         mac[1] == MAC_VENDOR_ARM_1 &&
00033         mac[2] == MAC_VENDOR_ARM_2) {
00034         printf("MAC Address Prefix: 00:02:F7, Vendor: ARM\r\n");
00035     }
00036 
00037     MBED_HOSTTEST_RESULT(result);
00038 }