Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Homepage
bc_antを使うサンプルコード
#include "mbed.h" #include "bc_ant.h" DigitalOut myled(LED1); Serial pc(USBTX, USBRX); // USBTX - Tranmit on USB USBRX - receive on USB bc_ant antPort(p13, p14, p15); // for BC-ANT-SERIAL #define MAX_BUFSIZE 64 #define ANT_CH 0 #define DEVICE_NUMBER 65 /** * Recieved a message from ANT port. */ void receivedFromAnt() { uint8_t receivedLength = 0; uint8_t receivedBuffer[MAX_BUFSIZE]; receivedLength = antPort.BC_ANT_RecvPacket(receivedBuffer, MAX_BUFSIZE); printf("RX(%3d):", receivedLength); for (int index = 0; index < receivedLength; index++) { printf("%02x ", receivedBuffer[index]); } printf("\r\n"); } /** * Moving command received from HOST */ void sendToAnt(uint8_t *buffer) { antPort.ANT_SendAcknowledgedData(ANT_CH, buffer); } /** * initializes ANT port */ int initialize_ANTport(bool isReceive) { antPort.ANT_ResetSystem(); if (isReceive == true) { // receiver mode antPort.ANT_AssignChannel(ANT_CH, ANT_Bidirectional_Slave, 0); } else { // sender mode antPort.ANT_AssignChannel(ANT_CH, ANT_Bidirectional_Master, 0); } antPort.ANT_SetChannelId(ANT_CH, DEVICE_NUMBER, 1, 1); antPort.ANT_SetChannelPeriod_Hz(ANT_CH, 4); antPort.ANT_SetChannelRFFreq(ANT_CH, 4); // 2404 MHz antPort.ANT_OpenChannel(ANT_CH); if (isReceive == true) { // receiver mode antPort.attach(&receivedFromAnt); } else { // sender mode uint8_t buffer[MAX_BUFSIZE] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; antPort.ANT_SendBroadcastData(ANT_CH, buffer); } return (0); } /** * Main Routine */ int main() { pc.baud(9600); // set serial speed between PC and mbed. initialize_ANTport(true); // initialize BC-ANT-SERIAL for printf("--- READY ----\r\n"); while(1) { myled = 1; wait(0.2); myled = 0; wait(0.2); } }