Tuesday, June 9, 2015

Hướng Dẫn Sửa Lỗi Không Nhận Driver PL2303 trên win 8/8.1



Bước 1: Các bạn download file driver tại địa chỉ: Profilic_Win8_x64_x86.zip

Bước 2: Giải nén, ta được thư mục như hình:

Bước 3: Click phải vào File ser2pl.inf, chọn Install:
Lúc này xuất hiện hộp thoại cảnh báo (hoặc không). Nếu có chọn Open

Bước 4: Click phải vào This PC, chọn manage:
Chọn tiếp Device Manager:
Ở đây xuất hiện cảnh báo lỗi ở cổng Com ảo: Prolific USB-to-Serial Comm Port (COM bao nhiêu là tùy thuộc vào máy của bạn)

Bước 6: Click phải Prolific USB-to-Serial Comm Port, chọn Update Driver Software, xuất hiện hộp thoại như hình:

Chọn Browse my computer for software:

Xuất hiện hộp thoại như hình, chọn tiếp Let me pick from....

Chọn Prolific USB - to -Serial... (9/24/2008) rồi Next:

Đợi một lúc, hiện thông báo như hình là ok:

 Chọn Close, và kết quả không còn báo lỗi nữa:

Giờ thì các bạn có thể sử dụng như bình thường.

Chúc các bạn thành công!

Monday, May 4, 2015

code cảm biến siêu âm SRF 05 cho Arduino

 code cảm biến siêu âm SRF 05 cho Arduino



const int TRIGER = 7;//chân TRIGER
const int ECHO= 8;//chân ECHO

void setup()
{
  Serial.begin(9600);//giao tiếp Serial với baudrate 9600
  pinMode(TRIGER,OUTPUT);//khai báochân trig sẽ xuất tín hiệu
  pinMode(ECHO,INPUT);//khai báo chân echo sẽ nhận tín hiệu
}

void loop()
{
  unsigned long pulse_length ;//biến đo thời gian mức cao chân echo
  int distance;//biến lưu khoảng cách
  /* phát xung 10 us từ chân trig */
  digitalWrite(TRIGER,HIGH);//đưa chân triger lên mưc cao
  delayMicroseconds(10);
  digitalWrite(ECHO,LOW);// đưa chân triger xuống mức thấp


  /*tính toán thời gian*/
  pulse_length  = pulseIn(ECHO,HIGH);//đo độ rộng xung HIGH ở chân echo
  distance = int(pulse_length/58);//tính khoảng cách đến vật theo cm
  /*in kết quả */
  Serial.print(distance);
  Serial.println("cm");
  delay(300);
}

Monday, April 20, 2015

Giao tiếp LCD với avr atmega8 bằng 3 dây tín hiệu sử dụng 74hc595

Giao tiếp LCD với avr atmega8 bằng 3 dây tín hiệu sử dụng 74hc595


Hệ thống đa tác vụ và thời gian thực với vi điều khiển Pic (phần 4)

Ví dụ 10.3 Đo điện áp và xuất đến cổng RS232
Trong ví dụ này, có nhiều phức tạp hơn hai ví dụ trước, điện áp đọc bằng cách sử dụng bộ chuyển đổi A/D gửi đến máy tính thông qua cổng nối tiếp. Ví dụ này sử dụng ba tác vụ: LiveGet_voltage, và To_RS232
Task Live chạy mỗi 20 ms, nhấp nháy đèn led kết nối đến port RD7 của vi điều khiển để báo rằng hệ thống đang hoạt động.

Hệ thống đa tác vụ và thời gian thực với vi điều khiển Pic (phần 3)

Ví dụ 10.1 - LEDs
Ví dụ đơn giản dựa trên RTOS, bốn LED đơn kết nối 4 chân thấp PORTB của vi điều khiển PIC18F452. Phần mềm bao gồm 4 tác vụ, mỗi tác vụ có nhiệm vụ điều khiển nhấp nháy một đèn led với tốc độ khác nhau
Tác vụ 1 , gọi task_B0, nhấp nháy led kết nối đến port RB0 tại tốc độ 250ms
Tác vụ 2 , gọi task_B1, nhấp nháy led kết nối đến port RB1 tại tốc độ 500ms
Tác vụ 3, gọi task_B2, nhấp nháy led kết nối đến port RB2 mỗi một giây
Tác vụ 4, gọi task_B3, nhấp nháy led kết nối đến port RB3 mỗi 2 giây
Hình 10.7 sơ đồ kết nối . Mạch sử dụng thạch anh 4 MHZ các led nối với chân RB0-RB3 thông qua điện trở hạn dòng 

Hệ thống đa tác vụ và thời gian thực với vi điều khiển Pic (phần 2)

Trong một hệ thống thời gian thực một tác vụ có thể rơi vào một trong các trạng thái sau đây (xem hình 10.6):
- Sẵn sàng để chạy.
Chạy.Bị chặn.
     Khi một tác vụ lúc đầu được tạo ra, nó thường ở trạng thái sẵn sàng để chạy  được nhập vào trong danh sách tác vụTừ trạng thái này, tùy thuộc vào các thuật toán lập lịch trình, nhiệm vụ có thể trở thànhmột nhiệm vụ đang chạy. Theo các điều kiện của lịch ưu tiên, nhiệm vụ sẽ chạy nếu nó  nhiệm vụ ưu tiên cao nhất trong hệ thống và không phải đợi một nguồn tài nguyên. Một nhiệm vụ chạy trở thành một nhiệm vụ chặn nếu nó cần một nguồn tài nguyên chưa có sẵn. Ví dụ, một tác vụ có thể cần dữ liệu từ một bộ chuyển đổi  A/D (bộ chuyển đổi từ tương tự sang số)  và bị chặn cho đến khi bộ chuyển đổi A/D hoàn tấtMột khi các nguồn tài nguyên có thể được truy suất, các nhiệm vụ bị chặn trở thành một nhiệm vụ chạy nếu nó là nhiệm vụ ưu tiên cao nhất trong hệ thống, nếu không nó chuyển sang trạng thái sẵn sàng.Chỉ một nhiệm vụ đang chạy có thể bị chặn. Một nhiệm vụ sẵn sàng chạy không thể bị chặn.
     
Khi một nhiệm vụ chuyển từ trạng thái này sang trạng thái khác, bộ vi xử lý lưu bối cảnh của nhiệm vụ đang chạy vào trong bộ nhớ, nạp bối cảnh nhiệm vụ mới từ bộ nhớ,  sau đó thực thi lệnh mới như yêu cầu.


inmoov finger voice test

Inmoov finger voice test