Showing posts with label Arduino. Show all posts
Showing posts with label Arduino. Show all posts

THÔNG BÁO !

6:43:00 AM Add Comment
Xin chào các bạn Blog này bị lỗi quá nhiều và bài viết cũng sơ xài nên mình đã tạo 1 Blog mới và tất cả bài đăng trong Blog này mình sẽ chuyển dần sang Blog mới nên Blog này mình sẽ không đăng bài đăng mới nữa nha ! Mong các bạn thông cảm và ủng hộ Blog mới ! Các bạn có thể xem Blog mới Tại Đây ! Thanks you !


Blog mới sẽ được đầu tư về bài viết kỹ càng hơn ! Blog mới có tên là  Programming PIC ! Các bạn đăng ký làm thành viên và Share Blog để tiếp cạn nhiều người hơn để blog này ngày càng phát triển ! Link  xem Blog mới http://xcvn.blogspot.com/

THƯ VIỆN MÔ PHỎNG CHO ARDUINO TRÊN PROTUES

7:27:00 AM 7 Comments
Chào các bạn hôm này mình sẽ giới thiệu vè chia sẽ với các bạn một thư viện hỗ trợ mô phỏng Arduino trên phần mềm protues. Trước tiên mình xin giới thiệu với các bạn các Board Arduino có thể mô phỏng được.
1. SIMULINO UNO


THƯ VIỆN MÔ PHỎNG CHO ARDUINO TRÊN PROTUES

2. SIMULINO LILYPAD



3. SIMULINO MEGA



4. SIMULINO NANO



5. ULTRASONIC V2



- Link download thư viện Click here .
Hương dẫn sử dụng sau khi download file về các bạn giải nén và copy 2 file trong thư mục past vào đường dẫn sau : C:\ProgramData\Labcenter Electronics\Proteus 8 Professional\LIBRARY sau đó các ban mở Protues lên lên và gõ đúng các tên như mình đã nêu ở trên và lôi ra sử dụng thôi nha ! Chúc các bạn thành công ai có thắc mắc gì thì comment ở dưới nha !

LM35 with Arduino

8:59:00 AM Add Comment

Cảm biến nhiệt độ LM35

Mô tả:
Cảm biến LM35 là bộ cảm biến nhiệt mạch tích hợp chính xác cao mà điện áp đầu ra của nó tỷ lệ tuyến tính với nhiệt độ theo thang độ Celsius. Chúng cũng không yêu cầu cân chỉnh ngoài vì vốn chúng đã được cân chỉnh. Cảm biến LM35 hoạt động bằng cách cho ra một giá trị hiệu điện thế nhất định tại chân Vout (chân giữa) ứng với mỗi mức nhiệt độ.

Thông số kỹ thuật:
  •  Điện áp đầu vào từ 4V đến 30V
  •  Điện áp ra: -1V đến 6V
  •  Công suất tiêu thụ là 60uA
  •  Độ phân giải điện áp đầu ra là 10mV/oC
  •  Độ chính xác cao ở 25 C là 0.5 C
  •  Trở kháng đầu ra thấp 0.1 cho 1mA tải
  •  Độ chính xác thực tế: 1/4°C ở nhiệt độ phòng và 3/4°C ngoài khoảng -55°C tới 150°C

Ví dụ:
Dải nhiệt độ đo được của LM35 là từ -55 C - 150 C với các mức điện áp ra khác nhau. Xét một số mức điện áp sau :
  •     Nhiệt độ -55 C điện áp đầu ra -550mV
  •     Nhiệt độ 25 C điện áp đầu ra 250mV
  •     Nhiệt độ 150 C điện áp đầu ra 1500mV
Ảnh mô phỏng protues.

lm35 arduino

Link download project.

Button and 7seg with Arduino

3:32:00 AM Add Comment
Giới thiệu Có lẽ chúng ta đã quá quen với các loại button, nút nhấn rồi. Tuy nhiên, có thể, chỉ có thể thôi nhé, bạn vẫn chưa biết hết về các loại nút nhấn phổ biến. Vì vậy, hôm nay, mình sẽ tổng hợp giúp bạn các loại button phổ biến và cách dùng của nó. Button là gì ? Button là nút bấm, bạn có thể tìm thấy nó ở mọi thứ trong cuộc sống, chẳng hạn như cái nút trong bàn phím của bạn.  

button


Các loại button Button có rất nhiều loại, và mỗi loại lại có ứng dụng riêng của nó. Vì vậy, chỉ cần vận dụng hợp lý và sáng tạo các loại button - nút bấm, bạn sẽ làm nên những dự án cực.

1. Button (thường) (6mm hoặc 12mm)
Đây là loại button rất phổ biến, cũng như đèn LED, loại button này cũng có các kính thước cạnh 6mm hoặc 12m. Loại 6mm hay được dùng trong các dự án nhỏ và loại còn lại dùng cho các dự án bự hơn và cần nút to để ngầu hơn. Mình thì cực thích loại 12mm vì nó to, dễ hàn và bấm sướng tay, không đau tay như loại 6mm. Và giá thành thì khá rẻ, loại 6mm có giá khoảng 1500 dồng và 2500 đồng cho loại 12mm.



Nút nhấn 6mm
Nút nhấn 12mm
Loại này tuy là 4 chân, nhưng thực chất cũng chỉ là 2 chân mà thôi, bạn xem hình dưới là rõ ngay.
button
Ngoài ra, vì có 4 chân nên nó khá vững chãi và rất khó hư! 
Ảnh mô phỏng proteus.
7seg and button with Arduino 
Code chương trình.
 byte numbers[10] = { 
                    B11111100, B01100000, B11011010, B11110010, B01100110, 
                    B10110110, B10111110, B11100000, B11111110, B11110110 
                    };
void setup() { 
    for(int i = 2; i <= 8; i++) {
        pinMode(i, OUTPUT); 
    }
    pinMode(9, INPUT);
}

int counter = 0;
bool go_by_switch = true;
int last_input_value = LOW;

void loop() {
    if(go_by_switch) {
        int switch_input_value = digitalRead(9);
        if(last_input_value == LOW && switch_input_value == HIGH) {
            delay(100); 
            counter = (counter + 1) % 10;
        }
        last_input_value = switch_input_value;
    } else {
        delay(100); 
        counter = (counter + 1) % 10;
    }
    writeNumber(counter);
}

void writeNumber(int number) {
    if(number < 0 || number > 9) {
        return;
    }
    byte mask = numbers[number];
    byte currentPinMask = B10000000;
    for(int i = 2; i <= 8; i++) {
        if(mask & currentPinMask) digitalWrite(i,HIGH); 
        else digitalWrite(i,LOW);
    currentPinMask = currentPinMask >> 1;
    }
}

Led 7seg with Arduino

3:22:00 AM Add Comment
Giới thiệu sơ lược về Led 7seg.
Led 7 đoạn
Hình ảnh: Led 7 đoạn
Ngày nay có rất nhiều thiết bị hiển thị trên thị trường trong đó có Led 7 đoạn là một linh kiện cần thiết và được ứng dụng nhiều trong cuộc sống như: làm đồng hồ led vạn niên, ứng dụng trong công nghiệp. Tuy màn hình LCD đang rất phát triển nhưng không thể phủ nhận được công dụng của Led 7 đoạn.
Để giúp các bạn hiểu rõ hơn về hoạt động của Led 7 đoạn và dễ dàng hơn trong việc lập trình cho Led 7 đoạn sau này thì mình sẽ giới thiệu qua cho các bạn về Led 7 đoạn

PHÂN LOẠI VÀ CẤU TẠO CỦA LED 7 ĐOẠN 

  • Led 7 thanh có cấu tạo bao gồm 7 led đơn có dạng thanh xếp theo Hình 1.1 dưới và có thêm một led đơn hình tròn nhỏ thể hiện dấu chấm tròn ở góc dưới, bên phải của led 7 thanh. 8 led đơn trên led 7 đoạn có Aode(cực +) hoặc Cathode(cực -) được nối chung với nhau vào một điểm, được đưa chân ra ngoài để kết nối với mạch điện.
  • 8 cực còn lại trên mỗi led đơn được đưa thành 8 chân riêng:
    • Nếu led 7 đoạn có Anode(cực +) chung, đầu chung này được nối với +Vcc, các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 0.
    • Nếu led 7 đoạn có Cathode (cực -) chung, đầu chung này được nối xuống Ground (hay Mass), các chân còn lại dùng để điều khiển trạng thái sáng tắt của các led đơn, led chỉ sáng khi tín hiệu đặt vào các chân này ở mức 1.
led 7seg
Hình 1.1
Ảnh mô phỏng protues.

led 7seg with Arduino

Code chương trình.

int latchPin = 8;
//chân SH_CP của 74HC595
int clockPin = 12;
//Chân DS của 74HC595
int dataPin = 11;
const int Seg[10] = {
  0b11000000,//0 - các thanh từ a-f sáng
  0b11111001,//1 - chỉ có 2 thanh b,c sáng
  0b10100100,//2
  0b10110000,//3
  0b10011001,//4
  0b10010010,//5
  0b10000011,//6
  0b11111000,//7
  0b10000000,//8
  0b10010000,//9
};
void setup() {
  //Bạn BUỘC PHẢI pinMode các chân này là OUTPUT
  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
}

void loop() {
  static int point = 0;
  //shiftout - start
  digitalWrite(latchPin, LOW);
  //Xuất bảng ký tự ra cho Module LED
  shiftOut(dataPin, clockPin, MSBFIRST, Seg[point]);
  digitalWrite(latchPin, HIGH);
  //shiftout - end
  point = (point + 1) % 10; // Vòng tuần hoàn từ 0--9
  delay(500);//Đợi 0.5 s cho mỗi lần tăng số
}