boart test board
Dependencies: USBDevice mbed-dev lwip
Fork of USBSerial_HelloWorld by
main.cpp@13:d838b256c7e0, 2018-07-24 (annotated)
- Committer:
- ua1arn
- Date:
- Tue Jul 24 16:01:45 2018 +0000
- Revision:
- 13:d838b256c7e0
- Parent:
- 12:d15a7d7feb12
- Child:
- 15:825cce18de03
add local copy (edited) of mbed-os (source code version).
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
samux | 7:5e693654d5b4 | 1 | #include "mbed.h" |
samux | 7:5e693654d5b4 | 2 | #include "USBSerial.h" |
ua1arn | 11:eeb36b2beeda | 3 | |
ua1arn | 11:eeb36b2beeda | 4 | |
ua1arn | 12:d15a7d7feb12 | 5 | static USBSerial pc(0xFFFF, 0x0002, 0x0001); |
ua1arn | 11:eeb36b2beeda | 6 | |
ua1arn | 12:d15a7d7feb12 | 7 | //static DigitalOut beep(PB_11); |
ua1arn | 12:d15a7d7feb12 | 8 | static PwmOut beep(PB_11); |
ua1arn | 11:eeb36b2beeda | 9 | |
ua1arn | 12:d15a7d7feb12 | 10 | /**TIM3 GPIO Configuration |
ua1arn | 12:d15a7d7feb12 | 11 | PA7 ------> TIM3_CH2 |
ua1arn | 12:d15a7d7feb12 | 12 | PB0 ------> TIM3_CH3 !!!! |
ua1arn | 12:d15a7d7feb12 | 13 | PB1 ------> TIM3_CH4 |
ua1arn | 12:d15a7d7feb12 | 14 | PB4 ------> TIM3_CH1 |
ua1arn | 12:d15a7d7feb12 | 15 | */ |
ua1arn | 12:d15a7d7feb12 | 16 | /**TIM4 GPIO Configuration |
ua1arn | 12:d15a7d7feb12 | 17 | PD12 ------> TIM4_CH1 |
ua1arn | 12:d15a7d7feb12 | 18 | PD13 ------> TIM4_CH2 |
ua1arn | 12:d15a7d7feb12 | 19 | */ |
ua1arn | 12:d15a7d7feb12 | 20 | |
ua1arn | 12:d15a7d7feb12 | 21 | static DigitalIn button(PE_2); |
ua1arn | 12:d15a7d7feb12 | 22 | static DigitalIn opn_sw(PD_7); |
ua1arn | 12:d15a7d7feb12 | 23 | static DigitalOut din(PA_7); |
ua1arn | 12:d15a7d7feb12 | 24 | static DigitalOut din_light(PB_1); |
ua1arn | 12:d15a7d7feb12 | 25 | static DigitalOut ud_pwm(PD_12); |
ua1arn | 12:d15a7d7feb12 | 26 | static DigitalOut lr_pwm(PD_13); |
ua1arn | 11:eeb36b2beeda | 27 | //PwmOut UD_PWM(PD_12); |
ua1arn | 11:eeb36b2beeda | 28 | //PwmOut LR_PWM(PD_13); |
ua1arn | 11:eeb36b2beeda | 29 | |
ua1arn | 13:d838b256c7e0 | 30 | static Serial bt(PG_14, PG_9, 9600); // tx, rx USART6 work |
ua1arn | 12:d15a7d7feb12 | 31 | static Serial rfid(PD_5, PD_6, 9600); // tx, rx USART2 work |
ua1arn | 13:d838b256c7e0 | 32 | static Serial wifi(PA_9, PA_10, 9600); // tx, rx USART1 work |
ua1arn | 13:d838b256c7e0 | 33 | static Serial fifi2(PB_10, PC_5, 9600); // tx, rx USART3 - overlap with STDIO USART |
ua1arn | 12:d15a7d7feb12 | 34 | |
ua1arn | 12:d15a7d7feb12 | 35 | #define I2CADDR1 0x5F // 0xbe |
ua1arn | 12:d15a7d7feb12 | 36 | #define I2CADDR2 0x6B // 0xd6 |
ua1arn | 12:d15a7d7feb12 | 37 | |
ua1arn | 12:d15a7d7feb12 | 38 | |
ua1arn | 11:eeb36b2beeda | 39 | static I2C i2c(PB_9, PB_8); |
ua1arn | 11:eeb36b2beeda | 40 | |
ua1arn | 11:eeb36b2beeda | 41 | int main(void) |
ua1arn | 11:eeb36b2beeda | 42 | { |
ua1arn | 12:d15a7d7feb12 | 43 | |
ua1arn | 12:d15a7d7feb12 | 44 | //wifi.baud(115200); |
ua1arn | 12:d15a7d7feb12 | 45 | //wifi2.baud(115200); |
ua1arn | 12:d15a7d7feb12 | 46 | |
ua1arn | 13:d838b256c7e0 | 47 | //beep.period((float) 0.001); //set la periode a 1khz |
ua1arn | 13:d838b256c7e0 | 48 | //beep.write(50); // duty |
ua1arn | 12:d15a7d7feb12 | 49 | din = 1; |
ua1arn | 12:d15a7d7feb12 | 50 | din_light = 1; |
ua1arn | 12:d15a7d7feb12 | 51 | ud_pwm = 1; |
ua1arn | 12:d15a7d7feb12 | 52 | lr_pwm = 1; |
ua1arn | 12:d15a7d7feb12 | 53 | |
ua1arn | 11:eeb36b2beeda | 54 | int i = 1; |
ua1arn | 11:eeb36b2beeda | 55 | int devices_found; |
ua1arn | 11:eeb36b2beeda | 56 | uint8_t curr_addr; |
ua1arn | 11:eeb36b2beeda | 57 | char data[1] = {'\0'}; |
ua1arn | 11:eeb36b2beeda | 58 | pc.printf("\r\n"); |
ua1arn | 11:eeb36b2beeda | 59 | pc.printf("Program begin\r\n"); |
ua1arn | 11:eeb36b2beeda | 60 | wait(1); |
ua1arn | 11:eeb36b2beeda | 61 | |
ua1arn | 12:d15a7d7feb12 | 62 | while(0) { |
ua1arn | 11:eeb36b2beeda | 63 | |
ua1arn | 11:eeb36b2beeda | 64 | devices_found = 0; |
ua1arn | 12:d15a7d7feb12 | 65 | //beep = !beep; |
ua1arn | 11:eeb36b2beeda | 66 | |
ua1arn | 11:eeb36b2beeda | 67 | for (i = 0; i < 128; i++) { |
ua1arn | 11:eeb36b2beeda | 68 | curr_addr = i << 1; |
ua1arn | 11:eeb36b2beeda | 69 | if (!i2c.write(curr_addr, data, 1)) { |
ua1arn | 11:eeb36b2beeda | 70 | pc.printf("found device at 0x%x\r\n", curr_addr); |
ua1arn | 11:eeb36b2beeda | 71 | devices_found++; |
ua1arn | 11:eeb36b2beeda | 72 | } |
ua1arn | 11:eeb36b2beeda | 73 | wait(0.2); |
ua1arn | 11:eeb36b2beeda | 74 | } |
ua1arn | 11:eeb36b2beeda | 75 | |
ua1arn | 11:eeb36b2beeda | 76 | pc.printf("%d devices found\r\n", devices_found); |
ua1arn | 11:eeb36b2beeda | 77 | wait(2); |
ua1arn | 11:eeb36b2beeda | 78 | } |
ua1arn | 11:eeb36b2beeda | 79 | |
ua1arn | 11:eeb36b2beeda | 80 | while(1) { |
ua1arn | 12:d15a7d7feb12 | 81 | //beep = 1; |
ua1arn | 12:d15a7d7feb12 | 82 | //beep.period((float) 0.001); //set la periode a 1khz |
ua1arn | 12:d15a7d7feb12 | 83 | pc.printf("I am a virtual serial port - phase a1, btn=%d\r\n", (int) opn_sw.read()); |
ua1arn | 11:eeb36b2beeda | 84 | wait(1) |
ua1arn | 11:eeb36b2beeda | 85 | ; |
ua1arn | 12:d15a7d7feb12 | 86 | //beep = 0; |
ua1arn | 11:eeb36b2beeda | 87 | //BEEP.period((float) 0.002); //set la periode a 1khz |
ua1arn | 12:d15a7d7feb12 | 88 | pc.printf("I am a virtual serial port - phase a2, btn=%d\r\n", (int) opn_sw.read()); |
ua1arn | 11:eeb36b2beeda | 89 | wait(1) |
ua1arn | 11:eeb36b2beeda | 90 | ; |
samux | 7:5e693654d5b4 | 91 | } |
samux | 7:5e693654d5b4 | 92 | } |