Thông báo

Collapse
No announcement yet.

Hành Trình Học Pic Với Easypic Kit

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

  • #16
    Hiện nay trang portal của dientuvietnam đang được xây dựng, những bài viết review sản phẩm này rất hay. Nếu em thích em có thể tham gia xây dựng portal của dientuvietnam luôn. Anh sẽ setup cho em để làm review sản phẩm cho dientuvietnam.

    Như vậy, nếu có ai có sản phẩm, thì chắc họ muốn có review là họ sẽ gửi sản phẩm cho em. Em có phụ trách chuyên mục này được đấy, anh thấy em làm rất tốt.

    Vậy có gì em add nick anh falleafd để anh hướng dẫn em luôn. Cái này thực sự là rất hay đấy. Anh muốn phát triển cái này lâu rồi, nhưng không phải ai cũng có máy ảnh tốt để chụp ảnh, và không phải ai cũng có thể tổng kết và phân tích vấn đề hợp lý. Các anh khác sẽ hướng dẫn em và tư vấn cho em về vấn đề review sản phẩm.

    Chúc vui.
    Falleaf
    Công ty TNHH Thương mại và Giao nhận R&P
    58/57 Nguyễn Minh Hoàng - Phường 12 - Quận Tân Bình - TP.HCM
    mail@falleaf.net - VP: (04) 36408561 - (08) 38119870

    Comment


    • #17
      @HTAluvBebeo
      Bài viết của bạn rất hay, Mình đang cần học Pic trong thời gian càng nhanh càng tốt, Hì hỏi đứa bạn muốn học vi điều khiển thì dùng con gì, thì được khuyên là dùng Pic, ưu là gì thì chịu vì đã dùng con vi điều khiển nào đâu.
      Lôi đống sách cũ ra thì toàn 8051 nên giờ toàn phải mò mẫm,
      Bạn post tiếp bài sớm nhé.

      Comment


      • #18
        @anh Dũng: Em làm cái này vì thấy nó hay, tốt, mà lại có được sự hỗ trợ nhiều của MH Tech, nên muốn mọi người cùng biết đến sự hỗ trợ của anh, có cái mà học, mà phát triển ạ
        Như thế chắc không là cá nhân rồi, hehe

        @anh Hiệp: em add nick anh lâu lắm rồi, có khi được 2 năm rồi ấy chứ cứ lần nào vào chat là y rằng chả nhớ em là ai :P hehe
        Em cũng thấy làm phần review sản phẩm này rất hay. VÀ rất vui được anh tin tưởng.

        Máy ảnh thì em có, mặc dù không xịn lắm PnS thôi, nhưng chắc là ko đến nỗi xấu quá anh nhỉ. Edit và tổng hợp chắc sẽ okie ạ. Nên nếu được anh tin tưởng em cũng xin góp sức xây dựng diễn đàn.

        Nhưng mà thực sự thì trình độ em còn rát non kém, nên về vấn đề kĩ thuật em rất cần được hỗ trợ từ những người có kinh nghiệm và người gửi sản phẩm.
        Cái EasyPic kit của anh Dũng em có thể review sơ qua được vì nó cũng khá cơ bản và em cũng có đọc một ít về PIC nên okie.
        Chứ ví dụ như đưa em một sản phẩm, mà trình độ em chưa đủ hiểu (chắc sẽ có nhiều sp như thế) thì rât cần sự tư vấn về kĩ thuật của các anh

        Thêm một ý nữa là em mong muốn chủ yếu là mọi người cùng nhau góp sức làm ạ, mỗi người có cái gì dính dáng đến điện tử, thấy hay đều có thể viết review. Chứ dtvn nhà mình có cử ra một đôi 10 người xuất sắc ra cũng không thể bằng sức mạnh cả công đồng được ạ.
        @hoathep: rất vui đuợc bác ủng hộ. Bác có thể kiếm hoặc làm cho mình một mach nạp đơn giản, một con PIC hoặc mô phỏng proteus cũng được. Đọc tài liệu về PIC, trên diễn đàn mình và picvietnam có rất nhiều TUT và bài viêt hay, bác có thể bắt đầu từ đó. Có gì khó khăn bác cứ post câu hỏi lên, chắc chắn mọi người sẽ giúp đỡ thôi ạ
        Last edited by HTAluvBebeo; 09-06-2008, 12:08.

        Comment


        • #19
          @HTAluvBebeo Hôm nào qua anh tặng bộ PCB KIT PIC2 + bomlist component. Về em viết hướng dẫn các bạn tự làm nhé.
          Nhà sản xuất chuyên nghiệp các sản phẩm OEM cho gia dụng và công nghiệp.

          Biến tần
          Máy giặt
          Lò vi sóng
          Bếp từ.
          Tủ lạnh.
          Điều hòa

          Comment


          • #20
            Chào các bác!
            Tuần vừa rồi em khá bận, nên bây giờ mới update tiếp phần viết dở về LCD.
            Chúng ta sẽ bắt đầu luôn với phần define custom character nhé.
            Sau đó sẽ có một ví dụ một chương trình để test cái driver và phần custom char này luôn nhé.
            Okie !

            CUSTOM CHARACTER

            Ta nói thêm một chút về Character Generator ROM và RAM nhé.

            Khi các bác gửi một kí tự (ví dụ là “P”) dưới dạng mã ASCII tới LCD module thì con chíp điều khiểm module này sẽ dò theo các tổ hợp các 5x8pixel có sẵn trong ROM để hiển thị các tổ hợp pixel này lên LCD. Tuy nhiên việc thay đổi phần ROM này với người sử dụng thông thường là gần như không thể. Nếu các bác là nhà sản xuất lớn, đặt hàng với số lượng lớn thì có thể yêu cầu nhà sản xuất module tạo ra các custom character cho bác, do đó hoàn toàn có thể có các version character LCD cho tiêng giun dế như ngôn ngữ của Thái chẳng hạn. Vậy với người dùng phổ thông như chúng ta, làm sao có thể tạo ra các hình vẽ hay các kí tự đặc biệt cho character LCD?
            Thường thì các module LCD tương thích hd44780 đều cung cấp cho các bác 64 byte RAM để các bác có thể làm được việc này. Do vậy bác có thể lưu trữ các kí tự riêng vào phần RAM này và khi gửi các mã ASCII dẫn đến phần CGRAM này, LCD controller (ví dụ HD44780) sẽ làm việc tương tự như đối với phần ROM như đã đề cập ở trên để có thể hiển thị các kí tự riêng của bạn.

            Có một giới hạn là chỉ có 64byte RAM thôi. Mỗi byte này sẽ được dùng cho 5 bit chiều ngang trong các kí tự 5x8pixel của bạn. Mỗi kí tự của bạn lại phải có 8 dòng 5bit như thế. Do đó phần CGRAM này chỉ có thể lưu tối đa 8 kí tự riêng mà các bác tạo ra tại một thời điểm.

            Có một cách để khác phục giới hạn 8 kí tự riêng này, đó là các bác lưu các kí tự đặc biệt bác cần vao PC, PIC, etc. Sau đó khi nào cần dùng đến kí tự nào thì mới nhét các kí tự đó từ PIC vào CGRAM của LCD module, rồi cho hiển thị. Như thế lượng kí tự bị giới hạn lúc này là do bộ nhớ của PIC các bác nhỉ Nhưng vẫn có một hạn chế là tại một thời điểm, số lượng kí tự đặc biệt tự tạo này vẫn chỉ là 8 thôi. Không biết có cao thủ nào có cách hay hơn có thể chia sẻ với anh em không

            Sau đây là các bước thực hiện quá trình ghi các kí tự tự tạo vào CGRAM

            1. Reset chân RS và R/W để bắt đầu thực hiện quá trình ghi command
            2. Ghi vào địa chỉ CGRAM (CGRAM Address) trong thanh ghi IR các giá trị từ 64 đến 127 tương ứng với vị trí 0 đến 63 trong CGRAM
            3. Chuyển sang ghi DR bằng cách cho chân RS lên cao.
            4. Sau đó send các bytes chứa tổ hợp các bit của kí tự tự tạo của bác. Cứ ghi hết một byte vào CGRAM thi CGRAM address sẽ tự động được tăng 1đv nên bác không cần quay lại làm bước set địa chỉ của CGRAM nữa, bước đó chỉ cần làm lần đầu tiên.
            5. Thoát ra khỏi CGRAM để có thể thực hiện việc bắn các kí tự đặc biết đó lên LCD

            6. Để có thể hiển thị các kí tự vừa tạo lên LCD, các bác gửi kí tự ASCII từ 0 đến 7 ra là được

            Nói lòng vòng vậy, để cho nó khái quát, các bác có thể làm tương tự với các vđk khác và driver khác. Chứ thực ra công việc của các bác rất đơn giản. Có thể nói tóm gọn lại 3 bước là: ghi địa chỉ của CGRAM (làm 1 lần đẩu) qua IR; ghi lần lượt các byte cần thiết để tạo kí tự đặc biệt; gọi các kí tự đó ra.
            Những việc này chỉ cần 1,2 lệnh có sẵn trong driver tớ đã cung cấp ở trên
            Ngay sau đây sẽ là một sample code, chủ yếu là để test các chức năng của driver và có cả phần custom char này nữa. Đọc code minh họa chắc sẽ dễ hiểu hơn là toàn lý thuyết

            #include <16F877.H>
            #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, BROWNOUT, NOLVP, NOCPD, NOWRT
            #use delay(clock=20000000)

            #include <lcd_4bit.c> // include cái driver lcd ở trên đó các bác
            // đây là các tổ hợp các byte 5bit chiều ngang của một kí tự
            // em lấy ví dụ hình này từ trang
            //http://www.deanandara.com/ApuLcd/
            char image[48] =
            {
            4, 3, 15, 7, 15, 18, 18, 14, /* Char1: upper left */
            31, 31, 31, 31, 3, 0, 12, 18, /* Char2: upper center*/
            0, 24, 28, 30, 18, 2, 12, 18, /* Char3: upper right */
            30, 15, 30, 12, 6, 2, 1, 0, /* Char4: lower left */
            22, 12, 0, 17, 24, 30, 1, 30, /* Char5: lower center*/
            22, 12, 4, 18, 2, 4, 24, 0 /* Char6: lower right */
            };
            //===================================
            void lcd_scroll_right(void) //hàm này để cuộng phải màn hình, ghi vào IR
            {
            lcd_send_byte(0, 0x1E); // các bác xem lại bảng command cái 0x1E nhé
            }
            //-------------------------

            void lcd_scroll_left(void) //hàm này để cuộng phải màn hình
            {
            lcd_send_byte(0, 0x18); // các bác xem lại bảng command cái 0x18 nhé
            }
            ////////////////////////////////////


            void main()
            {
            int8 i;
            set_tris_b(0x00);
            output_high(PIN_B3); // bật Backlight
            delay_ms(500);
            lcd_init(); // khởi tạo LCD
            delay_ms(100);
            lcd_send_byte(0,0x40); // ghi CGRAM Address trong IR, giá trị này
            // là vị trí 0 trong CGRAM
            for (i = 0; i < sizeof(image); i++) // lần lựot ghi các byte 5bit
            {
            lcd_send_byte(1,image[i]); // cua cac ki tu dac biet
            }
            printf(lcd_putc, "\f");
            delay_ms(500);

            while(1)
            {output_high(PIN_B3);
            // Test on line 1 and 2
            lcd_gotoxy(5 ,1);
            printf(lcd_putc, "1st line");
            lcd_gotoxy(5, 2);
            printf(lcd_putc, "2nd line");
            delay_ms(3000);

            // Test some additional characters.
            printf(lcd_putc, "\fABCDEFGHIJKLMNO");
            printf(lcd_putc, "\nPQRST&012345679");
            delay_ms(3000);

            // Clear the LCD.
            printf(lcd_putc, "\f");
            delay_ms(500);

            // Test that lcd_gotoxy() works. Go to each of
            // the four corners and put a number in each one,
            // in a clockwise direction, starting with the upper
            // left corner.
            lcd_gotoxy(3, 1);
            printf(lcd_putc, "a number in");
            lcd_gotoxy(3, 2);
            printf(lcd_putc, "each corner.");
            lcd_gotoxy(1, 1);
            printf(lcd_putc, "1");
            lcd_gotoxy(16, 1);
            printf(lcd_putc, "2");
            lcd_gotoxy(16, 2);
            printf(lcd_putc, "3");
            lcd_gotoxy(1, 2);
            printf(lcd_putc, "4");
            delay_ms(3000);
            printf(lcd_putc, "\f");
            delay_ms(500);

            // Type some characters and backspace over them.
            lcd_gotoxy(3, 1);
            printf(lcd_putc,"$HELLO WORLD$");
            lcd_gotoxy(4, 2);
            printf(lcd_putc,"HTAluvBeBeo");
            delay_ms(3000);

            // Go to end of 2nd line.
            lcd_gotoxy(16, 2);

            // Backspace over 2nd line.
            for(i = 0; i < 16; i++)
            {
            printf(lcd_putc," \b\b");
            delay_ms(150);
            }

            // Go to end of first line.
            lcd_gotoxy(16, 1);

            // Backspace over first line.
            for(i = 0; i < 16; i++)
            {
            printf(lcd_putc," \b\b");
            delay_ms(150);
            }
            printf(lcd_putc, "\f");
            delay_ms(500);

            // dưới đây là phần gọi các kí tự các bạn vừa định nghĩa
            // và hiển thị lên màn hình lcd
            lcd_gotoxy(16,1);
            lcd_putc(0); // gọi kí tự ghi ở vị trí thứ nhất (0) trong CGRAM
            lcd_putc(1);
            lcd_putc(2);
            lcd_gotoxy(16,2);
            lcd_putc(3);
            lcd_putc(4);
            lcd_putc(5);

            lcd_gotoxy(20,1);
            printf(lcd_putc, "HTAluvBeBeo0989313513");
            lcd_gotoxy(20,2);
            printf(lcd_putc, " dientuvietnam.net ");



            for(i = 0; i < 40; i++) // Scroll for 40 chars
            {
            lcd_scroll_left();
            delay_ms(400); // This sets the scroll speed
            }

            //delay_ms(1000); // Wait 1 seconds between scrolling
            // each screen.
            printf(lcd_putc, "\f");
            delay_ms(100);
            }
            }
            Vậy là test xong phần LCD
            Các bác thực hành luôn trên EasyPIC Kit hoặc proteus nhé
            thêm cái sch của EasyPIC để các bác dễ bề dùng proteus này

            Mong được các cao thủ chỉ chỗ sai và góp ý kiến giúp em xây dựng topic này với ạ
            Phần tiếp theo có lẽ sẽ là về ds1307 và ds1820 hai em IC của maxim
            Attached Files

            Comment


            • #21
              em là sinh viên BK,em đang làm đồ án về pic,nên cần mua easypic kit để học.em rất quan tâm đến sp cua minhhaco nhưng trang web của minhhaco không vào được,ai biết địa chỉ có thể mua được sp này cho em xin với.
              em cám ơn nhiều.

              Comment


              • #22
                bác ơi

                em cũng chẳng có quảng cáo gì đâu.nhưng nhủ vậy là đắt rồi.em bít ở TPHCM có 1 bác bán KIT rất tốt trang web hình như là www.elabvn.com em thường đến nhà bác ấy mua,giá phải chăng lại còn được trainning free nữa bác ấy khá tốt và có nhiều kiến thức về lĩnh vực này.hoc BK TPHCm mà lị.ai cần gì cứ đến nhà mua.ko có thì đặt bác ấy làm cho.nhanh rẻ tốt.bác nào biết chỗ ngon hơn thì chỉ nhé
                bác Hoàng 0989 703330 số 904C chung cư hoa sứ quận phú nhuận

                Comment


                • #23
                  HTAluvBebeo có thể up lên sơ đồ nguyên lý của từng khối để những người mới nhập môn như mình có thể tham khảo, học hỏi thêm ko ?

                  Comment


                  • #24
                    Bác Minh Hà ơi, bác còn bán cái board này nữa ko ? Cho cháu địa chỉ nhé, cháu muốn múc một cái , cháu ở Tân Bình, HCM. À, còn phiên bản đời sau của nó có già khác, đặc biệt hơn ko bác?

                    Comment


                    • #25
                      mình cũng đang rất cần mua cai Kit easy Pic, nhưng vào web minhhoco.com không vào đựoc, ai có thể giúp mình với. Nếu bạn nào không có nhu cầu sử dụng kit pic này thì có thể để lại cho mình được không, mình cảm on rất nhiều

                      Comment


                      • #26
                        board này giá như vậy là cũng hợp lý, mình cũng muốn mua một cái, nhưng web ko vào được, chắc host hết hạn ròi.
                        với công nghệ hiện giờ thì bên sao kim (mình đã đi thực tập) có thể làm được board với đường mạch nhỏ nhất là 8mil, cái mạch này (2 lớp, phủ màu xanh hay đỏ, mạ vàng hay thiếc...) ko là vấn đề, nếu làm với số lượng lớn thì giá rẻ.
                        Làm mọi việc đúng giờ

                        Hãy là người Việt Nam hiện đại

                        Comment


                        • #27
                          MÌnh vừa mới mua 1 kit của elabvn.com. Chất lượng mạch tốt, phần cứng thì k giống như các loại thường dùng nên phải chú ý 1 tí. Tuy nhiên được hỗ trợ code nên có thể dễ dàng làm theo.
                          Y!M: vinasheva

                          Comment


                          • #28
                            Mình ở Hà Nội , không biết chỗ nào bán vậy?

                            Comment


                            • #29
                              các bạn có thể vào trang w của công ty thiên minh
                              mình cũng mới mua 1 bộ,dùng tốt lắm

                              Comment


                              • #30
                                Nguyên văn bởi manhbkhn Xem bài viết
                                các bạn có thể vào trang w của công ty thiên minh
                                mình cũng mới mua 1 bộ,dùng tốt lắm
                                của thiên minh giá trên trời, sv có phải ai cũng mua được đâu. bạn nào có mạch PCB có thể share cho mọi người được không

                                Comment

                                Về tác giả

                                Collapse

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

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

                                Collapse

                                Đang tải...
                                X