Các câu lệnh xuất dữ liệu điều khiển
bật tắt
//Điều khiển đèn led D2
void setup() {
pinMode(2,OUTPUT);
}
void loop() {
digitalWrite(2,LOW);
delay(1000);
digitalWrite(2,HIGH);
delay(1000);
}
2.2. Điều khiển 8 đèn từ D2 à D9
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(4,OUTPUT);
pinMode(5,OUTPUT);
pinMode(6,OUTPUT);
pinMode(7,OUTPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
}
void loop() {
//tat tat ca cac den
digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,HIGH);
// bat lan luot
digitalWrite(2,LOW);
delay(1000);
digitalWrite(3,LOW);
delay(1000);
digitalWrite(4,LOW);
delay(1000);
digitalWrite(5,LOW);
delay(1000);
digitalWrite(6,LOW);
delay(1000);
digitalWrite(7,LOW);
delay(1000);
digitalWrite(8,LOW);
delay(1000);
digitalWrite(9,LOW);
delay(1000);
// tat lan luot digitalWrite(2,HIGH);
delay(1000);
digitalWrite(3,HIGH);
delay(1000);
digitalWrite(4,HIGH);
delay(1000);
digitalWrite(5,HIGH);
delay(1000);
digitalWrite(6,HIGH);
delay(1000);
digitalWrite(7,HIGH);
delay(1000);
digitalWrite(8,HIGH);
delay(1000);
digitalWrite(9,HIGH);
delay(1000);
}
2.3. Nháy đèn D2 3 lần -> nháy đèn
D3 4 lần -> bật còi
int i;
void setup() {
pinMode(2,OUTPUT);
pinMode(3,OUTPUT);
pinMode(11,OUTPUT);
}
void loop() {
//nhay den D2 3 lan
for(i=1;i<=3;i++){
digitalWrite(2,LOW);
digitalWrite(2,HIGH);
delay(1000);
}
//nhay den D3 4 lan
for(i=1;i<=4;i++){
digitalWrite(3,LOW);
delay(1000);
digitalWrite(3,HIGH);
delay(1000);
delay(1000);
}
//bat coi
digitalWrite(11,HIGH);
delay(200);
digitalWrite(11,LOW);}
2.4. Cho biến dem chạy từ 1 đến 10,
khi biến dem bằng 5 thì chỉ đèn D5 sáng.
Khi biến dem khác 5 thì chỉ đèn D2 sáng.
int dem;
void setup() {
pinMode(2,OUTPUT);
pinMode(5,OUTPUT);
Serial.begin(9600);
}
void loop() {
for(dem=1;dem<=10;dem++){
if(dem==5){
digitalWrite(5,LOW);
digitalWrite(2,HIGH);
}
else{
digitalWrite(2,LOW);
digitalWrite(5,HIGH);
}
Serial.println(dem);
delay(1000);
}
}
2.5.
Điều khiển 1 đèn bằng nút bấm
void setup() {
pinMode(5, INPUT); //Cài
đặt chân D11 ở trạng thái đọc dữ liệu
pinMode(2,OUTPUT); // Cài đặt chân D2
dưới dạng OUTPUT
}
void loop() {
int buttonStatus = digitalRead(button); //Đọc trạng thái button
if (digitalRead(5) == LOW) { //
Nếu mà button bị nhấn
digitalWrite(2,LOW); //
Đèn led sáng
} else { // ngược lại
digitalWrite(2,HIGH);
}
}
2.6.
Điều chỉnh tốc độ nháy của đèn D2 bằng 2 nút nhấn
int
speed;
void
setup() {
pinMode(2,OUTPUT);
pinMode(4,INPUT);
pinMode(5,INPUT);
speed=1000;
Serial.begin(9600);
}
void
loop() {
digitalWrite(2,LOW);
delay(speed);
digitalWrite(2,HIGH);
delay(speed);
if(digitalRead(5) == LOW){
speed = speed - 200;
}
if(digitalRead(4) == LOW){
speed = speed + 200;
}
Serial.println(speed);
}
2.7.
Hiển thị số lên led 7 đoạn
#include
<7SEG.h>
SEG
led7doan;
void
setup() {
}
void
loop() {
led7doan.display(10);
}
2.8.
Làm đèn giao thông với đèn D2, D3, D4
#include
<SEG7.h>
SEG7
seg7;
void
setup() {
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
}
void
loop() {
//seg7.display(10);
turnD4On();
forint(10);
turnD3On();
forint(3);
turnD2On();
forint(10);
}
void
forint(int count){
for(int i=count; i>=0; i--){
seg7.display(i);
delay(1000);
}
}
void
turnD2On(){
digitalWrite(2, LOW);
digitalWrite(3, HIGH);
digitalWrite(4, HIGH);
}
void
turnD3On(){
digitalWrite(2, HIGH);
digitalWrite(3, LOW);
digitalWrite(4, HIGH);
}
void
turnD4On(){
digitalWrite(2, HIGH);
digitalWrite(3, HIGH);
digitalWrite(4, LOW);
}
2.9. Đọc và hiển thị giá trị cảm biến
nhiệt độ
#include
<DHT.h>
#include
<SEG7.h>
DHT
dht(10, DHT11);
SEG7
seg7;
void
setup() {
dht.begin();
}
void
loop() {
int value = dht.readTemperature();
seg7.display(value);
}
2.10. Đọc và hiển thị giá trị cảm
biến độ ẩm
#include
<DHT.h>
#include
<SEG7.h>
DHT
dht(10, DHT11);
SEG7
seg7;
void
setup(){
dht.begin();
}
void
loop(){
int value = dht.readHumidity();
seg7.display(value);
}
2.11. Đọc và hiển thị giá trị cảm
biến khoảng cách
#include
<SRF04.h>
SRF04
srf04(13,12);
void
setup(){
Serial.begin(9600);
}
void
loop() {
int value = srf04.getDistance();
Serial.println(value);
}
2.12.
Thiết bị hỗ trợ người khiếm thị ( 80 cm < khoảng an toàn < 120 cm)
#include
<SRF04.h>
SRF04
srf04(13, 12);
void
setup() {
Serial.begin(9600);
pinMode(11, OUTPUT);
}
void
loop() {
int value = srf04.getDistance();
Serial.println(value);
if (80<=value && value<=120){
digitalWrite(11, HIGH);
delay(500);
digitalWrite(11, LOW);
delay(500);
}
while(value<80 || 120<value){
digitalWrite(11, HIGH);
delay(100);
digitalWrite(11, LOW);
delay(100);
value = srf04.getDistance();
Serial.println(value);
}
2.13. Đọc và hiển thị giá trị chiết
áp
#include
<Variable.h>
#include
<SEG7.h>
Variable
vr(0,99);
SEG
seg7;
void
setup(){
}
void
loop(){
int value = vr.getValue();
seg7.display(value);
}

0 nhận xét: