Câu 1
#define nutnhan1 PA0
#define nutnhan2 PA1
#define led_hangchuc PB5
#define led_hangdv PB6
int maled_dv[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
int maled_chuc[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
void setup() {
// put your setup code here, to run once:
pinMode(PB0, OUTPUT);
pinMode(PB1, OUTPUT);
pinMode(PB3, OUTPUT);
pinMode(PB4, OUTPUT);
pinMode(PB5, OUTPUT);
pinMode(PB6, OUTPUT);
pinMode(PB7, OUTPUT);
pinMode(PB8, OUTPUT);
pinMode(PA5, OUTPUT);
pinMode(PA6, OUTPUT);
pinMode(nutnhan1,INPUT);
pinMode(nutnhan2,INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
int sodem=0;
if(digitalRead(nutnhan1)==0){
sodem=sodem+1;
if(sodem==100){
sodem=0;
}
Hien_thi(sodem);
while(digitalRead(nutnhan1)==0);
}
if(digitalRead(nutnhan2)==0){
sodem=sodem-1;
if(sodem==-1){
sodem=99;
}
Hien_thi(sodem);
while (digitalRead(nutnhan2)==0);
}
}
void Hien_thi(int gia_tri){
GPIOB->ODR=maled_chuc[gia_tri/10];
digitalWrite(led_hangchuc,LOW);
delay(1);
digitalWrite(led_hangchuc,HIGH);
GPIOB->ODR=maled_dv[gia_tri%10];
digitalWrite(led_hangdv, LOW);
delay(1);
digitalWrite(led_hangdv, HIGH);
}
Câu 2
#define led1 PA7
#define led2 PA6
#define led3 PA5
#define led4 PA4
#define led5 PA3
#define led6 PA2
#define led7 PA1
#define led8 PA0
#define nutnhan1 PB3
#define nutnhan2 PB4
void setup() {
// put your setup code here, to run once:
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
pinMode(nutnhan1, INPUT);
pinMode(nutnhan2, INPUT);
}
void loop() {
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
if(digitalRead(nutnhan1)==0){
digitalWrite(led1, LOW);
delay(200);
digitalWrite(led1, HIGH);
digitalWrite(led2, LOW);
delay(200x);
digitalWrite(led2, HIGH);
digitalWrite(led3, LOW);
delay(200);
digitalWrite(led3, HIGH);
digitalWrite(led4, LOW);
delay(200);
digitalWrite(led4, HIGH);
digitalWrite(led5, LOW);
delay(200);
digitalWrite(led5, HIGH);
digitalWrite(led6, LOW);
delay(200);
digitalWrite(led6, HIGH);
digitalWrite(led7, LOW);
delay(200);
digitalWrite(led7, HIGH);
digitalWrite(led8, LOW);
delay(200);
digitalWrite(led8, HIGH);
while(digitalRead(nutnhan1)==0);
}
if(digitalRead(nutnhan2)==1){
digitalWrite(led1, LOW);
digitalWrite(led8, LOW);
delay(200);
digitalWrite(led2, LOW);
digitalWrite(led7, LOW);
delay(200);
digitalWrite(led3, LOW);
digitalWrite(led6, LOW);
delay(200);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
delay(200);
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
digitalWrite(led6, HIGH);
digitalWrite(led7, HIGH);
digitalWrite(led8, HIGH);
while(digitalRead(nutnhan2)==1);
}
}
Câu 4
#define nutnhan1 PB0
#define nutnhan2 PB1
int maled_dv[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
int maled_chuc[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
void setup() {
// put your setup code here, to run once:
pinMode(PB6, OUTPUT);
pinMode(PB7, OUTPUT);
pinMode(PB8, OUTPUT);
pinMode(PB9, OUTPUT);
pinMode(PB10, OUTPUT);
pinMode(PB11, OUTPUT);
pinMode(PB12, OUTPUT);
pinMode(PB13, OUTPUT);
pinMode(PA0, OUTPUT);
pinMode(PA1, OUTPUT);
pinMode(PA2, OUTPUT);
pinMode(PA3, OUTPUT);
pinMode(PA4, OUTPUT);
pinMode(PA5, OUTPUT);
pinMode(PA6, OUTPUT);
pinMode(PA7, OUTPUT);
pinMode(nutnhan1,INPUT);
pinMode(nutnhan2,INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
int sodem=0;
if(digitalRead(nutnhan1)==0){
sodem=sodem+2;
if(sodem==101){
sodem=1;
}
if(sodem==100){
sodem=0;
}
else{
sodem==0;
}
Hien_thi(sodem);
while(digitalRead(nutnhan1)==0);
}
if(digitalRead(nutnhan2)==0){
sodem=sodem-2;
if(sodem==-2){
sodem=98;
}
if(sodem==-1){
sodem=99;
}
else{
sodem==0;
}
}
Hien_thi(sodem);
while(digitalRead(nutnhan2)==0);
}
void Hien_thi(int gia_tri){
GPIOB->ODR=maled_dv[gia_tri%10];
GPIOA->ODR=maled_chuc[gia_tri/10];
}
Câu 5
#define nutnhan1 PB0
#define nutnhan2 PB1
#define led_hangchuc PB8
#define led_hangdv PB9
int maled_dv[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
int maled_chuc[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
void setup() {
// put your setup code here, to run once:
pinMode(PA0, OUTPUT);
pinMode(PA1, OUTPUT);
pinMode(PA3, OUTPUT);
pinMode(PA4, OUTPUT);
pinMode(PA5, OUTPUT);
pinMode(PA6, OUTPUT);
pinMode(PA7, OUTPUT);
pinMode(PA8, OUTPUT);
pinMode(PA5, OUTPUT);
pinMode(PA6, OUTPUT);
pinMode(nutnhan1,INPUT);
pinMode(nutnhan2,INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
int sodem=0;
if(digitalRead(nutnhan1)==1){
sodem=sodem+2;
if(sodem==100){
sodem=0;
}
if(sodem==101){
sodem=1;
}
Hien_thi(sodem);
while(digitalRead(nutnhan1)==1);
}
if(digitalRead(nutnhan2)==1){
sodem=sodem-2;
if(sodem==-1){
sodem=99;
}
if(sodem==-2){
sodem=98;
}
Hien_thi(sodem);
while (digitalRead(nutnhan2)==1);
}
}
void Hien_thi(int gia_tri){
GPIOB->ODR=maled_chuc[gia_tri/10];
digitalWrite(led_hangchuc,LOW);
delay(1);
digitalWrite(led_hangchuc,HIGH);
GPIOB->ODR=maled_dv[gia_tri%10];
digitalWrite(led_hangdv, LOW);
delay(1);
digitalWrite(led_hangdv, HIGH);
}
Câu 6
#define led1 PA0
#define led2 PA1
#define led3 PA2
#define led4 PA3
#define led5 PA4
#define led6 PA5
#define led7 PA6
#define led8 PA7
#define nutnhan1 PB0
#define nutnhan2 PB1
void setup() {
// put your setup code here, to run once:
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
pinMode(led6, OUTPUT);
pinMode(led7, OUTPUT);
pinMode(led8, OUTPUT);
pinMode(nutnhan1, INPUT);
pinMode(nutnhan2, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
if(digitalRead(nutnhan1)==0){
digitalWrite(led8, HIGH);
delay(200);
digitalWrite(led7, HIGH);
delay(200);
digitalWrite(led6, HIGH);
delay(200);
digitalWrite(led5, HIGH);
delay(200);
digitalWrite(led4, HIGH);
delay(200);
digitalWrite(led3, HIGH);
delay(200);
digitalWrite(led2, HIGH);
delay(200);
digitalWrite(led1, HIGH);
delay(200);
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led6, LOW);
digitalWrite(led7, LOW);
digitalWrite(led8, LOW);
while(digitalRead(nutnhan1)==0);
}
if(digitalRead(nutnhan2)==0){
digitalWrite(led4, HIGH);
digitalWrite(led5, HIGH);
delay(200);
digitalWrite(led4, LOW);
digitalWrite(led5, LOW);
digitalWrite(led3, HIGH);
digitalWrite(led6, HIGH);
delay(200);
digitalWrite(led3, LOW);
digitalWrite(led6, LOW);
digitalWrite(led2, HIGH);
digitalWrite(led7, HIGH);
delay(200);
digitalWrite(led2, LOW);
digitalWrite(led7, LOW);
digitalWrite(led1, HIGH);
digitalWrite(led8, HIGH);
delay(200);
digitalWrite(led1, LOW);
digitalWrite(led8, LOW);
while(digitalRead(nutnhan2)==0);
}
}
Câu 8
#define nutnhan1 PB0
#define nutnhan2 PB1
int maled_dv[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
int maled_chuc[10] = { 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8,
0x80, 0x90 };
void setup() {
// put your setup code here, to run once:
pinMode(PB3, OUTPUT);
pinMode(PB4, OUTPUT);
pinMode(PB5, OUTPUT);
pinMode(PB6, OUTPUT);
pinMode(PB7, OUTPUT);
pinMode(PB8, OUTPUT);
pinMode(PB9, OUTPUT);
pinMode(PB10, OUTPUT);
pinMode(PA0, OUTPUT);
pinMode(PA1, OUTPUT);
pinMode(PA2, OUTPUT);
pinMode(PA3, OUTPUT);
pinMode(PA4, OUTPUT);
pinMode(PA5, OUTPUT);
pinMode(PA6, OUTPUT);
pinMode(PA7, OUTPUT);
pinMode(nutnhan1,INPUT);
pinMode(nutnhan2,INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
KIEM_TRA_PHIM();
}
void KIEM_TRA_PHIM(){
int sodem=0;
if(digitalRead(nutnhan1)==1){
sodem=sodem+2;
if(sodem==101){
sodem=1;
}
if(sodem==100){
sodem=0;
}
else{
sodem==0;
}
Hien_thi(sodem);
while(digitalRead(nutnhan1)==1);
}
if(digitalRead(nutnhan2)==1){
sodem=sodem-2;
if(sodem==-2){
sodem=98;
}
if(sodem==-1){
sodem=99;
}
else{
sodem==0;
}
}
Hien_thi(sodem);
while(digitalRead(nutnhan2)==1);
}
void Hien_thi(int gia_tri){
GPIOB->ODR=maled_dv[gia_tri%10];
GPIOA->ODR=maled_chuc[gia_tri/10];
}