PIC Vietnam

PIC Vietnam (http://www.picvietnam.com/forum/index.php)
-   Cơ bản về vi điều khiển và PIC (http://www.picvietnam.com/forum/forumdisplay.php?f=8)
-   -   Lập nhóm PIC16F877A (http://www.picvietnam.com/forum/showthread.php?t=325)

minhquancdt 07-03-2006 08:04 PM

Em là thành viên mới của diễn đàn.
Em muốn học pic nhưng không biết bắt đầu từ đâu.
Bác nào có kinh nghiệm chỉ giáo giúp em với.
Em xin cảm ơn!

pb1 08-03-2006 12:08 AM

Em cũng đồng ý cả hai tay.
nhưng có bác có thể viết chương trình bằng picc không?. Em thấy PICC rất hay bởi vì chương trình viết rất gọn, có thể ứng dụng vào các bài toán lớn. Còn Assembler thì cũng có thể như thế, nhưng viết khó và dài. Em thấy,với các bài cơ bản thì các bác cố gắng viết cả Assembler và PICC để cho nhiều người có thể học tập

tungnguyen 08-03-2006 04:07 PM

chào các bác, tôi mới lần đầu vào diễn đàn và mới làm quen với PIC, nên các bác có thể giúp mình tài liệu về PIC này không ạ, cảm ơn

chuthong1 09-03-2006 09:19 AM

Cac Anh co the cho em Bo ma Lenh cua Dong Pic16f877a duoc khong
Em moi buoc chan vao hoc ve Pic nen khong biet gi` ca
Xin cac Dai gia chi giao gium

nhh 09-03-2006 12:08 PM

Chào các bạn!
Ai mới bắt đầu với pic thì vào luồng "Cơ bản về vi điều khiển và pic",tìm trong các luồng "Học pic như thế nào","Học pic trong vòng một ngày",ở đó anh F hướng dẫn rất cơ bản và tỉ mỉ.

Khi mới học pic,bạn nên chọn ASM vì chương trình viết gần gũi,cấu trúc lệnh đơn giản (chỉ mỗi tội phải kè kè thanh ghi W),biết nó tác động như thế nào lên các thanh ghi.Sau khi vững ASM chuyển qua C thì tốc độ sẽ nhanh hơn.

Các bạn vào luồng "MPASM" của mod Mạnh để tìm hiểu con 16f628a,vào "PIC6F877A từ dễ tới khó" của mod Chính để vọt con 16F877A.

Còn tập lệnh của pic16 đều giống nhau cả,có 35 lệnh,trong tất cả các datasheet đều có và ví dụ rất rõ.Datasheet lên google search với tên pic là có cà ngàn luôn!

Chúc các bạn học tốt!

nhh 09-03-2006 12:16 PM

Trích:

Nguyên văn bởi picpicpic
Chào cả nhà!
picpicpic đã copy và cho chạy thử bài viết của bác nhh,kết quả rất tốt!Bác có viết vài ý về các cách ngắt của con pic này được không?
Hẹn câu trả lời của các bác!

Ăc ăc...Cái này picpicpic làm khó anh em rồi ! Mình biết rất lung tung không thể trình bày một cách bài bảng và chuyên nghiệp được, viết ra làm các bác khó hiểu....nhh nghĩ cái này nên để mod Chính viết!

linhnc308 12-03-2006 01:54 PM

Muốn nhanh chóng làm việc được với PIC, các bạn nên tiếp xúc với ngôn ngữ C cho PIC, nhất là CCS. Các bạn sẽ thấy được những điểm mạnh mà C đem lại.
Tài liệu thì bạn qua luồng Compiler về CCS để tìm hiểu. Có tài liệu của bác txt rất hay, cùng với help của CCS.

ntc 12-03-2006 04:15 PM

Không biết mọi người học PIC thế nào, còn mình, mình in cái datasheet của con PIC ra và nghiền ngẫm trong vòng ... 1 tháng. Tất nhiên là phải dựa trên một số kiến thức cơ bản về điện tử.

thunglungvang 12-03-2006 06:23 PM

Sao em thấy các bác phần lớn đều viết chương trình cho con PIC này bằng Assembly thế nhỉ?? Đọc khó hiểu bỏ xừ. Mặc dù dung lượng cua file dịch ra của nó là nhỏ hơn so với viết bằng C nhưng em thấy viết bằng C dễ hiểu và dễ tiếp cận hơn nhiều chứ nhỉ??

namqn 12-03-2006 07:41 PM

Trích:

Nguyên văn bởi thunglungvang
Sao em thấy các bác phần lớn đều viết chương trình cho con PIC này bằng Assembly thế nhỉ?? Đọc khó hiểu bỏ xừ. Mặc dù dung lượng cua file dịch ra của nó là nhỏ hơn so với viết bằng C nhưng em thấy viết bằng C dễ hiểu và dễ tiếp cận hơn nhiều chứ nhỉ??

Đương nhiên là viết bằng ngôn ngữ cấp cao thì dễ hơn nhiều so với ngôn ngữ cấp thấp. Nhưng nếu bạn không biết chính xác chương trình của mình viết ra được thực hiện như thế nào, hoặc khi cần tối ưu mã cho chương trình, hoặc cần viết một số đoạn mã tới hạn nào đó để chạy thật nhanh thì lúc đó bạn sẽ làm thế nào? Tôi cũng rất thích ngôn ngữ cấp cao, nhưng giải pháp tốt nhất theo tôi là viết bằng cả hai ngôn ngữ, phần nào thích hợp với ngôn ngữ nào thì viết bằng ngôn ngữ đó, để tận dụng sức mạnh của nó.
Còn việc bắt đầu làm quen với PIC mà sợ khó, không tìm hiểu các vấn đề cơ bản thì khi bạn viết chương trình lớn, phức tạp sẽ khó có giải pháp hiệu quả.

Thân,

chuthong1 15-03-2006 01:34 PM

Gui Ban NTC!
 
Trích:

Nguyên văn bởi ntc
Không biết mọi người học PIC thế nào, còn mình, mình in cái datasheet của con PIC ra và nghiền ngẫm trong vòng ... 1 tháng. Tất nhiên là phải dựa trên một số kiến thức cơ bản về điện tử.



Minh Dang dc mot so VD cua ban va thay rat re hieu
Ban lam on pot het len de minh Xem co' dc ko


Cam on Ban Nhieu
:D

ntc 16-03-2006 10:53 AM

Không dấu gì bạn, mỗi bài viết như vậy thông thường mình phải viết trong vòng ... nửa tháng. :D . Làm sao để cho cô đọng, tập trung và dễ hiểu nhất. Chứ đâu có sẵn đâu mà post lên hết một lần được. :D

Mục đích của những bài viết trên không phải là hướng dẫn từ A tới Z mọi thứ liên quan đến con PIC, mà chỉ là những vấn đề cơ bản nhất, và những bạn mới làm quen có thể cảm thấy dễ dàng hơn khi bắt đầu với PIC. Còn việc phát triển và ứng dụng các vấn đề đó thì mỗi người phải tự làm thôi. :D .

Còn các ví dụ, bạn có thể tìm thấy rất nhiều trong diễn đàn, trong các tài liệu, các Tutorial cung cấp trên diễn đàn. Đọc cũng dễ hiểu, dễ làm. Bạn tham khảo thêm nhé.

Tất nhiên picvietnam vẫn sẽ thường xuyên cung cấp thêm các Tutorial mới. Hy vọng sẽ đáp ứng được yêu cầu của các thành viên.

:D

Dang Khoa 16-03-2006 07:04 PM

Cac ban co biet gi ve chuong trinh MikroPalcal viet cho PIC khong

pb1 16-03-2006 10:22 PM

em đã nghiền hết mấy bài của bác nhh rồi, em đang chờ các bài tiếp theo của bác nhh đây. Bác nhanh nhanh viết thêm nữa đi chứ.

ntc 17-03-2006 10:41 AM

Cái Timer nhh làm tới đâu rồi. :D . Có gì trục trặc không.

Các ngôn ngữ lập trình cho PIC, theo mình không nên tìm hiểu nhiều ngôn ngữ quá, nhiều khi còn lộn từ ngôn ngữ này sang ngôn ngữ khác nữa. Cái này kiếm hiệp gọi là "tẩu hỏa nhập ma". :D

Mới tìm hiểu thì nên chọn ngôn ngữ ASM. Ngôn ngữ này tuy hơi khó viết nhưng nó giúp ta hiểu được sâu hơn bản chất cũng như cấu tạo của con PIC. Sau đó, khi đã vững phần căn bản, nếu thích có thể chuyển qua C. Đây là 2 ngôn ngữ thông dụng nhất cho PIC, càn các ngôn ngữ khác, hẳn phải có một nhược điểm nào đó nên được ít người chọn để làm công cụ lập trình.

Các ngôn ngữ cấp cao thực chất đều được xây dựng dựa trên các lệnh cơ bản của con PIC thôi. Trong quá trình sinh code của các ngôn ngữ cấp cao, như C, trước khi chuyển sang mã HEX còn có thêm một giai đoạn là chuyển sang mã Assembly của PIC. Như vậy có thể tạm hiểu là các hàm của ngôn ngữ cấp cao cho PIC được xây dựng dựa trên tập lệnh cơ bản của PIC. Các hàm này có thể giúp ta dễ viết và mang tính tổng quát cao, giống như các module chương trình được xây dựng sẵn. nhưng có nhược điểm là không linh động. Điều này một phần giải thích tại sao file biên dịch của ngôn ngữ cấp cao lớn hơn so với việc viết trực tiếp bằng ASM.

Tính tổng quát và thiếu linh động cũng sẽ gây trở ngại cho quá trình tối ưu, đồng thời khả năng kiểm soát quá trình thực thi của vi điều khiển không cao. Nếu viết bằng ASM, ta có thể kiểm soát được từng "cử chỉ" của PIC và thời gian thực thi của nó, như vậy ta có thể đáp ứng được các yêu cầu về tối ưu nhu anh Nam đã đề cập. Tuy nhiên điều đó đòi hỏi khả năng kiểm soát của người lập trình cũng cao hơn, có nghĩa là ta phải hiểu được từng ngóc ngách của con vi điều khiển PIC.

Nếu có khả năng xây dựng các module chương trình dựa trên tập lệnh của PIC (ví dụ như các module về xử lí thuật toán, các module về các khối chức năng trong PIC), ta hoàn toàn có thể xây dựng được một ngôn ngữ lập trình cho riêng mình. :D . Có thể vào trong luồng MPASM để tìn hiểu cách xây dựng một hàm bằng ngôn ngữ ASM của mod Mạnh.

Đây chỉ là một vài nhận xét mang tính chủ quan, mọi người góp ý thêm nhé. Anh Nam coi lại coi em hiểu như vậy có đúng không. Mong anh góp ý thêm.:D .


Múi giờ GMT. Hiện tại là 01:38 AM.

Tên diễn đàn: vBulletin Version 3.8.11
Được sáng lập bởi Đoàn Hiệp.
Copyright © PIC Vietnam