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 Lab_6_WaG by
main.cpp
- Committer:
- spm71
- Date:
- 2018-03-30
- Revision:
- 46:85c4b722baa7
- Parent:
- 45:54d18ab80fd1
- Child:
- 49:80d4ffabec16
File content as of revision 46:85c4b722baa7:
/******************************************************************************
* EECS 397
*
* Assignment Name: Lab 6: WaG
*
* Authors: Sam Morrison and Phong Nguyen
* File name: main.cpp
* Purpose: Configures the dispaly for 4-digit display or motor control
*
* Created: 03/01/2018
* Last Modified: 03/29/2018
*
******************************************************************************/
#include "mbed.h"
#include "io_pins.h"
#include "display.h"
#include "spi.h"
#include "stepper.h"
#include "utility.h"
#include "analog.h"
#include "laser.h"
#include "wag.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
SPI wag_spi(MOSI, MISO, SCLK);
Serial pc(USBTX, USBRX);
DigitalIn jog_cw(UI_JOG_RIGHT_BUTTON);
DigitalIn jog_ccw(UI_JOG_LEFT_BUTTON);
DigitalIn my_button(USER_BUTTON);
DigitalIn start_button(UI_START_BUTTON);
DigitalIn cal_button(UI_CAL_BUTTON);
DigitalIn station_select(UI_STATION_SELECT);
DigitalIn home_sensor(STP_HOME_SENSOR);
DigitalOut laser(LZR_ENABLE);
AnalogIn mux_out (MUX_OUT);
BusOut mux_select(MUX_S0, MUX_S1, MUX_S2, MUX_S3);
int station = -1;
int *cal_status = NOT_CALIBRATED;
struct spi_cfg as1107{
SPI_AS1107_ID,
DSP_AS1107_NCS,
SPI_NO_ID,
AS1107_SPI_FREQ,
AS1107_SPI_NO_BITS,
};
int main(void) {
initial_setup(as1107);
//set all digits to zero
spi_send(as1107, 0x0100);
spi_send(as1107, 0x0200);
spi_send(as1107, 0x0300);
spi_send(as1107, 0x0400);
pc.printf("Press user button to test.\n");
test_target_leds();
pc.printf("LED's tested\n");
test_phototransistors();
pc.printf("Phototransistors tested\n");
step_test();
pc.printf("Step motor tested.");
pc.printf("laser test\n");
while(1){
lzr_on();
wait(0.5);
lzr_off();
wait(0.5);
}
/*
while (my_button.read() == 0);
pc.printf("test begin\n");
lzr_init();
while (my_button.read() == 0) {
lzr_on();
wait(0.5);
lzr_off();
wait(0.5);
}
lzr_init();
*/
// determine if the wag is connected to station A or station B
station = station_select.read();
}
