stm32l010 gpio 7seg r2

Dependencies:   mbed

Committer:
caa45040
Date:
Tue Jun 22 08:15:55 2021 +0000
Revision:
0:e78400378e18
stm32l010 gpio 7seg 2

Who changed what in which revision?

UserRevisionLine numberNew contents of line
caa45040 0:e78400378e18 1 #include "mbed.h"
caa45040 0:e78400378e18 2
caa45040 0:e78400378e18 3 //* ***** *****
caa45040 0:e78400378e18 4 //* * * *
caa45040 0:e78400378e18 5 //* ****** * *
caa45040 0:e78400378e18 6 //* * * *
caa45040 0:e78400378e18 7 //* * * *
caa45040 0:e78400378e18 8 //******** ***** *****
caa45040 0:e78400378e18 9
caa45040 0:e78400378e18 10 #define swclk1 PA_5 //A4
caa45040 0:e78400378e18 11 #define swdio1 PA_7 //A6
caa45040 0:e78400378e18 12 #define en1 PA_4 //A3
caa45040 0:e78400378e18 13
caa45040 0:e78400378e18 14 DigitalOut swdclk(swclk1);
caa45040 0:e78400378e18 15 DigitalOut swdio(swdio1);
caa45040 0:e78400378e18 16 DigitalOut en(en1);
caa45040 0:e78400378e18 17
caa45040 0:e78400378e18 18 #define s60() for(ii=0;ii<60;ii++)wait_ms(1000);
caa45040 0:e78400378e18 19
caa45040 0:e78400378e18 20 char seg[32] = {
caa45040 0:e78400378e18 21 0x00 , //0 @ -> ' '
caa45040 0:e78400378e18 22 0x77 , //1 A o
caa45040 0:e78400378e18 23 0x7c , //2 B  combined use "6"
caa45040 0:e78400378e18 24 0x39 , //3 C
caa45040 0:e78400378e18 25 0x5e , //4 D
caa45040 0:e78400378e18 26 0x79 , //5 E o
caa45040 0:e78400378e18 27 0x71 , //6 F
caa45040 0:e78400378e18 28 0x3d , //7 G
caa45040 0:e78400378e18 29
caa45040 0:e78400378e18 30 0x76 , //8 H o
caa45040 0:e78400378e18 31 0x06 , //9 I  combined use "1"
caa45040 0:e78400378e18 32 0x1e , //10 J
caa45040 0:e78400378e18 33 0x75 , //11 K
caa45040 0:e78400378e18 34 0x38 , //12 L o
caa45040 0:e78400378e18 35 0x15 , //13 M
caa45040 0:e78400378e18 36 0x37 , //14 N o
caa45040 0:e78400378e18 37 0x3f , //15 O o combined use "0"
caa45040 0:e78400378e18 38
caa45040 0:e78400378e18 39 0x73 , //16 P
caa45040 0:e78400378e18 40 0x67 , //17 Q combined use "9"
caa45040 0:e78400378e18 41 0x50 , //18 R
caa45040 0:e78400378e18 42 0x6d , //19 S combined use "5"
caa45040 0:e78400378e18 43 0x78 , //20 T
caa45040 0:e78400378e18 44 0x3e , //21 U
caa45040 0:e78400378e18 45 0x1c , //22 V
caa45040 0:e78400378e18 46 0x2a , //23 W o
caa45040 0:e78400378e18 47 0x64 , //24 X
caa45040 0:e78400378e18 48
caa45040 0:e78400378e18 49 0x6e , //25 Y
caa45040 0:e78400378e18 50 0x5b , //26 Z combined use "2"
caa45040 0:e78400378e18 51 0x4f , //27 [ --> "3"
caa45040 0:e78400378e18 52 0x66 , //28 \ --> "4"
caa45040 0:e78400378e18 53 0x27 , //29 ] --> "7"
caa45040 0:e78400378e18 54 0x7f , //26 ^ --> "8"
caa45040 0:e78400378e18 55 0x08 //31 _
caa45040 0:e78400378e18 56 };
caa45040 0:e78400378e18 57
caa45040 0:e78400378e18 58 // 12345678 12345678 12345678 12345678
caa45040 0:e78400378e18 59 char b8[8] = {0b10000000,0b01000000,0b00100000,0b00010000,
caa45040 0:e78400378e18 60 0b00001000,0b00000100,0b00000010,0b00000001 };
caa45040 0:e78400378e18 61
caa45040 0:e78400378e18 62 void seg1(char v)
caa45040 0:e78400378e18 63 {
caa45040 0:e78400378e18 64 v=seg[v-64];
caa45040 0:e78400378e18 65 for(int jj=0;jj<8;jj++){
caa45040 0:e78400378e18 66 if( (v & b8[jj]) == 0 ){
caa45040 0:e78400378e18 67 swdio=0; //ビットが0
caa45040 0:e78400378e18 68 } else {
caa45040 0:e78400378e18 69 swdio=1; //ビットが1
caa45040 0:e78400378e18 70 }//endif
caa45040 0:e78400378e18 71 swdclk=1;swdclk=0; //clk
caa45040 0:e78400378e18 72 }//for
caa45040 0:e78400378e18 73 en=1;
caa45040 0:e78400378e18 74 en=0;
caa45040 0:e78400378e18 75 }//seg1
caa45040 0:e78400378e18 76
caa45040 0:e78400378e18 77 int main() {
caa45040 0:e78400378e18 78
caa45040 0:e78400378e18 79 int ii; //ループカウンター
caa45040 0:e78400378e18 80
caa45040 0:e78400378e18 81 en=0;
caa45040 0:e78400378e18 82 swdclk=0;
caa45040 0:e78400378e18 83
caa45040 0:e78400378e18 84 //0分
caa45040 0:e78400378e18 85 seg1('O');
caa45040 0:e78400378e18 86 s60();
caa45040 0:e78400378e18 87
caa45040 0:e78400378e18 88 //1分
caa45040 0:e78400378e18 89 seg1('I');
caa45040 0:e78400378e18 90 s60();
caa45040 0:e78400378e18 91
caa45040 0:e78400378e18 92 //2分
caa45040 0:e78400378e18 93 seg1('Z');
caa45040 0:e78400378e18 94 s60();
caa45040 0:e78400378e18 95
caa45040 0:e78400378e18 96 //3分
caa45040 0:e78400378e18 97 seg1('[');
caa45040 0:e78400378e18 98
caa45040 0:e78400378e18 99 while(1){} //無限ループ
caa45040 0:e78400378e18 100
caa45040 0:e78400378e18 101 }//main