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.
Dependencies: mbed
Fork of BeaconDemo_RobotCodeNew by
main.cpp
- Committer:
- jah128
- Date:
- 2015-10-03
- Revision:
- 0:8a5497a2e366
- Child:
- 1:f6356cf1cefc
File content as of revision 0:8a5497a2e366:
/***********************************************************************
** ██████╗ ███████╗██╗███████╗██╗ ██╗ █████╗ ██████╗ ███╗ ███╗ **
** ██╔══██╗██╔════╝██║██╔════╝██║ ██║██╔══██╗██╔══██╗████╗ ████║ **
** ██████╔╝███████╗██║███████╗██║ █╗ ██║███████║██████╔╝██╔████╔██║ **
** ██╔═══╝ ╚════██║██║╚════██║██║███╗██║██╔══██║██╔══██╗██║╚██╔╝██║ **
** ██║ ███████║██║███████║╚███╔███╔╝██║ ██║██║ ██║██║ ╚═╝ ██║ **
** ╚═╝ ╚══════╝╚═╝╚══════╝ ╚══╝╚══╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ **
************************************************************************
**(C) Dr James Hilder - York Robotics Laboratory - University of York **
***********************************************************************/
// PsiSwarm Example Main File
// Include psiswarm.h - this includes all the other necessary core files
#include "psiswarm.h"
// Use these variables to store the name for the program and the author
// NB: Keep the strings as short as possible (ie 12 chars or less) to ensure reliable comms
char * program_name = "Example";
char * author_name = "JAH-YRL";
// Place user variables here
char green = 3;
char red = 48;
int re =0 ;
int le =0;
//Place user code here that should be run after initialisation but before the main loop
void user_code_setup(){
/*
wait(2);
calibrate_base_ir_sensors();
wait(2);
*/
}
//This function is the loop where user code should be placed
void user_code_loop(){
//Do not place code within a loop, but consider this function to be a loop that is always run
//unless the user code is externally paused (such as by debug or recharging system)
/*
store_base_ir_values();
bt.printf("OFF: %d %d %d %d %d\n ON: %d %d %d %d %d\n\n",
get_background_base_ir_value(0),
get_background_base_ir_value(1),
get_background_base_ir_value(2),
get_background_base_ir_value(3),
get_background_base_ir_value(4),
get_illuminated_base_ir_value(0),
get_illuminated_base_ir_value(1),
get_illuminated_base_ir_value(2),
get_illuminated_base_ir_value(3),
get_illuminated_base_ir_value(4));
set_leds(green,red);
switch(green){
case 192: green = 129; break;
case 129: green = 3; break;
default: green = green << 1; break;
}
switch(red){
case 192: red = 129; break;
case 129: red = 3; break;
default: red = red << 1; break;
}
if(re != right_encoder){
re = right_encoder;
pc.printf("Right:%d\n",re);
}
if(le != left_encoder){
le = left_encoder;
pc.printf("Left:%d\n",le);
}
wait(0.3);
*/
}
// Code goes here to handle what should happen when the user switch is pressed
void handle_switch_event(char switch_state)
{
// Switch_state = 1 if up is pressed, 2 if down is pressed, 4 if left is pressed, 8 if right is pressed and 16 if the center button is pressed
}
// The main routine: it is recommended to leave this function alone and add user code to the above functions
int main() {
//init() in psiswarm.cpp sets up the robot
init();
user_code_setup();
user_code_running = 1;
while(1) {
if(user_code_running)user_code_loop();
if(demo_on) demo_mode();
wait_us(250);
}
}
