ngochoangimsat
Administrator
Chùm chăn hết 1 tuần em đã thành công khiển vô lăng USB sử dụng bo mạch Arduino cho đầu android:
1. Chức năng chính:
Video giới thiệu tính năng của cụm điều khiển SWC A1
- Nhận tối đa 16 nút trên vô lăng;
- Mỗi nút cho phép gán từ 3-4 chức năng (đầu không root) đến 6 chức năng (đầu đã root): các chức năng có thể thực hiện như: next bài, lùi bài, tăng giảm âm lượng, mở ứng dụng (mở dẫn đường, xem phim, nghe nhạc, gọi khiển giọng nói...v.v.); Các chức năng này gán theo cách bấm: ví dụ (click - bấm đơn, longpress - giữ nút, double click - bấm đúp, double click press - bấm đúp và giữ nút, trible click - bấm 3 lần, trible click press - bấm 3 lần và giữ nút)
- Không can thiệp gì vào hệ thống điện của xe cũng như đầu android, lắp dây KEY1 và Key GND nguyên bản của xe vào mạch và chạy.
- Cần kết hợp phần mềm Remap Button trên CH Play với mạch này để gán chức năng các nút.
Hãy tượng tượng khi đang lái xe, các cụ muốn hiện màn hình dẫn đường bấm một nút, khi đang ở đâu đó muốn về nhà - bấm một nút, khi đang dẫn đường muốn hiện màn hình xem video - bấm một nút nào đó... tất cả trên vô lăng thuận lợi và tiện dụng.
Ví dụ em gán nút trên KIA K3 của em:
+ Nút Mode:
- Bấm một phát -> về màn home;
- Bấm giữ -> gọi OK google ra nhận lệnh;
- Bấm đúp -> mở Navitel;
- Bấm đúp xong giữ nút -> Mở Google Map;
- Bấm 3 phát -> lập tức khởi động Navitel và dẫn đường đến cơ quan dù đang ở bất kỳ chỗ nào, nó tự chọn điểm đến và kích hoạt luôn chế độ dẫn đường, không phải động gì thêm cả;
- Bấm 3 phát và giữ nút -> lập tức kích hoạt Navitel và dẫn về Nhà, không phải động tác nào thêm. Như vậy khi đang lái xe có thể dùng một nút này để chuyển qua lại tất cả các ứng dụng được gán bên trên mà không cần nhìn vào màn hình.
+ Nút Mute:
- Bấm một phát -> Tắt tiếng/ bật tiếng;
-Bấm giữ -> Play/Pause;
-Bấm đúp -> Mở PowerAMP;
-Bấm đúp và giữ -> Mở Mxplayer;
-Bấm 3 phát -> Mở Youtube;
-Bấm 3 phát và giữ -> Mở VTV GO xem ti vi;
+ Nút gọi điện:
-Bấm một phát -> Nghe cuộc gọi đến;
-Bấp Giữ -> Bật/tắt chế độ chia sẻ mạng 3G ra Wifi (wifi hospot);
-Bấm đúp -> Mở phần mềm cảnh báo áp suất lốp;....
Như vậy với 3 nút thôi, em không cần thêm gì nữa. Các nút còn lại em gán đúng theo tính năng của nó .
2. Mã nguồn nạp vào arduino:
1. Chức năng chính:
- Mỗi nút cho phép gán từ 3-4 chức năng (đầu không root) đến 6 chức năng (đầu đã root): các chức năng có thể thực hiện như: next bài, lùi bài, tăng giảm âm lượng, mở ứng dụng (mở dẫn đường, xem phim, nghe nhạc, gọi khiển giọng nói...v.v.); Các chức năng này gán theo cách bấm: ví dụ (click - bấm đơn, longpress - giữ nút, double click - bấm đúp, double click press - bấm đúp và giữ nút, trible click - bấm 3 lần, trible click press - bấm 3 lần và giữ nút)
- Không can thiệp gì vào hệ thống điện của xe cũng như đầu android, lắp dây KEY1 và Key GND nguyên bản của xe vào mạch và chạy.
- Cần kết hợp phần mềm Remap Button trên CH Play với mạch này để gán chức năng các nút.
Hãy tượng tượng khi đang lái xe, các cụ muốn hiện màn hình dẫn đường bấm một nút, khi đang ở đâu đó muốn về nhà - bấm một nút, khi đang dẫn đường muốn hiện màn hình xem video - bấm một nút nào đó... tất cả trên vô lăng thuận lợi và tiện dụng.
Ví dụ em gán nút trên KIA K3 của em:
+ Nút Mode:
- Bấm một phát -> về màn home;
- Bấm giữ -> gọi OK google ra nhận lệnh;
- Bấm đúp -> mở Navitel;
- Bấm đúp xong giữ nút -> Mở Google Map;
- Bấm 3 phát -> lập tức khởi động Navitel và dẫn đường đến cơ quan dù đang ở bất kỳ chỗ nào, nó tự chọn điểm đến và kích hoạt luôn chế độ dẫn đường, không phải động gì thêm cả;
- Bấm 3 phát và giữ nút -> lập tức kích hoạt Navitel và dẫn về Nhà, không phải động tác nào thêm. Như vậy khi đang lái xe có thể dùng một nút này để chuyển qua lại tất cả các ứng dụng được gán bên trên mà không cần nhìn vào màn hình.
+ Nút Mute:
- Bấm một phát -> Tắt tiếng/ bật tiếng;
-Bấm giữ -> Play/Pause;
-Bấm đúp -> Mở PowerAMP;
-Bấm đúp và giữ -> Mở Mxplayer;
-Bấm 3 phát -> Mở Youtube;
-Bấm 3 phát và giữ -> Mở VTV GO xem ti vi;
+ Nút gọi điện:
-Bấm một phát -> Nghe cuộc gọi đến;
-Bấp Giữ -> Bật/tắt chế độ chia sẻ mạng 3G ra Wifi (wifi hospot);
-Bấm đúp -> Mở phần mềm cảnh báo áp suất lốp;....
Như vậy với 3 nút thôi, em không cần thêm gì nữa. Các nút còn lại em gán đúng theo tính năng của nó .
2. Mã nguồn nạp vào arduino:
Mã:
/**/
byte i;
unsigned int value = 1023,
b[8] = {
1,//Mute
2,//Mode
3,//Vol+
4,//Vol-
5,//Seek+
6,//Seek-
7,//Answer
8//Hangup
},
cs[8] = {
0xE2,//Mute
0xCD,//Mode -> Play/Pause
0xE9,//Vol+
0xEA,//Vol-
0xB5,//Seek+
0xB6,//Seek-
0xB2,//Answer -> Record
0xB7//Hangup -> Stop
},
delta[8];
void setup() {
pinMode(DPin, INPUT);
begin();
for (byte i = 0; i < 8; i++) {
delta[i] = 20;}
}
void loop() {
if (value <= 900) {
for (i = 0; i < 8; i++)
{
if ((value >= (b[i] - delta[i])) && (value < (b[i] + delta[i]))) {
press(cs[i]);
}
else {
releaseAll();
}
}
}
else {
releaseAll();
}
delay(50);
}
Sửa lần cuối: