Tài liệu Hướng dẫn sử dụng CCS pdf

40 1.8K 68
Tài liệu Hướng dẫn sử dụng CCS pdf

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

I / _ GIỚI THIỆU: _Đây tài liệu hướng dẫn sử dụng CCS lập trình ngôn ngữ C cho vi điều khiển PIC Microchip Tác giả tên TRẦN XUÂN TRƯỜNG , SV K2001 ,ĐH BK HCM Là thành viên txt2203 diễn đàn diendandientu.com , thành viên txt diễn đàn picvietnam.com Mọi đóng góp ý kiến tài liệu email đến địa : txt2203@yahoo.com Rất cám ơn đóng góp ý kiến bạn yêu thích lập trình vi xử lý tài liệu II / _ VÀI VẤN ĐỀ VỀ TÀI LIỆU NÀY : _Tài liệu hướng dẫn lập trình C cho PIC sử dụng phần mềm CCS phiên Tài liệu giải thích cách thức hoạt động số module VĐK để bạn nắm rõ hoạt động VĐK nhằm sử dụng hàm viết chương trình cách xác _Tài liệu không chủ ý thay hoàn toàn HELP CCS , phần cô đọng , hướng dẫn giải thích viết chương trình đâu , giới thiệu số hàm cách hoạt động , số vấn đề lập trình , không đầy đủ , bạn nên đối chiếu tài liệu với HELP tiếng Anh để nắm rõ vấn đề , đồng thời học tiếng Anh dễ dàng _CCS có phần “ common questions “ – câu hỏi thường gặp trả lời , chưa dịch dù quan trọng , nhiều bạn hay bỏ qua , không để ý Bạn nên xem _Trang web kèm cập nhật sửa lỗi nâng cấp qua phiên _Tài liệu trình bày vấn đề sau : _ Chương : Giới thiệu CCS Viết chương trình C CCS Công cụ mô CCS tích hợp MPLAB _ Chương : Sử dụng biến hàm , cấu trúc lệnh , thị tiền xử lý _ Chương : Các hàm xử lý số , xử lý bit , delay _ Chương : Xử lý ADC , hàm vào , C _ Chương : Truyền thông với PC , xử lý chuỗi _ Chương : vấn đề TIMER _ Chương : Truyền thông I2C , SPI PARALLEL _ Chương : Các vấn đề PWM , Capture Compare _ Chương : Vấn đề ngắt ( interrupt ) _Trong chương có hướng dẫn sử dụng hàm thích hợp cho chủ đề _Nên đọc chương trước Các chương lại độc lập _Tài liệu viết đến đâu đưa lên mạng cho người tham khảo đến Hầu hết trình bày sử dụng cách , sau bổ sung thêm VD,chương trình, thêm đến đâu thông báo đến CHƯƠNG : HƯỚNG DẪN SỬ DỤNG CCS – VIẾT CHƯƠNG TRÌNH C TRONG CCS I / _ GIỚI THIỆU CCS : _CCS trình biên dịch dùng ngôn ngữ C lập trình cho VĐK Đây ngôn ngữ lập trình đầy sức mạnh , giúp bạn nhanh chóng việc viết chương trình so với ngôn ngữ Assembly _Mã lệnh tối ưu biên dịch _Tuy nhiên C vạn , thực thứ ý muốn Trong số trường hợp , sinh mã chạy sai (tham khảo cải tiến version CCS web : info.CCS.com trang web kèm ) _CCS chứa nhiều hàm phục vụ cho mục đích có nhiều cách lập trình mã cho vấn đề dẫn đến khác tốc độ thực thi mã , độ dài chương trình Sự tối ưu kỹ lập trình C bạn _CCS C có đủ khả để bạn không cần phải chèn thêm dòng lệnh ASSEMBLY , cho phép bạn phối hợp ASSEMBLY cùnh với C , nhiên CCS không bảo đảm chương trình chạy xác _CCS cung cấp công cụ tiện ích giám sát hoạt động chương trình : C/ASM list : cho phép xem mã ASM file bạn biên dịch , giúp bạn quản lý mã nắm thức mã sinh chạy , công cụ quan trọng , bạn gỡ rối chương trình nắm hoạt động ; SYMBOL hiển thị nhớ cấp phát cho biến , giúp quản lý nhớ biến chương trình , CallTree hiển thị phân bổ nhớ _ Có nhiều tiện ích mục Tools , crack nên nhiều không xài _Chương trình CCS dùng cho tài liệu PCW COMPILER version 3.235 , bao gồm : PCB , PCM PCH , lập trình cho họ PIC 10 bit ,12 bit , 14 bit PIC 18 , chưa có DsPIC II / _ SỬ DỤNG CCS : _Để viết chương trình C : chạy CCS , vào New để tạo file C Trên toolbar : Chọn “Microchip 12 bit” để viết chương trình cho PIC 12 bit “Microchip 14 bit” để viết chương trình cho PIC 14 bit “Microchip PIC18” để viết chương trình cho PIC18 _Chọn “Compiler” để biên dịch chương trình bạn viết _Trên cách viết chương trình cấp tốc gọn để viết chương trình cách chi tiết cụ thể , sử dụng Project -> New -> PIC Wizard Sau chọn tên project lưu , nhấn save Bảng sau : _Nếu sử dụng mạch dao động thạch anh điền giá thị xung clock vào ô sau : Phải nhấp kép vào hiệu chỉnh _Chọn PIC muốn lập trình : _Muốn xem trước mã sinh hiệu chỉnh điều , chọn : _Tuỳ thuộc loại PIC muốn lập trình mà mục FUSES có thêm nhiều hay tuỳ chọn , VD 18F4431: _Để ý bên dãy tab lựa chọn thông số khác: _chú ý nút mũi tên mở thêm nhiều mục khác _Sau hiệu chỉnh ý muốn , OK để hoàn thành III / _ CCS TÍCH HP TRONG MPLAB – VIẾT MÃ VÀ MÔ PHỎNG : _Công cụ mô cho PIC 16Fxxx đa PIC Simulator IDE 5x , hỗ trợ 38 loại PIC 16Fxxx Có Oscilocope , INT ảo , nhiều chức khác với giao diện tuyệt đẹp , dễ dùng Hoạt động độc lập , lấy file HEX để mô Có dịch ngược Assemble Có lập trình BASIC Assemble hay dễ dùng , dù đơn giản đủ để viết chương trình nhỏ chất lượng Bạn nên thử qua Khuyết điểm : thiếu vài module mô : chức PWM tác dụng _ Mô với PIC 18 , PIC 12 , nhiều loại PIC 16 mà IDE không hỗ trợ ? Bạn dùng CCS tích hợp MPLAB dạng plugin Để có tính , sau cài đặt CCS , phải cài tiếp CCS_plugin_for_MPLAB6xx _Bạn soạn mã CCS môi trường MPLAB cho phép mô mã C lẫn mã ASSEMBLY dịch ngược , tương tự lập trình mô với MPLAB C18 _Quan trọng : số VĐK mà MPLAB không hỗ trợ mô hết cacù chức , bạn nên xem kỹ phần HELP MPLAB , mục SIM để có chi tiết Hoặc vào Debug->Setting…->chọn tab Limitations Bỏ qua phần khiến bạn lầm tưởng chương trình viết sai không hỗ trợ mô Cho tới , chưa biết cách mô chưỗi xung vào PIC , từ chương trình nhận biết hoạt động tương ứng với ( kích hoạt ngắt , tạo xung timer , tạo tín hiệu analog vào chân AD , _ Thiết lập môi trường CCS : vào MPLAB IDE , vô mục Project-> Set Language Tool Location Hộp thoại mở , nhấn vào dấu + dòng CCS C Compile ->Executable ,sau chọn Browser để thiết lập đường dẫn đến file ccsc exe thư mục cài đặt CCS ( tên mặc định PICC ) Bạn thêm đường dẫn vào dòng Default Search Path thấy cần _ Tạo dự án ( project ) CCS MPLAB : vào Project-> Project Wizard : _Chọn VĐK làm việc : _Ở bước : chọn công cụ ( Active toolSuite ) CCS C Compiler , nhấn Next _Điền tên dự án đường dẫn , click Next _Bước : không cần Add file thiết bị *.h file mã mà bạn viết sau có dòng #include file tự include vào bạn có môi trường làm việc CCS MLPAB Khuyết điểm bạn dùng tiện ích CCS độc lập ( C/asm list ) Tuy , sau biên dịch file C/Asm list file COFF , có thư mục dự án bạn mở chúng trình văn Notepad _Bên trái cửa sổ dự án, nơi bạn thêm vào file cần thiết _Để thêm file *.c , nhấn chột phải lên “ source file” -> Add file _Để thêm file *.h , nhấn chuột phải lên “Header file “ -> add file _Muïc Other files : dùng để thêm vào file phục vụ cho dự án file C , file text , Các file biên dịch mà không , dùng để ghi giải , sơ đồ thuật toán , _Để biên dịch dự án , chọn : _Biên dịch xong , cửa sổ Output : _lưu ý : cảnh báo ( warning ) bỏ qua , trình biên dịch tạo file hex Nhưng lỗi error có bỏ qua , tạo file hex nhấn kép vào dòng warning hay error nhảy đến vị trí phát sinh _Để mô : _Sau chọn MPLAB SIM , toolbar sau : _Chọn RUN mô chương trình chạy liên tục _Chọn animate để xem chương trình mô dòng lệnh liên tục theo mức thời gian định trước cho lệnh Để hiệu chỉnh khoảng thời gian để nhảy lệnh , vào debugger->setting Chọn Tab bên : _Hình cho thấy :bước nhảy 500 ms cho dòng lệnh C hay ASM , hiệu chỉnh nhỏ làm tăng tốc độ animate , cập nhật Watch 5x100=500 ms , thay đổi Nếu muốn Watch cập nhật tức ( real time ) đánh dấu chọn ô , hay phím F7 , tiên lợi dùng animate _Để mô dòng lệnh , dùng _Ta dùng tiện ích mục View để phục vụ mô Bao gồm : / _ Disassembly listing : thể mã ASM cho dòng lệnh C Lưu ý có trỏ mô màu xanh bên trái cho hộp thoại dòng lệnh C lẫn ASM nghóa tiến trình mô thể hộp thoại Khi mô , đặt trỏ chuột bên hộp ASM , trỏ xanh mô dòng lệnh ASM tương ứng cho dòng lệnh C bên hộp lệnh C Ngược lại , chọn hộp thoại C , mô dòng lệnh C , tương ứng nhóm dòng lệnh ASM tương ứng _Nhấn Halt để dừng mô Nhấn Reset để reset lại việc mô / _ Hardware Stack : cho phép giám sát stack / _ Program memory : xem nhớ chương trình , giống nhö Disassembly listing / _ File registers : hiển thị ghi địa lệnh nhớ / _ EEPROM : hiển thị nhớ EEPROM / _ Memory usage gauge : hiển thị tình trạng sử dụng nhớ / _ Watch : cho phép giám sát nội dung biến C hay ghi nhớ mô _Chọn Watch _Để giám sát ghi nhớ , chọn tên ghi nhấn Add SFR : Tên ghi thêm vào vùng bên _Để giám sát tên biến c chương trình , chọn tên biến nhấn Add symbol MPLAB cho phép tới khung Watch làm việc thường ta cần _Để loại bỏ biến hay ghi khỏi việc giám sát , chọn nhấn nút Delete bàn phím _Nhấn chuột phải vùng giám sát để có lựa chọn thêm , có mục Properties , nhiên chúng không quan trọng trừ có yêu cầu đặc biệt _Click chuột phải lên vùng : Sẽ đổ xuống menu sau , cho phép hiển thị nội dung biến theo dạng số hex, thập phân , nhị phân , _Click kép vào ô giá trị để hiệu chỉnh giá trị biến muốn _Lưu ý reset lại để mô từ đầu , Watch không tự cập nhật Phải đóng mở lại / _Special function Register : cho phép giám sát ghi chức đặc biệt / _ Simulator Trace : ghi lại toàn tiến trình thực thi mã từ lúc reset đến lúc dừng Rất tuyệt vời muốn xem chương trình có độ dài chu kỳ lệnh , hay quan sát vòng lặp thực thi xong thời gian , xem chương trình chạy , Lưu ý cửa sổ không cập nhật lúc mô , mà phải đóng lại mở lại update kết Ngoài nhấn chuột phải lên cửa sổ cho nhiều lựa chọn tuỳ biến hay _Vài thủ thuật linh tinh : _Nhấn chuột trái lên cửa sổ để mở menu ->Dockable : cửa sổ Để bỏ tính , click phải lên chọn undockable _Khi mở nhiều cửa sổ giám sát , dẫn đến khó quan sát chọn cửa sổ , muốn chọn vào Window để chọn II / _ VIẾT CHƯƠNG TRÌNH TRONG CCS : _Sau ví dụ cấu trúc chương trình CCS : #include < 16F877 h > #device PIC6f877 *=16 ADC=10 #use delay(clock=20000000) Int16 a,b; Void xu_ly_ADC ( ) { } #INT_TIMER1 Void xu_ly_ngat_timer ( ) { } Main ( ) { } _Đầu tiên thị tiền xử lý : # có nhiệm vụ báo cho CCS cần sử dụng chương trình C dùng VXL , có dùng giao tiếp PC qua cổng COM không , có dùng ADC không , có dùng DELAY không , có biên dịch kèm file hay không _Các khai báo biến _Các hàm ta viết : xu_ly_ADC () , _ Các hàm phục vụ ngắt theo sau thị tiền xử lý cho biết dùng ngắt _Chương trình 10 ...CHƯƠNG : HƯỚNG DẪN SỬ DỤNG CCS – VIẾT CHƯƠNG TRÌNH C TRONG CCS I / _ GIỚI THIỆU CCS : _CCS trình biên dịch dùng ngôn ngữ C lập trình cho VĐK Đây... _Chương trình CCS dùng cho tài liệu PCW COMPILER version 3.235 , bao gồm : PCB , PCM PCH , lập trình cho họ PIC 10 bit ,12 bit , 14 bit PIC 18 , chưa có DsPIC II / _ SỬ DỤNG CCS : _Để viết... cửa sổ Watch _Chi tiết phạm vi biến xem tài liệu lập trình C máy tính _CCS có hỗ trợ trỏ , nhiên dùng _CCs không hỗ trợ lập trình hướng đối tượng C++ Tuy CCS có hỗ trợ biến cấu trúc / _ Các

Ngày đăng: 12/12/2013, 09:15

Hình ảnh liên quan

_Hình trên cho thấy :bước nhảy là 500ms cho 1 dòng lệnh C hay ASM , hiệu chỉnh nhỏ hơn sẽ làm tăng tốc độ animate , còn cập nhật trên Watch sẽ mất 5x100=500 ms , có thể thay đổi  - Tài liệu Hướng dẫn sử dụng CCS pdf

Hình tr.

ên cho thấy :bước nhảy là 500ms cho 1 dòng lệnh C hay ASM , hiệu chỉnh nhỏ hơn sẽ làm tăng tốc độ animate , còn cập nhật trên Watch sẽ mất 5x100=500 ms , có thể thay đổi Xem tại trang 8 của tài liệu.
Ỉ chỉ cần lập bảng tra sin trong đó là các giá trị sin là số nguyên = (y +1) * 128 ; - Tài liệu Hướng dẫn sử dụng CCS pdf

ch.

ỉ cần lập bảng tra sin trong đó là các giá trị sin là số nguyên = (y +1) * 128 ; Xem tại trang 15 của tài liệu.
_Chương trình sau lấy ADC 8bit, đọc và xuất ra dãy led ở portB, và xuất ra màn hình máy tín h - Tài liệu Hướng dẫn sử dụng CCS pdf

h.

ương trình sau lấy ADC 8bit, đọc và xuất ra dãy led ở portB, và xuất ra màn hình máy tín h Xem tại trang 25 của tài liệu.
Bảng trê n( trong datasheet PIC16F877) cho thấy : nếu cả 2 module dùng cùng chức năng Capture thì sẽ dùng chung bộ đếm timer1 , nghĩa là mọi họat động và điều chỉnh Timer1 đều ảnh hưởng tới  cả 2 module  - Tài liệu Hướng dẫn sử dụng CCS pdf

Bảng tr.

ê n( trong datasheet PIC16F877) cho thấy : nếu cả 2 module dùng cùng chức năng Capture thì sẽ dùng chung bộ đếm timer1 , nghĩa là mọi họat động và điều chỉnh Timer1 đều ảnh hưởng tới cả 2 module Xem tại trang 33 của tài liệu.

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan