test

Committer:
TVA
Date:
Mon Feb 08 20:38:11 2021 +0000
Revision:
2:8fd249f35ceb
Parent:
1:397813654863
Child:
3:0e37515b92f1
test3

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 2:8fd249f35ceb 18 const int addr = 0xAA;//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 2:8fd249f35ceb 30 mfio = 0;
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 2:8fd249f35ceb 36 //thread_sleep_for(1500);
TVA 2:8fd249f35ceb 37 thread_sleep_for(100);
TVA 2:8fd249f35ceb 38
TVA 2:8fd249f35ceb 39 //scanI2C();
TVA 0:8491d8911089 40
TVA 0:8491d8911089 41 while (true) {
TVA 0:8491d8911089 42 cmd[0] = 0x02;
TVA 0:8491d8911089 43 cmd[1] = 0x00;
TVA 0:8491d8911089 44 i2c.write(addr, cmd, 2);
TVA 0:8491d8911089 45 thread_sleep_for(2);
TVA 0:8491d8911089 46
TVA 0:8491d8911089 47 cmd[0] = 0x00;
TVA 0:8491d8911089 48 cmd[1] = 0x00;
TVA 0:8491d8911089 49 i2c.read(addr, cmd, 2);
TVA 0:8491d8911089 50 printf("1: %x %x\n", cmd[0], cmd[1]);
TVA 0:8491d8911089 51
TVA 0:8491d8911089 52
TVA 2:8fd249f35ceb 53
TVA 2:8fd249f35ceb 54
TVA 2:8fd249f35ceb 55
TVA 2:8fd249f35ceb 56
TVA 2:8fd249f35ceb 57 cmd[0] = 0x01;
TVA 2:8fd249f35ceb 58 cmd[1] = 0x00;
TVA 2:8fd249f35ceb 59 cmd[2] = 0x00;
TVA 2:8fd249f35ceb 60 i2c.write(addr, cmd, 2);
TVA 2:8fd249f35ceb 61 thread_sleep_for(1500);
TVA 2:8fd249f35ceb 62
TVA 2:8fd249f35ceb 63
TVA 2:8fd249f35ceb 64
TVA 2:8fd249f35ceb 65 mfio = 0;
TVA 2:8fd249f35ceb 66 thread_sleep_for(1);
TVA 2:8fd249f35ceb 67
TVA 2:8fd249f35ceb 68
TVA 2:8fd249f35ceb 69
TVA 2:8fd249f35ceb 70
TVA 2:8fd249f35ceb 71
TVA 2:8fd249f35ceb 72 cmd[0] = 0x02;
TVA 2:8fd249f35ceb 73 cmd[1] = 0x00;
TVA 2:8fd249f35ceb 74 i2c.write(addr, cmd, 2);
TVA 2:8fd249f35ceb 75 thread_sleep_for(2);
TVA 2:8fd249f35ceb 76
TVA 2:8fd249f35ceb 77 cmd[0] = 0x00;
TVA 2:8fd249f35ceb 78 cmd[1] = 0x00;
TVA 2:8fd249f35ceb 79 i2c.read(addr, cmd, 2);
TVA 2:8fd249f35ceb 80 printf("2: %x %x\n", cmd[0], cmd[1]);
TVA 2:8fd249f35ceb 81
TVA 2:8fd249f35ceb 82
TVA 2:8fd249f35ceb 83
TVA 2:8fd249f35ceb 84
TVA 2:8fd249f35ceb 85
TVA 0:8491d8911089 86 cmd[0] = 0xFF;
TVA 0:8491d8911089 87 cmd[1] = 0x03;
TVA 0:8491d8911089 88 i2c.write(addr, cmd, 2);
TVA 0:8491d8911089 89 thread_sleep_for(2);
TVA 0:8491d8911089 90
TVA 0:8491d8911089 91 cmd[0] = 0x00;
TVA 0:8491d8911089 92 cmd[1] = 0x00;
TVA 0:8491d8911089 93 cmd[2] = 0x00;
TVA 0:8491d8911089 94 cmd[3] = 0x00;
TVA 0:8491d8911089 95 i2c.read(addr, cmd, 4);
TVA 2:8fd249f35ceb 96 printf("3: %d %d %d %d\n", cmd[0], cmd[1], cmd[2], cmd[3]);
TVA 0:8491d8911089 97
TVA 0:8491d8911089 98 /*rst =! rst;
TVA 0:8491d8911089 99 mfio =! mfio;*/
TVA 0:8491d8911089 100 thread_sleep_for(BLINKING_RATE_MS);
TVA 0:8491d8911089 101 led = !led;
TVA 0:8491d8911089 102 }
TVA 0:8491d8911089 103 }