Luận Văn Ứng dụng vi điều khiển Atmega 90S8515L trong thiết kế và điều khiển bảng led

Thảo luận trong 'Công Nghệ Thông Tin' bắt đầu bởi Thúy Viết Bài, 5/12/13.

  1. Thúy Viết Bài

    Thành viên vàng

    Bài viết:
    198,891
    Được thích:
    170
    Điểm thành tích:
    0
    Xu:
    0Xu
    I. Mục đích nghiên cứu.

    Sự phát triển vượt bậc của ngành kỹ thuật máy tính và điện tử hiện nay đã được minh chứng cụ thể qua cuộc sống hàng ngày của chúng ta trong tất cả các lĩnh vực.
    Việc ứng dụng vi điều khiển vào đo lường và điều khiển đã đem lại những kết quả đầy tính ưu việt. Các thiết bị, hệ thống đo lường và điều khiển có độ chính xác cao, thời gian thu thập dữ liệu ngắn, nhưng đáng quan tâm hơn cả là mức độ tự động hóa trong việc thu nhận và xử lý số liệu.

    Kỹ thuật số ra đời đã khắc phục được những nhược điểm của kỹ thuật tương tự, làm cho các bộ phận máy móc trở nên đơn giản và gọn nhẹ, ít tốn kém năng lượng và xử lý thông tin nhanh, chính xác hơn so với kỹ thuật tương tự.

    Vi điều khiển là một chíp điện tử có mật độ tích hợp cao, trong đó có các vi mạch số có khả năng nhận, xử lý và xuất dữ liệu. Đặc biệt là quá trình xử lý số liệu được điều khiển theo một chương trình gồm tập các lệnh được người sử dụng nạp sẵn vào trong bộ nhớ chương trình của vi điều khiển. Một vi điều khiển có thể thực hiện được rất nhiều yêu cầu điều khiển khác nhau.
    Kỹ thuật vi điều khiển ra đời với sự kết hợp giữa phần cứng và phần mềm đã làm cho hoạt động của các mạch điện tử trở nên mềm dẻo hơn với những phần mềm rất linh hoạt mà ta có thể sửa chữa, thay đổi bổ sung làm cho chương trình điều khiển trở nên phong phú tùy theo nhu cầu của người sử dụng. Đây là ưu điểm rất thuận lợi mà kỹ thuật vi điều khiển mang lại.
    Vì những lý do trên, em đã chọn đề tài "ứng dụng vi điều khiển Atmega 90S8515L trong thiết kế và điều khiển bảng led " làm đề tài nghiên cứu khoa học.

    II. Nguyên lý hoạt động.

    Nguyên lý hoạt động của bảng điện tử dựa theo nguyên lý hoạt động của các màn hình, đó là sử dụng phương pháp quét hình theo từng dòng. Mỗi dòng gồm nhiều điểm ảnh, mỗi điểm ảnh có thể có một hoặc vài đèn, màu sắc khác nhau. Mỗi đèn được biểu diễn thông qua một bit dữ liệu, bit 1 tương ứng với đèn sáng, bit 0 tương ứng với đèn tắt.

    Tại một thời điểm, không phải tất cả các dòng trên màn hình đều sáng nhưng do tốc độ quét nhanh và sự lưu ảnh trên võng mạc tạo cho người nhìn thấy hình ảnh liên tục. Trong quá trình quét, mạch điều khiển sẽ đưa dữ liệu ra Module hiển tthị, chính dữ liệu này sẽ quyết định điểm ảnh nào sáng, điểm ảnh nào tắt, màu sắc của điểm ảnh là gì. Các điểm ảnh này sẽ tạo ra hình ảnh trên bảng điện tử.

    III.Phân tích hệ thống.

    Trong dự án này, bảng điện tử có kích thước 16x64 điểm ảnh, mỗi điểm ảnh có hai đèn xanh và đỏ, chia làm 2 Module, mỗi Module có kích thước 16x32 điểm ảnh.
    Để hiển thị một hình ảnh ta phải quét hết 16 dòng. Nếu thời gian quét một dòng là 1ms, thì để quét xong một hình ảnh ta phải mất 16ms. Nếu thời gian trễ cho một hình ảnh là 34ms thì thời gian hiển thị của hình ảnh đó là 50ms. Như vậy, ta có thể hiển thị được 1000/50 = 20 hình/s.
    Chất lượng hình ảnh phụ thuộc vào tốc độ dòng quét, tỉ lệ thời gian sáng và thời gian tối của từng dòng. Thời gian quét dòng phụ thuộc vào thời gian đẩy dữ liệu ra và thời gian trễ sáng cho dòng đó. Độ trễ sáng của dòng có ảnh hưởng đến mức độ sáng tối cũng như màu sắc của hình ảnh, vì vậy, để tạo ra nhiều mức sáng tối và tăng số màu hiển thị thì phải có khả năng thay đổi độ trễ sáng của dòng.

    IV. Thiết kế phần cứng.

    Phần cứng bảng điện tử gồm có Module điều khiển, Module quét dòng, và các Module hiển thị. Module điều khiển lấy dữ liệu đưa ra bảng điện tử, đồng thời đưa các tín hiệu điều khiển tới Module quét dòng để điều khiển việc quét dòng. Module quét dòng dựa vào các tín hiệu từ Module điều khiển để đưa tín hiệu chọn dòng ra Module hiển thị, quyết định dòng nào sáng, dòng nào tối. Các Module hiển thị nhận dữ liệu và tín hiệu điều khiển từ Module điều khiển và Module quét dòng, thông qua các IC chuyên dụng để điều khiển các đèn sáng tối, tạo ra hình ảnh trên bảng điện tử.

    1. Module hiển thị

    Module này có nhiệm vụ nhận dữ liệu và các tín hiệu điều khiển đưa tới từ Module điều khiển để xác định điểm ảnh nào sẽ sáng hay tắt, sáng màu gì trên mỗi dòng được quét.
    Hệ thống sử dụng các Module hiển thị có kích thước 16x32. Mỗi module 16x32 được tạo thành từ 8 ma trận LED 2 màu (đỏ và xanh), anode chung với kích thước 8x8. Các ma trận này được nối với nhau thành 16 dòng và 32 cột. Module hiển thị LED sử dụng các ma trận LED 8x8, mỗi điểm có hai đèn xanh và đỏ ghép lại.

    2. Module quét dòng.

    Nhiệm vụ của module này là giãi mã tín hiệu chọn dòng từ module điều khiển đưa xuống , để tại mỗi thời điểm chỉ cho một dòng được sáng. Bảng điện tử có kích thước 16 dòng và 64 cột , được quét bởi một Module quét dòng , đầu vào là các tín hiệu điều khiển được đưa xuống từ Module điều khiển, đầu ra sẽ chọn một trong số 16 dòng để hiện thị. Mỗi Module hiển thị tại một thời điểm chỉ cho một dòng được sáng.
    3. Module điều khiển.
    Đây là Module điều khiển chính của bảng điện tử với bộ xử lý trung tâm là vi điều khiển Atmega 90S8515L. Module điều khiển là Module quan trọng nhất, nó điều khiển toàn bộ hoạt động của hệ thống. Có thể nói đây là bộ não của toàn bộ hệ thống, nó thực hiện các chức năng sau.
    - Nhận dữ liệu từ bộ nhớ chương trình ghi vào bộ nhớ RAM
    - Lấy dữ liệu từ bộ nhớ RAM và hiển thị qua bảng điện tử thông qua các thao tác đẩy dữ liệu và quét dòng.

    V. Thiết kế phần mềm.

    Vì hệ thống được thiết kế theo mô hình của hệ thống tự động, nên chương trình điều khiển phải đáp ứng tất cả những công việc đặt ra của hệ thống, khi khởi động hệ thống chương trình điều khiển thực hiện quét xâu văn bản cần hiển thị, nạp dữ liệu nhận được vào bộ đệm của bảng điện tử, sau đó thể hiện thông tin lên bảng điện tử, công việc đó được lặp đi lặp lại nhiều lần, dựa vào những yêu cầu đó phần mềm điều khiển được thiết kế gồm các Module chương trình như sau.

    + void LOAD_FONT(char NUMBER): là thủ tục lấy font của ký tự đang xét vơi mã ASCII tương ứng.
    + void NAP_BUFFER(unsigned char x): là thủ tục nạp thông tin vừa nhận được từ thủ tục LOAD_FONT vào bộ đệm của bảng điện tử.
    + void SCAN(void): là thủ tục quét dữ liệu từ bộ đệm để hiển thị lên bảng điện tử.
    + void main(void): là thân chương trình chính, nó duyệt từng ký tự của xâu cần hiển thị sau đó lần lượt gọi các thủ tục LOAD_FONT, NAP_BUFFER, SCAN.

    VI. Kết luận.

    Kết quả đạt được.
    + Đã chế tạo thành công bảng điện tử vơi kích thước 16x64x2color.
    + Hình ảnh chuyển động tốt, có thể thay đổi được tốc độ chạy và màu sắc của hình ảnh.
    + Nhìn chung trong quá trình hoạt động chương trình điều khiển đáp ứng được hầu hết những yêu cầu đặt ra của hệ thống và không xẩy ra lỗi.
    Kết quả chưa đạt được.
    + Chất lượng màu sắc của hình ảnh chưa được rõ nét
    + Hệ thống chưa gép nối được với bàn phím để nhận dữ liệu từ bàn phím.
    + Khi thay đổi nội dung của xâu thì phải nạp lại mã nguồn.
    + Bảng điện tử chỉ mới thể hiện được text chuẩn không dấu.
    Hướng phát triển của đề tài.
    + Tiếp tục mở rộng đề tài với kich thước lơn hơn.
    + Xây dựng đầy đủ bộ font tiếng việt cho bảng điện tử.
    + Thực hiện ghép nối bảng điện tử với bàn phím để nhận dữ liệu trực tiếp từ bàn phím khi thay đổi nội dung của bảng điện tử mà không phải nạp lại mã nguồn cho vi điều khiển.
    + Nội dung của bảng điện tử có thể là dạng text hoặc là đồ họa.
     

    Các file đính kèm:

Đang tải...