Thông báo

Collapse
No announcement yet.

Chương trình tạo LCD 16x2 Tree Menu

Collapse
X
 
  • Lọc
  • Giờ
  • Show
Clear All
new posts

  • Chương trình tạo LCD 16x2 Tree Menu

    , hôm nay chủ nhật rảnh được một tí, vả lại thấy các bác trên 4r đưa là nhiều giải thuật lập trình menu nên em cũng thấy ham, thế là lôi luôn cái menu cũ ra, hì hục với cái VS2008, cuối cùng em cũng viết được cái chương trình này, công việc là các bác chỉ cần làm theo hướng dẫn của em là có cái menu bao nhiêu nhánh sâu bao nhiêu cũng được. Giao diện đây này

    Hướng dẫn sử dụng:
    1. Add Root Menu, là menu nhánh trên cùng
    2. Add Child, trước hết phải click vào nhánh muốn có menu con, nhấp phải và chọn Add Child
    3. Delete, cũng phải chọn nhánh muốn xóa







    Một vài chú ý khi sử dụng phần mềm nhé các bác
    1. Không được đặt tên cho các nhánh menu trùng nhau, vì tên sẽ là ID để so sánh luôn
    2. Nếu dùng PIC16 thì giới hạn bị nhỏ lại, khi xuất file, các bác cắt ra và sửa chương trình lại 1 xíu
    3. Phải chọn Nhánh trước khi Add Child
    4. Đòi hỏi máy tính phải cài .NET 2.0 hoặc cao hơn


    Sau khi xuất file chỉ việc dùng CCS C biên dịch, muốn thì dùng luôn file Proteus đi kèm để mô phỏng
    Attached Files
    Last edited by minhtuan04; 18-08-2008, 00:15.
    Diễn đàn Vi điều khiển:

  • #2
    Cái bác này hay nhở? chắc em phải bắt chước làm một cái bên AVR cho bằng anh bằng em. Các bác nhớ cài dotnet20 trở lên nhá
    Email: - Mobil: tạm thời ngừng liên lạc 1 thời gian
    Giới thiệu website kiếm tiền trực tuyến & tăng thứ hạng website.

    Comment


    • #3
      Bạn minhtuan04 thân mến. Bạn có thể nói rõ hơn cách tạo menu trên LCD được không? Tôi không biết VS2008 và .NET2.0 là gì? Sau khi biên dịch bằng CCS C nạp vào PIC thì lấy gì để đi vào menu, rồi khi chọn một mục nào đó trong menu để làm một việc gì đó thi phải làm thế nào ?
      Tôi cũng đã viết nhiều menu trên LCD bằng ASM và CCS C nhưng thấy nó rất phức tạp và dễ nhầm lẫn, nếu có thể thực hiện như bạn thì hay quá!
      Chúc vui!

      Comment


      • #4
        Nguyên văn bởi pvkhai Xem bài viết
        Bạn minhtuan04 thân mến. Bạn có thể nói rõ hơn cách tạo menu trên LCD được không? Tôi không biết VS2008 và .NET2.0 là gì? Sau khi biên dịch bằng CCS C nạp vào PIC thì lấy gì để đi vào menu, rồi khi chọn một mục nào đó trong menu để làm một việc gì đó thi phải làm thế nào ?
        Tôi cũng đã viết nhiều menu trên LCD bằng ASM và CCS C nhưng thấy nó rất phức tạp và dễ nhầm lẫn, nếu có thể thực hiện như bạn thì hay quá!
        Chúc vui!
        Cái mạch đơn giản đi kèm là phần cứng để chạy cái menu này, mọi việc rất đơn giản, bác chỉ việc Export C files là chương trình trên sẽ xuất ra file C, bác dùng CCS C mở nó lên rồi edit 1 tí nữa là chạy được.

        Bác chú ý nhé, những cái menu cuối cùng không có menu con thì sẽ thực thi 1 lệnh, còn những cái có menu con thì sẽ truy xuất đến Menu con trước, bác tìm trong code, trong hàm ProcessAction() sẽ có những lựa chọn cho bác đặt hàm xử lý của mình trong đó, những chỗ đó tương tự thế này
        PHP Code:
                        case _ROOT1//Function for Root1 here
                        
        lcd_putc("\fRoot1");
                        break;
                        
                        case 
        _MENU_1//Function for Menu 1 here
                        
        lcd_putc("\fMenu 1");
                        break; 
        Bác thay thế lcd_putc(...) bằng các hàm xử lý của mình, và lúc này bác cứ sử dụng thoải mái cái LCD, khi nào cần gọi lại menu, bác chỉ cần gọi hàm ProcessAction(KEY) với tham số KEY tùy bác xử lý, nếu KEY = CANCEL sẽ hiển Menu trước đó...., ngoài ra tinh vi hơn, bác sửa hết code cũng dễ thôi, cái quan trọng của Menu tập trung hết vào ProcessAction rồi, việc gọi menu chỉ là gọi cái hàm này thôi.
        Diễn đàn Vi điều khiển:

        Comment


        • #5
          Bài viế của bạn mintuan04 hay quá, rất thiết thực và hữu ích, cám ơn bạn rất nhiều. Nếu có thể bạn hướng dẫn anh em cách làm cái LCD tree menu bằng VS2008 để anh em có thể tự làm những phần mềm tiện ích khác tương tự được không.

          Comment

          Về tác giả

          Collapse

          minhtuan04 Tìm hiểu thêm về minhtuan04

          Bài viết mới nhất

          Collapse

          Đang tải...
          X