Thông báo

Collapse
No announcement yet.

8051 hạn chế công nghệ hay trình độ lập trình ?

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

  • #31
    Nguyên văn bởi duong_act Xem bài viết
    @ Thớt + All.
    Nó là cả 2.
    1. Hạn chế công nghệ thì rõ rồi, cứ nhìn phần cứng thì rõ.
    - Tốc độ xử lý thấp. Thấp vào top so với các MCU hiện giờ như AVR,PIC,,,
    - Ngoại vi hạn chế. Chả có cái gì ngoài IO, ngắt, timer... trong khi các MCU khác thì nào là ADC,DAC,SPI,I2C....
    - Dung lượng bộ nhớ ít. 8K hay 16K, 256 byte RAM thì làm ăn gì ? Làm đc mấy cái ứng dụng đơn giản, chương trình ngắn.
    - ....
    2. Trình độ lập trình. Cái này thì cũng rõ ràng luôn. Cùng 1 con 8051 người làm đc, người ko. Và trình độ lập trình thể hiện thêm ở cái chỗ là người giỏi biết chọn MCU phù hợp với thời đại, với dự án, với giá thành, với nhiều cái nữa thay thì cố nghiền ngẫm 1 MCU và cố gắng làm mọi thứ với nó trong khi ngoài kia vô số MCU nhiều ưu điểm và mà người ta đang sử dụng.
    vâng cái này thì em đồng ý,vậy nên bỏ phần lập trình đa nhiệm này thôi,công nhận là với 1 core 8051 thì dù có tích hợp các module như pic cũng không ăn nhằm gì,dự định vẫn chỉ là dùng làm nền tảng để học thôi sau đó chắc chuyển qua pic, pic được dùng trong cả quân sự nên có lẽ độ ổn định của nó hơn các dòng khác,bản thân em thì cứ theo nguyên lý ''hàng nào vừa tay thì mới bóp'' chưa xong 8051 thì em chưa chuyển qua pic,nhưng mà nhìn viết cho pic thì chắc nên dùng C nhỉ vì asm pic nhìn na ná 8051 viết sợ lộn
    SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI

    Comment


    • #32
      Nguyên văn bởi h11540 Xem bài viết
      vâng cái này thì em đồng ý,vậy nên bỏ phần lập trình đa nhiệm này thôi,công nhận là với 1 core 8051 thì dù có tích hợp các module như pic cũng không ăn nhằm gì,dự định vẫn chỉ là dùng làm nền tảng để học thôi sau đó chắc chuyển qua pic, pic được dùng trong cả quân sự nên có lẽ độ ổn định của nó hơn các dòng khác,bản thân em thì cứ theo nguyên lý ''hàng nào vừa tay thì mới bóp'' chưa xong 8051 thì em chưa chuyển qua pic,nhưng mà nhìn viết cho pic thì chắc nên dùng C nhỉ vì asm pic nhìn na ná 8051 viết sợ lộn
      Theo mình bạn đừng có nghĩ dùng 8051 làm nền tảng sau này chuyển qua PIC,AVR,vv. Nó sẽ chẳng giống nhau nhiều đâu mà làm nền tảng. Cách bố trí thanh ghi, tên thanh ghi cũng khác. Ngoại vi cũng khác, cách thức hoạt động của các ngoại vi cũng khác, tập lệnh ASM cũng khác. Dùng 8051 làm nền tảng cho MCU khác bạn chỉ kế thừa được 1 phần kiến thức về IO, Timer, Ngắt... cái mà MCU nào cũng có còn lại thì không. Hơn nữa xu thế bây giờ là C thay cho ASM nên cũng không nên quá đề cao vấn đề nắm rõ phần cứng làm gì. Dĩ nhiên nắm rõ cũng tốt nhưng phải nói là cực kì mất thời gian và công sức nếu muốn làm cái gì đó to tát một chút.

      Comment


      • #33
        8051 là họ vi điều khiển rất cơ bản mà, sinh viên hay người mới nghiên cứu dùng nó để học rất tốt.

        Comment


        • #34
          Nguyên văn bởi duong_act Xem bài viết
          Theo mình bạn đừng có nghĩ dùng 8051 làm nền tảng sau này chuyển qua PIC,AVR,vv. Nó sẽ chẳng giống nhau nhiều đâu mà làm nền tảng. Cách bố trí thanh ghi, tên thanh ghi cũng khác. Ngoại vi cũng khác, cách thức hoạt động của các ngoại vi cũng khác, tập lệnh ASM cũng khác. Dùng 8051 làm nền tảng cho MCU khác bạn chỉ kế thừa được 1 phần kiến thức về IO, Timer, Ngắt... cái mà MCU nào cũng có còn lại thì không. Hơn nữa xu thế bây giờ là C thay cho ASM nên cũng không nên quá đề cao vấn đề nắm rõ phần cứng làm gì. Dĩ nhiên nắm rõ cũng tốt nhưng phải nói là cực kì mất thời gian và công sức nếu muốn làm cái gì đó to tát một chút.
          về cái này thì em không đồng ý với bác được rồi,nền tảng em nói ở đây là việc làm quen với 1 vi điều khiển,hiểu các thuật ngữ cơ bản nhất,ngắt,time,thanh ghi......
          còn về chuyện 8051 khác pic thì em có tìm hiểu và nếu học pic thì sẽ học C luôn,nhưng phải công nhận 1 điều là học ASM và chuyển sang C rất là hữu íc vì nó không khác xa quá như các ngôn ngữ khác,lần đầu học ASM em có 1 cảm giác cực kì gần gũi như thể mình sinh ra để ''phải học'' nó vậy,chứ lúc đầu mà bụp luôn C là em nản ngay ,con 8051 là 1 nền tảng cực tốt vừa rẻ =.= (em mua 1 rổ vài chục con mà chưa hỏng con nào) nói về độ ổn định thì xếp bét,nhưng quăng quật với các ứng dụng rẻ thì dùng ngon,nhưng mà tiền ít thì hít thế thui
          SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI

          Comment


          • #35
            Nguyên văn bởi h11540 Xem bài viết
            về cái này thì em không đồng ý với bác được rồi,nền tảng em nói ở đây là việc làm quen với 1 vi điều khiển,hiểu các thuật ngữ cơ bản nhất,ngắt,time,thanh ghi......
            còn về chuyện 8051 khác pic thì em có tìm hiểu và nếu học pic thì sẽ học C luôn,nhưng phải công nhận 1 điều là học ASM và chuyển sang C rất là hữu íc vì nó không khác xa quá như các ngôn ngữ khác,lần đầu học ASM em có 1 cảm giác cực kì gần gũi như thể mình sinh ra để ''phải học'' nó vậy,chứ lúc đầu mà bụp luôn C là em nản ngay ,con 8051 là 1 nền tảng cực tốt vừa rẻ =.= (em mua 1 rổ vài chục con mà chưa hỏng con nào) nói về độ ổn định thì xếp bét,nhưng quăng quật với các ứng dụng rẻ thì dùng ngon,nhưng mà tiền ít thì hít thế thui
            Nói chung bạn vẫn chưa hiểu. Bạn cứ làm nữa đi rồi sau này bạn sẽ biết tại sao người ta lại chuyển từ 8051 sang AVR,PIC rồi các dòng cao nữa. Tại sao người ta lại chuyển từ AVR,PIC... sang các dòng cao nữa cao nữa. Tại sao người ta dần chuyển từ ASM sang C.
            Mình bắt đầu với PIC và C (dĩ nhiên có học 8051 vs ASM trước đó nhưng kiến thức =0). Và đến bây giờ mình nhận ra nếu 8051 không tồn tại cũng chẳng ảnh hưởng gì bởi nếu muốn làm với ASM phải đọc datasheet về cấu trúc và 8051 khác PIC cả về cấu trúc và tập lệnh ASM=> coi như học lại từ đầu. Nếu dùng C thì lúc đấy người ta đang chú trọng vào phát triển thuật toán rồi, chả quan tâm lắm đến phần cứng.

            Comment


            • #36
              h11540 xem thử chương 13 của cuốn sách Patterns for time-triggered embedded systems thử coi, ở đó tác giả có trình bày về các kiến trúc phần mềm cũng khá hay.

              Cái RTX51 full thì mình chưa có cơ hội được dùng, nhưng cái RTX51 tiny thì mình có dùng qua thử, mình cảm thấy nó không được hay lắm hoặc là do mình chưa hiểu rõ về nó, mình không dám khẳng định.

              Còn về lập trình bằng C không cần quan tâm nhiều đến phần cứng thì mình không đồng ý lắm. Vẫn phải nghiên cứu phần cứng + thuật toán nhiều nhiều bạn ah, đừng nên phụ thuộc quá nhiều vào kho thư viện mà C cung cấp sẵn. Các thư viện đó hầu như chỉ phù hợp cho một kiến trúc phần mềm (thường là Super Loop) thôi, khi chúng ta xây dựng một kiến trúc phần mềm mới thì các hàm đó gần như không còn sử dụng được nữa.

              Mình thì khoái C ở chỗ nó xây dựng sẵn các kiểu dữ liệu cơ bản (float, double, ...), các cấu trúc lệnh + biểu thức tính toán của nó rất rành mạch rõ ràng, dễ dàng xây dựng các kiểu dữ liệu do người dùng tự định nghĩa, dễ tạo + quản lý thư viện và có nhiều đoạn code C hoàn toàn có thể sử dụng lại trên tất cả các chip hoặc chỉ cần sửa đổi chút ít.
              Last edited by dangemailbox; 17-03-2014, 07:05.

              Comment


              • #37
                Nguyên văn bởi dangemailbox Xem bài viết
                h11540 xem thử chương 13 của cuốn sách Patterns for time-triggered embedded systems thử coi, ở đó tác giả có trình bày về các kiến trúc phần mềm cũng khá hay.

                Cái RTX51 full thì mình chưa có cơ hội được dùng, nhưng cái RTX51 tiny thì mình có dùng qua thử, mình cảm thấy nó không được hay lắm hoặc là do mình chưa hiểu rõ về nó, mình không dám khẳng định.

                Còn về lập trình bằng C không cần quan tâm nhiều đến phần cứng thì mình không đồng ý lắm. Vẫn phải nghiên cứu phần cứng + thuật toán nhiều nhiều bạn ah, đừng nên phụ thuộc quá nhiều vào kho thư viện mà C cung cấp sẵn. Các thư viện đó hầu như chỉ phù hợp cho một kiến trúc phần mềm (thường là Super Loop) thôi, khi chúng ta xây dựng một kiến trúc phần mềm mới thì các hàm đó gần như không còn sử dụng được nữa.

                Mình thì khoái C ở chỗ nó xây dựng sẵn các kiểu dữ liệu cơ bản (float, double, ...), các cấu trúc lệnh + biểu thức tính toán của nó rất rành mạch rõ ràng, dễ dàng xây dựng các kiểu dữ liệu do người dùng tự định nghĩa, dễ tạo + quản lý thư viện và có nhiều đoạn code C hoàn toàn có thể sử dụng lại trên tất cả các chip hoặc chỉ cần sửa đổi chút ít.
                đúng như bác nói em cũng rất thích phần cứng với vi điều khiển đến giờ em mới có cơ hội học,chỗ em mua được con 89s52 còn hiếm hơn BMW ,em phải mua toàn bộ ở hà nội gửi lên cho,với ASM khoái ở chỗ là gõ 1 lèo như nước chảy được nhưng mà về cấu trúc chương trình thì rắc rối quá,hơn nữa hàm delay không thay đổi biến được,muốn tạo ra delay khác nhau thì phải tạo ct con khác nhau,nhưng quan trọng nhất vẫn là thuật toán,không biết mọi người thế nào chứ em rất lười vẽ,nên mọi thứ sảy ra trong đầu khi nào viết thì tự luận ra

                với C điều yêu thích nhất là cấu trúc rõ ràng,dễ fix lỗi,nhìn dễ hiểu,và em không thích dùng các hàm có sẵn chút nào,nó làm mình lười đi và quên đi cái cơ bản,tốt nhất tự viết,nhưng trong C ghét nhất là cái dấu khốn nạn ''{ }'' ,em chỉ đọc qua C nhưng em nghĩ là C dễ viết trên mọi loại VĐK chỉ thay đổi 1 chút ít về các thanh ghi thôi còn cấu trúc y hệt đúng không ạ,đang tính có thời gian phang luôn PIC C đây
                SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI

                Comment


                • #38
                  Nguyên văn bởi dangemailbox Xem bài viết
                  h11540 xem thử chương 13 của cuốn sách Patterns for time-triggered embedded systems thử coi, ở đó tác giả có trình bày về các kiến trúc phần mềm cũng khá hay.

                  Cái RTX51 full thì mình chưa có cơ hội được dùng, nhưng cái RTX51 tiny thì mình có dùng qua thử, mình cảm thấy nó không được hay lắm hoặc là do mình chưa hiểu rõ về nó, mình không dám khẳng định.

                  Còn về lập trình bằng C không cần quan tâm nhiều đến phần cứng thì mình không đồng ý lắm. Vẫn phải nghiên cứu phần cứng + thuật toán nhiều nhiều bạn ah, đừng nên phụ thuộc quá nhiều vào kho thư viện mà C cung cấp sẵn. Các thư viện đó hầu như chỉ phù hợp cho một kiến trúc phần mềm (thường là Super Loop) thôi, khi chúng ta xây dựng một kiến trúc phần mềm mới thì các hàm đó gần như không còn sử dụng được nữa.

                  Mình thì khoái C ở chỗ nó xây dựng sẵn các kiểu dữ liệu cơ bản (float, double, ...), các cấu trúc lệnh + biểu thức tính toán của nó rất rành mạch rõ ràng, dễ dàng xây dựng các kiểu dữ liệu do người dùng tự định nghĩa, dễ tạo + quản lý thư viện và có nhiều đoạn code C hoàn toàn có thể sử dụng lại trên tất cả các chip hoặc chỉ cần sửa đổi chút ít.
                  đúng như bác nói em cũng rất thích phần cứng với vi điều khiển đến giờ em mới có cơ hội học,chỗ em mua được con 89s52 còn hiếm hơn BMW ,em phải mua toàn bộ ở hà nội gửi lên cho,với ASM khoái ở chỗ là gõ 1 lèo như nước chảy được nhưng mà về cấu trúc chương trình thì rắc rối quá,hơn nữa hàm delay không thay đổi biến được,muốn tạo ra delay khác nhau thì phải tạo ct con khác nhau,nhưng quan trọng nhất vẫn là thuật toán,không biết mọi người thế nào chứ em rất lười vẽ,nên mọi thứ sảy ra trong đầu khi nào viết thì tự luận ra

                  với C điều yêu thích nhất là cấu trúc rõ ràng,dễ fix lỗi,nhìn dễ hiểu,và em không thích dùng các hàm có sẵn chút nào,nó làm mình lười đi và quên đi cái cơ bản,tốt nhất tự viết,nhưng trong C ghét nhất là cái dấu khốn nạn ''{ }'' ,em chỉ đọc qua C nhưng em nghĩ là C dễ viết trên mọi loại VĐK chỉ thay đổi 1 chút ít về các thanh ghi thôi còn cấu trúc y hệt đúng không ạ,đang tính có thời gian phang luôn PIC C đây
                  SỐNG THEO BẢN CHẤT,KỆ MỌI NGƯỜI NÓI GÌ THÌ NÓI

                  Comment

                  Về tác giả

                  Collapse

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

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

                  Collapse

                  Đang tải...
                  X