NEW
Font size
WorksheetsÔn TẬP VI ĐIỀU KHIỂN
Total questions: 54
Worksheet time: 27mins
Kiểu dữ liệu “char” là kiểu:
*8 bit
16 bit
24 bit
32bit
iới hạn kiểu dữ liệu “char” là:
Từ 0 đến 255
từ 0 đến 65535
từ -256 đến 255
*Từ-128 đến 127
Kiểu dữ liệu “unsigned char” là kiểu:
8 bit
16 bit
24 bit
32 bit
Giới hạn kiểu dữ liệu “unsigned char” là:
Từ 0 đến 255
Từ 0 đến 65535
Từ – 256 đến 255
Từ – 128 đến 127.
Kiểu dữ liệu “int” là kiểu:
8 bit
16 bit
24 bit
32 bit
Giới hạn kiểu dữ liệu “ int” là:
từ 0 đến 255
Từ 0 đến 65535
Từ-256 đến 255
-32,768 đến 32,767
Kiểu dữ liệu “ unsigned int” là kiểu:
8 bit
16 bit
24 bit
32 bit
Giới hạn kiểu dữ liệu “unsigned int” là:
Từ 0 đến 255
Từ 0 đến 65535
Từ –256 đến 255
–32,768 đến 32,767
Toán tử nào là toán tử gán:
''=''
''%''
''/''
''&''
Toán tử nào là chia lấy số dư:
''=''
''%''
''/''
''&''
Toán tử nào là chia lấy số nguyên:
''=''
''%''
''/''
''&''
Toán tử nào là so sánh xem có bằng hay không:
''=''
''==''
''!=''
''<''
Toán tử nào là so sánh xem không bằng:
''=''
''==''
''!=''
''<''
Toán tử nào là so sánh nhỏ hơn hoặc bằng:
''>=''
''==''
''!=''
''<=''
Toán tử nào là AND 2 điều kiện với nhau:
''!''
''&''
''&&''
''//''
Toán tử nào là OR 2 điều kiện với nhau:
''!''
''&''
''&&''
''//''
Toán tử nào là phủ định dữ liệu:
''!''
''&''
''&&''
''//''
Kiểu dữ liệu nào là 8 bit:
char
int
long
float
Kiểu dữ liệu nào là 16 bit:
char
int
long
float
Kiểu dữ liệu nào là 32 bit:
char
int
unsigned int
float
Kiểu dữ liệu nào là 32 bit:
char
int
unsigned int
long
Khai báo nào là khai báo ký tự:
char
int
unsigned int
float
Khai báo nào là khai báo số nguyên:
char
int
unsigned int
float
Khai báo nào là khai báo số thực:
char
int
unsigned int
float
Chỉ dẫn “#define” có chức năng:
Chèn một đoạn lệnh từ file khác vào
Khai báo thư viện của vi điều khiển
Định nghĩa một đoạn chuỗi
Tất cả đều đúng
Chỉ dẫn “#include” có chức năng
Chèn một đoạn lệnh từ file khác vào
Khai báo thư viện của vi điều khiển
Định nghĩa một đoạn chuỗi
Tất cả đều đúng
Cấu trúc while(điều kiện – biểu thức boolean) sẽ thực hiện tiếp theo khi điều kiện:
Lớn hơn 1
Nhỏ hơn 1
Sai
Đúng
Cấu trúc do… while(điều kiện – biểu thức boolean) sẽ thực hiện tiếp theo khi điều kiện:
Lớn hơn 1
Nhỏ hơn 1
Sai
Đúng
Cấu trúc for(int i = 1; i<10; i++) sẽ thực hiện các lệnh trong vòng lặp:
10 lần
9 lần
99 lần
100 lần
Trong lệnh delay (9600). Thời gian tạm dừng chương trình là:
9600 us
9600 ms
9600 ns
96 s
Câu lệnh pinMode chân,kiểu vào/ra) là dùng để:
Xác định chân của mạch Arduino vào/ra
Xác định kiểu chân analog
Xác định kiểu chân digital
Không có cấu trúc lệnh này
T
Trong lập trình Arduino, lệnh if(button==HIGH)
{digitalWrite(led,HIGH);}có nghĩa
Kiểm tra nút nhấn có được nhấn, nếu nhấn nút thì thực hiện lệnh cho đèn sáng (mức HIGH)
Kiểm tra ngõ vào analog có đọc dữ liệu
Kiểm tra nếu nhấn nút thì cho đèn ở mức thấp
Không kiểm tra điều kiện gì cả
Một nút nhấn có điện trở kéo lên (PULL_UP) nối vào chân số 5
của Arduino thì khi chưa nhấn nút giá trị điện áp đưa vào chân số 5 là ở mức nào ? Hàm kiểm tra nếu đã nhấn nút thì thực hiện lệnh cho đèn sáng là gì?
Mức HIGH;if(button==0){led on};
Mức LOW; if (button==0) {led on};
Mức HIGH; if (button==1) {led on};
Mức LOW; if (button==1) {led on};
Trong lập trình Arduino, câu lệnh digitalRead(8) có ý nghĩa:
Đọc dữ liệu từ chân số 8 vào mạch Arduino
Ghi dữ liệu từ mạch Arduino ra chân số 8
Chỉ định chân 8 là chân ngõ vào
Cả a, b, c đều sai
Trong lập trình Arduino, hàm kiểm tra nút nhấn if ((button1==1)
|| (button2==1)) {led on}; có nghĩa là?
Nếu có nhấn nút nhấn 1 và có nhấn nút nhấn 2 thì cho đèn sáng.
Nếu có nhấn nút nhấn 1 hoặc có nhấn nút 2 thì cho đèn sáng.
Nếu có nhấn nút nhấn 1 và có nhấn nút nhấn 2 thì cho đèn tắt.
Nếu có nhấn nút nhấn 1 hoặc có nhấn nút nhấn 2 thì cho đèn tắt.
T
rong lập trình Arduino, hàm kiể m tra nút nhấn if ((button1==1)
&& (button2==1)) {led on}; có nghĩa là?
Nếu có 1 nút nhắn 1 và có nhấn nút nhấn 2 thì cho đèn sáng.
Nếu có nhấn nút nhấn 1 hoặc có nhấn nút nhấn 2 thì cho đèn
sáng.
Nếu có nhấn nút nhấn 1 và có nhấn nút nhấn 2 thì cho đèn tắt.
Nếu có nhấn nút nhấn 1 hoặc có nhấn nút nhấn 2 thì cho đèn tắt.
Lệnh này sau đây thể hiện các đèn chạy được 5 chu kỳ thì dừng?
for (x = 0; x <3; x ++)
{ digitalWrite (led,HIGH);
delay(1000);
digitalWrite (led,LOW);
delay(1000);}
x=2;
While(x<6)
{ digitalWrite(led,HIGH);
delay(1000);
x=x+1;}
Cả a và b đều sai
Cả a và b đều đúng
Trong lập trình Arduino, câu lệnh digitalWrite(13,HIGH) có ý nghĩa
Chỉ định chân 13 của mạch Arduino là ngõ ra
Đưa tính hiệu điều khiển ra chân số 13 mức cao
Cả a, b đều đúng
Cả a, b đều sai
Trong lập trình Arduino, câu lệnh digitalWrite(8) có ý nghĩa:
Đọc dữ liệu từ chân số 8 vào mạch Arduino
Ghi dữ liệu từ mạch Arduino ra chân số 8
Chỉ định chân 8 là chân ngõ vào
Cả a, b, c đều sai
Trong lập trình Arduino, hàm void setup() là dùng để:
Xác định chân vào/ra cần dùng
Xác định kiểu dữ liệu của mạch Arduino
Cả a và b đều đúng
Cả a và b đều sai
Với mạch điện được thiết kế như hình vẽ, hãy nêu mức điện áp tại
ngõ vào input nhận được khi chưa nhấn nút và mức điện áp sau
khi nhấn nút ?
Khi chưa nhấn nút tại INPUT có mức logic LOW, sau khi nhấn nút tại INPUT có mức logic HIGH
Khi chưa nhấn nút tại Input có mức logic LOW, sau khi nhấn nút
tại Input có mức logic LOW
Khi chưa nhấn nút tại Input có mức logic HIGH, sau khi nhấn
nút tại Input có mức logic HIGH
Khi chưa nhấn nút tại Input có mức logic HIGH, sau khi nhấn
nút tại Input có mức logic LOW
Với mạch điện được thiết kế như hình vẽ, hãy nêu mức điện áp tại
ngõ vào input nhận được khi chưa nhấn nút và mức điện áp sau
khi nhấn nút ?
Khi chưa nhấn nút tại Input có mức logic LOW, sau khi nhấn nút
tại Input có mức logic HIGH
Khi chưa nhấn nút tại Input có mức logic LOW, sau khi nhấn nút
tại Input có mức logic LOW
Khi chưa nhấn nút tại Input có mức logic HIGH, sau khi nhấn
nút tại Input có mức logic HIGH
Khi chưa nhấn nút tại INPUT có mức logic HIGH, sau khi nhấn nút tại INPUT có mức logic LOW
Với trạng thái của nút nhấn như hình vẽ và đoạn code chương
trình chính được cho bên dưới, hãy xác định đáp án nào sau đây
là đúng ?
Chương trình không chạy được do đoạn code chương trình chính
sai
Chương trình thực hiện khối lệnh digitalWrite(led,HIGH);
Chương trình thực hiện khối lệnh digitalWrite(led,LOW);
Cả 3 đáp án A, B, C đều sai.
Với trạng thái của nút nhấn như hình vẽ và đoạn code chương
trình chính được cho bên dưới, hãy xác định đáp án nào sau đây
là đúng ?
Các khối lệnh bên trong hàm if không được thực thi do chương trình sai.
Chương trình thực hiện khối lệnh digitalWrite(led,HIGH);
Chương trình thực hiện khối lệnh digitalWrite(led,LOW);
Cả 3 đáp án A, B, C đều sai.
Cho mạch điện có nút nhấn được kết nối Input với Arduino như
hình dưới, hãy xác định đáp án đúng sau đây ?
Khi nhấn nút thì sẽ đưa mức điện áp 0 (mức LOW) vào chân
Input
Mạch hoạt động bình thường, không có lỗi gì xảy ra
Khi chưa nhấn nút thì chân INPUT không xác định được mức điện áp HIGH hay LOW
Khi chưa nhấn nút thì mức điện áp tại chân Input chỉ mang mức
LOW.
Hãy xác định đáp án nào sau đây là SAI khi thực hiện cho 1 đèn
led sáng 5 giây, tắt 5 giây và lặp lại trong 10 chu kỳ thì dừng, biết
rằng đèn led sáng khi ngõ ra mức cao.
for (int x=0; x<10; x++) {
digitalWrite(led, HIGH);
delay(5000);
digitalWrite(led, LOW);
delay(5000);}
int x = 0;
while (x<10){
digitalWrite(led, HIGH);
delay(5000);
digitalWrite(led, LOW);
delay(5000);
x=x+1;}
int x=0;
while(x<10){
digitalWrite(led,HIGH);
delay(5000);
digitalWrite(led,LOW);
delay(5000);
x=x+2;}
for (int x=2; x<12; x++) {
digitalWrite(led, HIGH);
delay(5000);
digitalWrite(led, LOW);
delay(5000);}
Hãy xác định kiểu khai báo các đèn led theo mãng nào sau đây là đúng
int pinLed[]={4,5,6,7,8,9,10};
int PinLed[]={4,5,6,7,8,9,10};
int pin Led[]={4,5,6,7,8,9,10};
int pin-Led[]={4,5,6,7,8,9,10};
Cho 10 đèn led được nối vào chân của Arduino tương ứng từ
chân số 1 đến chân số 10, hãy chọn kiểu khai báo nào sau đây là
đúng khi thiết lập 10 chân đều là ngõ ra.
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup()
for(i=0;i<=10;i++){
pinMode (mypins[i],OUTPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};void setup(){
for(i=0;i<=10;i++){
pinMode (mypins[i],INPUT);}}
int Mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i++){
pinMode (MYPIN[i],INPUT);}}
int Mypins[]={1,2,3,4,5};
void setup(){
for(i=0;i<=5;i++){
pinMode (mypins[i],OUTPUT);}}
Với khai báo mãng địa chỉ như bên dưới, hãy xác định đáp án nào
là đúng khi chỉ cho các chân 1, 3, 5, 7, 9 của Arduino đều là ngõ
ra.
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup()
for(i=0;i<=10;i=i+2){
pinMode(mypins[i],OUTPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i++){
pinMode (mypins[i],OUTPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i=i+2){
pinMode (mypins[i],INPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i++){
pinMode (mypins[i],INPUT);}}
Với khai báo mãng địa chỉ như bên dưới, hãy xác định đáp án nào
là đúng khi chỉ cho các chân 2,4,6,8,10 của Arduino đều là ngõ
vào
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=1;i<=10;i=i+2){
pinMode(mypins[i],INPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i++){
pinMode (mypins[i],OUTPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i=i+2){
pinMode (mypins[i],INPUT);}}
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void setup(){
for(i=0;i<=10;i=i+4){
pinMode (mypins[i],INPUT);}}
Cho khai báo mảng gồm 10 đèn led như sau :
int mypins[]={1,2,3,4,5,6,7,8,9,10};
void sangden(){
for(i=0;i<10;i++){
digitalWrite(mypin[i],HIGH);
delay(0);}}
Hãy thay đổi giá trị delay trong void sangden để cho các đèn led
này sáng dần từ chân số 1 đến chân số 10 với độ trễ giữa mỗi đèn
là 10 giây
thay đổi giá trị hàm delay(0) thành delay(10).
thay đổi giá trị hàm delay(0) thành delay(100).
thay đổi giá trị hàm delay(0) thành delay(1000).
thay đổi giá trị hàm delay(0) thành delay(10000).
Cho code các chương trình con như sau :
void chuongtrinhcon1(){
digitalWrite(led1,HIGH) ;
delay(5000) ;
digitalWrite(led1,LOW) ;}
void chuongtrinhcon2(){
52./ digitalWrite(led1,LOW) ;
digitalWrite(led2,LOW) ;
delay(5000) ;
digitalWrite(led1,HIGH) ;
digitalWrite(led2,HIGH) ;}
Hãy chọn đáp án đúng để thực thi 2 chương trình con khi nhấn
hoặc không nhấn nút. Biết nút nhấn ngõ vào tích cực mức CAO
voi loop(){
if(nutnhan==1){
chuongtrinhcon1();}
void loop(){
if(nutnhan==1){
chuongtrinhcon1;}
else chuongtrinhcon2;}
void loop(){
if(nutnhan==1){
chuongtrinhcon1;}
else chuongtrinhcon2;}
void loop(){
if(nutnhan==0)
Cho 2 đèn led nối vào chân số 12 của Arduino, hãy xác định đáp
án nào sau đây là đúng tương ứng với sơ đồ mạch để cho đèn led
sáng.
int led = 12;
void setup() {
pinMode(led,OUTPUT);}
void loop() {
digitalWrite(led,HIGH);}
int led = 12;
void setup() {
pinMode(led,OUTPUT);}
void loop() {
digitalWrite(led,LOW);}
Sơ đồ nối dây sai làm cho mạch không hoạt động.
Cả 3 đáp án A, B, C đều đúng.
Cho sơ đồ mạch như hình vẽ và code lập trình bên dưới, hãy tìm
đáp án đúng bên dưới để đèn led có thể sáng? Biết rằng đèn sáng
khi ngõ ra tích cực mức HIGH.
int led = 8;
void setup() {
pinMode(led,OUTPUT);}
void loop() {
digitalWrite(led,HIGH);}
Mạch không thể hoạt động do sơ đồ nối dây thiết bị sai.
Code lập trình sai dẫn đến đèn không sáng được.
Thay đổi giá trị điện trở phù hợp để đèn lad sáng.
Cả 3 đáp án A, B, C đều sai
