Mạch Cảm Ứng Điện Dung Hiển Thị LED Sử Dụng Kit Arduino

18 454 0
Mạch Cảm Ứng Điện Dung Hiển Thị LED Sử Dụng Kit Arduino

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mạch Cảm Ứng Điện Dung Hiển Thị LED Sử Dụng Kit Arduino Nhóm 16: Nguyễn Tuấn Duy Hoàng Minh Phương Phan Phi Hóa Nguyễn Minh Tuấn 1. Giới thiệu Arduino là một bo mạch vi xử lý được dùng để lập trình tương tác với các thiết bị phần cứng như cảm biến, động cơ, đèn hoặc các thiết bị khác. Đặc điểm nổi bật của Arduino là môi trường phát triển ứng dụng cực kỳ dễ sử dụng, với một ngôn ngữ lập trình có thể học một cách nhanh chóng ngay cả với người ít am hiểu về điện tử và lập trình. Và điều làm nên hiện tượng Arduino chính là mức giá rất thấp và tính chất nguồn mở từ phần cứng tới phần mềm. Chỉ với khoảng $30, người dùng đã có thể sở hữu một bo Arduino có 20 ngõ I/O có thể tương tác và điều khiển chừng ấy thiết bị Hiện nay có rất nhiều loại kit arduino được sử dụng , trong bài báo cáo này nhóm sử dụng Kit Arduino NaNo( ATmega328) để phù hợp với các điều kiện của nhóm. 1 số hình ảnh kit arduino nano 2. Mô tả Kit Arduino Nano • Arduino Nano là một thiết kế nhỏ gọn với chức năng, sức mạnh, phần cứng cũng như cách sử dụng hoàn toàn tương đương với Arduino Uno, nếu bạn thích sự nhỏ gọn trong thiết kế thì đây là 1 sự lựa chọn hoàn toàn tối ưu dành cho bạn. • Arduino Nano sử dụng chip dán ATmega328 (Arduino Nano 3.x) hoặc Atmega168 (Arduino Nano 2.x). Nó có chức năng tương tự của Arduino Duemilanove, nhưng khác pakage(gói). Nó thiếu chỉ một jack cắm điện DC, và làm việc với một cáp USB Mini-B. Nano được thiết kế và được sản xuất rộng khắp. • Nguồn Arduino Nano Arduino Nano có thể được hỗ trợ thông qua kết nối USB Mini-B, với nguồn ngoài giới hạn 6-20V (pin 30), hoặc 5V quy định cung cấp điện bên ngoài (pin 27). Arduino Nano tự động với nguồn điện áp cao nhất. Chip FTDI FT232RL trên Nano chỉ được hỗ trợ nếu board đang được cung cấp thông qua cổng USB. Kết quả là, khi chạy nguồn điện ngoài (không USB), đầu ra 3.3V (được cung cấp bởi chip FTDI) không có sẵn và các đèn LED RX và TX sẽ nhấp nháy nếu chân số 0 hoặc 1 là cao. • Bộ Nhớ Các Atmega168 có 16 KB bộ nhớ flash để lưu trữ(trong đó có 2 KB được sử dụng cho bộ nạp khởi động); các ATmega328 có 32 KB, (cũng với 2 KB được sử dụng cho bộ nạp khởi động). Atmega168 có 1 KB của SRAM và 512 byte EEPROM (có thể đọc và ghi với thư viện EEPROM); các ATmega328 có 2 KB của SRAM và 1 KB EEPROM Sơ đồ và chức năng các chân của Arduino Nano • Bộ Nhớ Các Atmega168 có 16 KB bộ nhớ flash để lýu trữ(trong đó có 2 KB đýợc sử dụng cho bộ nạp khởi động); các ATmega328 có 32 KB, (cũng với 2 KB đýợc sử dụng cho bộ nạp khởi động). Atmega168 có 1 KB của SRAM và 512 byte EEPROM (có thể đọc và ghi với thý viện EEPROM); các ATmega328 có 2 KB của SRAM và 1 KB EEPROM. Sõ đồ và chức năng các chân của Arduino Nano Chân Input / Output Với mỗi chân trong số 14 chân (digital) trên Nano có thể được sử dụng như một đầu vào hay đầu ra, qua việc sử dụng pinMode (), digitalWrite (), và digitalRead (). Mỗi chân đó hoạt động ở mức 5 volts. Mỗi pin có thể cung cấp hoặc nhận tối đa 40 mA và có một điện trở kéo lên bên trong (ngắt kết nối theo mặc định) 20-50 kohms. Ngoài ra, một số chân có chức năng khác như: Serial: 0 (RX) và 1 (TX). Được sử dụng để nhận (RX) và truyền tải (TX) TTL dữ liệu nối tiếp. Các chân này được kết nối với các chân tương ứng của FTDI USB-to-TTL và nối tiếp chip. Ngắt ngoài(pin 2 và 3):Các chân có thể được code để kích hoạt một ngắt trên một giá trị thấp, một xung lên và xuống, hoặc một sự thay đổi về giá trị. PWM: 3, 5, 6, 9, 10, và 11Cung cấp 8-bit đầu ra PWM với analogWrite () SPI: 10 (SS), 11 (MOSI), 12 (miso), 13 (SCK)Những chân hỗ trợ SPI truyền thông LED: 13 Có một LED kết nối với pin số 13. Khi pin là giá trị cao, đèn LED được bật, khi pin là thấp, nó ra. Arduino Nano có 8 đầu vào tương tự, mỗi trong số đó cung cấp độ phân giải 10 bit (tức là năm 1024 giá trị khác nhau). Theo mặc định thì mức điện sẽ là 5 volts, tuy nhiên có thể thay đổi phạm vi của nó bằng cách sử dụng analogReference () chức năng. Chân Analog 6 và 7 không thể được sử dụng như chân số (digital). Ngoài ra, một số chân có chức năng khác: I2C: 4 (SDA) và 5 (SCL). Hỗ trợ I2C (TWI) giao tiếp bằng cách sử dụng Wire library. Aref. Điện áp tham chiếu cho các đầu vào tương tự. Được sử dụng với analogReference (). Reset: Thiết lập lại hệ thống. 3. Sơ đồ nguyên lý 3. Sõ đồ nguyên lý c Thiết đặt các phần cứng cơ bản +) Thiết đặt LED +) Thiết đặt công tắc +) Thiết đặt biến trở 4.Code #define set_PortB (1 3)][8] = { 0x66, 0x66, 0x7e, 0x7e, 0x66, 0x66, 0x66}, 0x66, 0x66, 0x7c, 0x7e, 0x66, 0x66, 0x7c}, 0x76, 0x62, 0x60, 0x60, 0x62, 0x76, 0x3c}, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x7c}, 0x60, 0x60, 0x7e, 0x7e, 0x60, 0x60, 0x7e}, 0x66, 0x66, 0x7e, 0x7e, 0x66, 0x66, 0x66}, unsigned char fon[20][8] = { //{0x7E, 0x18, 0x18, 0x18, //{0x3c, 0x18, 0x18, 0x18, //{0x7e, 0x60, 0x60, 0x7e, //{0x66, 0x76, 0x76, 0x7e, //{0x3c, 0x66, 0x60, 0x7c, //{0x3c, 0x7E, 0x66, 0x66, 0x18, 0x18, 0x7e, 0x6e, 0x66, 0x3e, 0x18, 0x18, 0x60, 0x66, 0x66, 0x06, 0x18, 0x18, 0x60, 0x66, 0x7E, 0x66, // // // // // // 0x18}, 0x3c}, 0x7e}, 0x66}, 0x3c}, 0x3c}, A B C D E A // // // // // // T I E N 6 9 {0x7c, {0x30, {0xC6, {0x66, {0x3F, {0x66, 0x66, 0x71, 0xC6, 0x66, 0x0C, 0x66, 0x66, 0x30, 0xC3, 0xC6, 0x0C, 0x66, 0x66, 0x30, 0xC1, 0x86, 0x0C, 0x7E, 0x66, 0x30, 0xC1, 0x86, 0x0C, 0x7E, 0x66, 0x30, 0xC3, 0xC6, 0x0C, 0x66, 0x66, 0x30, 0xC6, 0x66, 0x0C, 0x66, 0x7c}, 0x79}, 0xe6}, 0x67}, 0xCC}, 0x66}, // // // // // // D 1-1 1-x x-L L-T H {0x66, {0x66, {0x3c, {0xC3, {0x18, {0x3c, 0x76, 0x66, 0x66, 0xE7, 0x38, 0x66, 0x76, 0x66, 0x66, 0xFF, 0x18, 0x60, 0x7e, 0x7E, 0x66, 0xDB, 0x18, 0x7c, 0x6e, 0x7E, 0x66, 0xC3, 0x18, 0x66, 0x66, 0x66, 0x66, 0xC3, 0x18, 0x66, 0x66, 0x66, 0x66, 0xC3, 0x18, 0x7E, 0x66}, 0x66}, 0x3c}, 0xC3}, 0x7E}, 0x3c}, // // // // // // N H O M 1 6 {0x7c, {0x18, {0x18, {0x00, {0x00, {0x00, 0x66, 0x38, 0x38, 0x00, 0x00, 0x00, 0x66, 0x18, 0x18, 0x00, 0x00, 0x00, 0x66, 0x18, 0x18, 0x00, 0x00, 0x00, 0x66, 0x18, 0x18, 0x00, 0x00, 0x00, 0x66, 0x18, 0x18, 0x00, 0x00, 0x00, 0x66, 0x18, 0x18, 0x00, 0x00, 0x00, 0x7c}, 0x7E}, 0x7E}, 0x00}, 0x00}, 0x00} // D // 1 // 1 }; unsigned char { 0x00, 0xfe, 0x00, 0xff, 0x00, 0x7e, 0x00, 0xff, 0x00, 0x7e, 0x00, 0xff, 0x00, 0xfe, }; Row_Data_Offset[128] = 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x19, 0x99, 0xc3, 0x81, 0xc3, 0x99, 0x19, 0x19, 0x99, 0x81, 0x81, 0x81, 0x99, 0x19, 0xff, 0xff, 0xc3, 0xff, 0xc3, 0xff, 0xff, unsigned char Col_Data_Offset[32][4] = { 0xfe, 0x76, 0x66, 0x7e, 0x66, 0x76, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, // // // // // // // A B C D C B A {0x80, {0x40, {0x20, {0x10, {0x08, {0x04, {0x02, {0x01, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x08, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x00}, 0x80}, 0x40}, 0x20}, 0x10}, 0x08}, 0x04}, 0x02}, 0x01} }; int i, j; int temp; int buttonState[4], Last, State; void GPIO_Init(void) { // Output pinMode(CLK_ROW, OUTPUT); pinMode(DATA_ROW, OUTPUT); pinMode(CHOT, OUTPUT); pinMode(CLK_COL, OUTPUT); pinMode(DATA_COL, OUTPUT); // input pinMode(BUTTON1, pinMode(BUTTON2, pinMode(BUTTON3, pinMode(BUTTON4, INPUT); INPUT); INPUT); INPUT); } void ShiftOut_Row(unsigned char TxData) { unsigned int i, temp; for( i=0; i 3; Number_Row = Number_Row >> 3; } for(k=0; k[...]... nhiều loại robot, đặc biệt là robot di động 6 Kết luận Arduino đã và đang được sử dụng rất rộng rãi trên thế giới, và ngày càng chứng tỏ được sức mạnh của chúng thông qua vô số ứng dụng độc đáo của người dùng trong cộng đồng nguồn mở (open-source) Tuy nhiên tại Việt Nam Arduino vẫn còn chưa được biết đến nhiều Arduino thực sự đã gây sóng gió trên thị trường người dùng DIY (là những người tự chế ra sản... làm được trên thị trường thiết bị di động Số lượng người dùng cực lớn và đa dạng với trình độ trải rộng từ bậc phổ thông lên đến đại học Arduino được chọn làm bộ não xử lý của rất nhiều thiết bị từ đơn giản đến phức tạp Trong số đó có một vài ứng dụng thực sự chứng tỏ khả năng vượt trội của Arduino do chúng có khả năng thực hiện nhiều nhiệm vụ rất phức tạp Do thời gian có hạn nên nhóm làm mạch cũng như... } */ } 5 Ứng dụng trong trong thực tế Máy in 3D Một cuộc cách mạng khác cũng đang âm thầm định hình nhờ vào Arduino, đó là sự phát triển máy in 3D nguồn mở Reprap Máy in 3D là công cụ giúp tạo ra các vật thể thực trực tiếp từ các file CAD 3D Công nghệ này hứa hẹn nhiều ứng dụng rất thú vị trong đó có cách mạng hóa việc sản xuất cá nhân Robot Do kích thước nhỏ gọn và khả năng xử lý mạnh mẽ, Arduino được... khả năng vượt trội của Arduino do chúng có khả năng thực hiện nhiều nhiệm vụ rất phức tạp Do thời gian có hạn nên nhóm làm mạch cũng như báo cáo còn chỗ thiếu xót Mong thầy và các bạn thông cảm Nhóm cũng xin cảm ơn thầy Nguyễn Ngọc Minh đã giúp đỡ nhóm hoàn thành báo cáo này ... digitalWrite(CHOT, 0); // CHOT = 0; digitalWrite(CHOT, 1); // CHOT = 1; //for(m=0; m> 3; Number_Row ... Hiện có nhiều loại kit arduino sử dụng , báo cáo nhóm sử dụng Kit Arduino NaNo( ATmega328) để phù hợp với điều kiện nhóm số hình ảnh kit arduino nano Mô tả Kit Arduino Nano • Arduino Nano thiết... sức mạnh, phần cứng cách sử dụng hoàn toàn tương đương với Arduino Uno, bạn thích nhỏ gọn thiết kế lựa chọn hoàn toàn tối ưu dành cho bạn • Arduino Nano sử dụng chip dán ATmega328 (Arduino Nano... Arduino sử dụng rộng rãi giới, ngày chứng tỏ sức mạnh chúng thông qua vô số ứng dụng độc đáo người dùng cộng đồng nguồn mở (open-source) Tuy nhiên Việt Nam Arduino chưa biết đến nhiều Arduino

Ngày đăng: 12/10/2015, 10:32

Tài liệu cùng người dùng

Tài liệu liên quan