#include "mbed.h"
Serial uart(SERIAL_TX,SERIAL_RX);
int a = 0;
int main() {
uart.baud(9600);
while(1)
{
uart.printf("a = %d\n", a++);
char c = uart.getc();
if (c != 0)
{
uart.printf("napsal jsi %c\n", c);
}
}
}
#include "mbed.h"
Serial serial(SERIAL_TX, SERIAL_RX);
DigitalOut myled(LED1);
int main()
{
serial.baud(115200);
for (int i = 0; i < 5*2; ++i) { // 5x zablikání LED s periodou 50 ms
myled = !myled;
wait(0.05);
}
serial.putc('i');
myled = 0;
while (1) {
while(!serial.readable()) {
//aktivní čekání na přijetí bytu
}
int c = serial.getc();
int ok = 1;
switch(c) {
case 's':
myled = 1;
break;
case 'e':
myled = 0;
break;
default:
ok = 0;
}
while (!serial.writeable()) {}
serial.putc(ok ? 'a' : 'f');
}
}
#include "mbed.h"
#define DISPLAY_ADDRESS 0x27<<1
I2C i2c(I2C_SDA, I2C_SCL);
const unsigned char seven_seg_digits_decode_gfedcba[75]= {
/* 0 1 2 3 4 5 6 7 8 9 : ; */
0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07, 0x7F, 0x6F, 0x00, 0x00,
/* < = > ? @ A B C D E F G */
0x00, 0x48, 0x00, 0x00, 0x00, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71, 0x7D,
/* H I J K L M N O P Q R S */
0x76, 0x30, 0x1E, 0x00, 0x38, 0x00, 0x54, 0x3F, 0x73, 0x00, 0x50, 0x6D,
/* T U V W X Y Z [ \ ] ^ _ */
0x78, 0x1C, 0x3E, 0x00, 0x00, 0x00, 0x5B, 0x00, 0x00, 0x00, 0x00, 0x08,
/* ` a b c d e f g h i j k */
0x00, 0x77, 0x7C, 0x58, 0x5E, 0x79, 0x71, 0x6F, 0x74, 0x30, 0x1E, 0x00,
/* l m n o p q r s t u v w */
0x30, 0x00, 0x54, 0x5C, 0x73, 0x67, 0x50, 0x6D, 0x78, 0x1C, 0x3E, 0x00,
/* x y z */
0x00, 0x6E, 0x5B
};
int main()
{
char data_write[2];
int i = 0;
while (1) {
data_write[0] = 0; // pozice na displeji - 0, 1, 2, 3
data_write[1] = seven_seg_digits_decode_gfedcba[i];
i2c.write(DISPLAY_ADDRESS, data_write, 2, 0);
if(++i > 9)
i = 0;
wait(1.0);
}
}