test

Committer:
TVA
Date:
Mon Feb 08 18:56:11 2021 +0000
Revision:
1:397813654863
Parent:
0:8491d8911089
Child:
2:8fd249f35ceb
Test2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
TVA 0:8491d8911089 1 /* mbed Microcontroller Library
TVA 0:8491d8911089 2 * Copyright (c) 2019 ARM Limited
TVA 0:8491d8911089 3 * SPDX-License-Identifier: Apache-2.0
TVA 0:8491d8911089 4 */
TVA 0:8491d8911089 5
TVA 0:8491d8911089 6 #include "mbed.h"
TVA 0:8491d8911089 7 #include "platform/mbed_thread.h"
TVA 0:8491d8911089 8
TVA 0:8491d8911089 9
TVA 0:8491d8911089 10 // Blinking rate in milliseconds
TVA 0:8491d8911089 11 #define BLINKING_RATE_MS 500
TVA 0:8491d8911089 12
TVA 0:8491d8911089 13 #define RST_PIN P5_6
TVA 0:8491d8911089 14 #define MFIO_PIN P5_4
TVA 0:8491d8911089 15
TVA 0:8491d8911089 16 I2C i2c(P3_4, P3_5);
TVA 0:8491d8911089 17
TVA 1:397813654863 18 const int addr = 0x55;
TVA 0:8491d8911089 19
TVA 0:8491d8911089 20 int main()
TVA 0:8491d8911089 21 {
TVA 0:8491d8911089 22 i2c.frequency(400000);
TVA 0:8491d8911089 23 char cmd[4];
TVA 1:397813654863 24
TVA 0:8491d8911089 25 // Initialise the digital pin LED1 as an output
TVA 0:8491d8911089 26 DigitalOut led(LED1);
TVA 0:8491d8911089 27 DigitalOut rst(RST_PIN);
TVA 0:8491d8911089 28 DigitalOut mfio(MFIO_PIN);
TVA 0:8491d8911089 29
TVA 0:8491d8911089 30 mfio = 1;
TVA 0:8491d8911089 31 rst = 1;
TVA 0:8491d8911089 32 thread_sleep_for(10);
TVA 0:8491d8911089 33 rst = 0;
TVA 0:8491d8911089 34 thread_sleep_for(10);
TVA 0:8491d8911089 35 rst = 1;
TVA 0:8491d8911089 36 thread_sleep_for(1500);
TVA 1:397813654863 37
TVA 1:397813654863 38 scanI2C();
TVA 0:8491d8911089 39
TVA 0:8491d8911089 40 while (true) {
TVA 0:8491d8911089 41 cmd[0] = 0x02;
TVA 0:8491d8911089 42 cmd[1] = 0x00;
TVA 0:8491d8911089 43 i2c.write(addr, cmd, 2);
TVA 0:8491d8911089 44 thread_sleep_for(2);
TVA 0:8491d8911089 45
TVA 0:8491d8911089 46 cmd[0] = 0x00;
TVA 0:8491d8911089 47 cmd[1] = 0x00;
TVA 0:8491d8911089 48 i2c.read(addr, cmd, 2);
TVA 0:8491d8911089 49 printf("1: %x %x\n", cmd[0], cmd[1]);
TVA 0:8491d8911089 50
TVA 0:8491d8911089 51
TVA 0:8491d8911089 52 cmd[0] = 0xFF;
TVA 0:8491d8911089 53 cmd[1] = 0x03;
TVA 0:8491d8911089 54 i2c.write(addr, cmd, 2);
TVA 0:8491d8911089 55 thread_sleep_for(2);
TVA 0:8491d8911089 56
TVA 0:8491d8911089 57 cmd[0] = 0x00;
TVA 0:8491d8911089 58 cmd[1] = 0x00;
TVA 0:8491d8911089 59 cmd[2] = 0x00;
TVA 0:8491d8911089 60 cmd[3] = 0x00;
TVA 0:8491d8911089 61 i2c.read(addr, cmd, 4);
TVA 0:8491d8911089 62 printf("2: %d %d %d %d\n", cmd[0], cmd[1], cmd[2], cmd[3]);
TVA 0:8491d8911089 63
TVA 0:8491d8911089 64 /*rst =! rst;
TVA 0:8491d8911089 65 mfio =! mfio;*/
TVA 0:8491d8911089 66 thread_sleep_for(BLINKING_RATE_MS);
TVA 0:8491d8911089 67 led = !led;
TVA 0:8491d8911089 68 }
TVA 0:8491d8911089 69 }