PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > Các ngôn ngữ lập trình khác (CCS C, HT PIC,...)

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 19-07-2007, 11:40 PM   #1
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Quản lý và build Project bằng Visual C++.Net

Chào các bạn.

Các bạn dùng qua Visual C++ 6.0 và Visual C++.Net đều thấy tác dụng quản lý Project và gợi ý code rất là hay. Khi dùng ta sẽ không sợ quên hàm này, hàm kia.Quản lý được cả một Project to vật vã .

Sau đây xin hướng dẫn các bạn quản lý và build một Project cho PIC16F877A với trình dịch HTPIC bằng Visual C++.Net.

Để làm điều này, đầu tiên bạn phải dịch qua một Project đơn giản bằng MPLAB với trình dịch HTPIC đó. Sẽ hiểu ra vấn đề.

Project của mình có các file sau: main.c, UART.c, UART.h. Tên Project là UART

Khi mình dịch một Project mình thấy nó thực hiện các command sau:

Code:
Executing: "c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"main.cce" "main.c" -O"main.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

Executing: "c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"UART.cce" "UART.c" -O"UART.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

Executing: "c:\program files\HT-PICC\BIN\PICC.EXE" -E"UART.lde" "G:\My Projects\PIC_Projects\PIC16F877A\UART\main.obj" "G:\My Projects\PIC_Projects\PIC16F877A\UART\UART.obj" -M"UART.map" -O"UART.cof" -O"UART.hex" -Q -MPLAB -16F877A
khi đó mình tóm lược lại thành:
Code:
"c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"main.cce" "main.c" -O"main.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

"c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"UART.cce" "UART.c" -O"UART.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

"c:\program files\HT-PICC\BIN\PICC.EXE" -E"UART.lde" "main.obj" "UART.obj" -M"UART.map" -O"UART.cof" -O"UART.hex" -Q -MPLAB -16F877A
Như vậy 16F877A là tên của chip mà mình muốn dịch. Dòng đầu tiên chính là dịch ra file main.obj, dòng 2 dịch ra file uart.obj, dòng 3 dịch ra file UART.hex là xong.

Vậy có bao nhiêu file .c thì có bấy nhiêu lệnh như dòng đầu tiên. Còn dòng cuối cùng là kế hợp để tạo ra file .Hex.

Chi tiết mời bạn xem manual của các trình dịch phần command line tại trang http://htsoft.com.

(còn tiếp) - vì chờ upload hình minh họa

Chúc các bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-07-2007, 12:22 AM   #2
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Tiếp theo, bạn mở Visual Studio 2005 lên nhé. Và làm theo hướng dẫn.

Hình 1: Vào File -> New Project



Hình 2: Chọn MakeFile Project và nơi lưu file



Hình 3: Make File Application Wizard


Khi đó bạn quan tâm đến 3 ô trống:
  • Build command line
  • Clear command
  • Rebuild command line
  • Include search path

Build command line:
sẽ thực hiện các lệnh trong ô trống này khi nhấn vào Buidl -> Build.

Bạn điền vào nội dung như bài 1:
Code:
"c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"main.cce" "main.c" -O"main.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

"c:\program files\HT-PICC\BIN\PICC.EXE" -C -E"UART.cce" "UART.c" -O"UART.obj" -Zg9 -O -ASMLIST -Q -MPLAB -16F877A

"c:\program files\HT-PICC\BIN\PICC.EXE" -E"UART.lde" "main.obj" "UART.obj" -M"UART.map" -O"UART.cof" -O"UART.hex" -Q -MPLAB -16F877A
Rebuild command line thì tương tự như thế .

Include search path là tên đường dẫn đến thư mục Include của trình biên dịch HTPIC. Với máy mình là: C:\Program Files\HT-PICC\include

Sau đó các bạn thêm các file vào Project và dịch bình thường như làm với MPLAB.

Sau khi đã tạo Project bạn muốn thay đổi lại command thì làm như sau:














Chúc các bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-07-2007, 12:32 AM   #3
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
Như vậy, quan trọng nhất của việc dùng Visual C++ là các bạn phải biết được nội dung của command line để biên dịch nhé.

Do đó, bây giờ có lẽ chúng ta chỉ thảo luận về cái này nhỉ .

Bạn dơnload manual tại đây:
http://htsoft.com/downloads/manuals.php

Chúc các bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 20-07-2007, 10:48 AM   #4
ngohaibac
Đệ tử 9 túi
 
ngohaibac's Avatar
 
Tham gia ngày: Oct 2005
Nơi Cư Ngụ: BKHN
Bài gửi: 231
:
Send a message via Yahoo to ngohaibac
C18

C18 mình cài vào thư mục:
C:\Program Files\Microchip\MPLAB C18\

Với C18 bạn dùng build command line sau:
Code:
"C:\Program Files\Microchip\MPLAB C18\bin\mcc18.exe" -p=18F2620 "main.c" -fo="main.o" -w3 -Oa -Ou- -Ot- -Ob- -Op- -Or- -Od- -Opa-
Để biên dịch các file .c mà chúng ta code. Lặp lại dòng này chỉ thay main.c bằng tên các file khác thôi.

Code:
"C:\Program Files\Microchip\MPLAB C18\bin\mplink.exe" /l"C:\Program Files\Microchip\MPLAB C18\lib" "C:\Program Files\Microchip\MPLAB C18\lkr\18f2620.lkr" "main.o" /m"IO_C18.map" /w /o"IO_C18.cof"
Còn đây là lệnh cuối cùng.

Rebuild command line cũng giống như trên.

Còn search path thì thêm vào các dòng :
Code:
C:\Program Files\Microchip\MPLAB C18\h
C:\Program Files\Microchip\MPLAB C18\lib
Chúc các bạn thành công.
ngohaibac vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 24-02-2009, 11:58 PM   #5
inventor_bk
Đệ tử 1 túi
 
Tham gia ngày: Mar 2008
Bài gửi: 15
:
Chào anh, vì em đang cần gấp về cái giao tiếp giữa máy tính với vi điều khiển qua cổng USB nên em hỏi anh vấn đề này chút. Em thử giao tiếp với VDK thông qua cổng com bằng visual C++ và matlab đều được . Nhưng trên máy tính sách tay lại không có cổng com. Bây giờ em muốn truyền tín hiệu ra cổng USB nhưng chưa hiểu lắm về cách truyền này. Anh có thể giải thích cho em chút được không ạ. Trong Matlab có hàm nào hỗ trợ mở cổng hay đọc cổng... như cổng com không. Em nghe nói pic 18f4550 có hỗ trợ cổng USB thì có phải mình thiết kế với cổng USB rồi đọc dữ liệu vào như chân RX của các VDK khi giao tiếp với com không. Anh giúp em với. Cảm ơn anh nhiều.
inventor_bk vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 19-12-2009, 05:00 AM   #6
tranthudo
Nhập môn đệ tử
 
Tham gia ngày: Mar 2008
Bài gửi: 6
:
Đối với 30 thì sao hả anh Bắc, có cách nào ko e mò mãi không ra, mà dùng trên VC++ 2008 thì thế nào.
tranthudo vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-12-2010, 11:24 PM   #7
hungnguyen1112
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 3
:
Chào anh! anh có mạch "thiết kế con tắt xoay chiều cách li, điều khiển bằng tín hiệu số sử dụng BTA và MOC" ko? cho e voi. thanks
hungnguyen1112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Old 13-12-2010, 11:27 PM   #8
hungnguyen1112
Nhập môn đệ tử
 
Tham gia ngày: Dec 2010
Bài gửi: 3
:
sủ dung protues ngen a! e thứ 6 ngay 17 thang 12 nay phai nộp rui đó. huhu
hungnguyen1112 vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
Trả lời


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến


Múi giờ GMT. Hiện tại là 10:32 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam