![]() |
|
Tài trợ cho PIC Vietnam |
Cơ bản về vi điều khiển và PIC Những bài hướng dẫn cơ bản nhất để làm quen với vi điều khiển PIC |
|
Ðiều Chỉnh | Xếp Bài |
![]() |
#1 |
Nhập môn đệ tử
Tham gia ngày: Mar 2007
Bài gửi: 6
: |
Lỗi biên dịch của CCS ? số nguyên int32
Em đang làm đề tài điều khiển chính xác vị trí động cơ , sử dụng CCS 4.084 mà sao bị vấn đề này từ hôm bữa đến giờ vân ko cách nào giải quyết được.
Vấn đền chính nằm ở chỗ là tại sao cú pháp em như thế này : #define k_tl 20000; int32 pulse; Pulse= 100*k_tl ; thì tất cả đều hoạt đồng tốt . ko bị tràn số -mà khi em muốn thay đổi số 100 bằng 1 số 2 byte em nhập từ máy tính int32 pulse; int16 wt; wt=make16(byte1,byte2); pulse=((int16)wt)*k_tl ; thì lập tức xảy ra hiện tượng tràn số khó hiểu. VDK hoạt đồng lung tung ko kiểm soát được. Tất cả các biểu thức trên em viết ở hàm main() ko nằm trong hàm ngắt. pulse chính là số xung em muốn gửi xuống để cho động cơ quay đúng số vòng mong muốn. nếu nó lớn hơn maxcnt thì em cũng đã giải quyết vấn đề này rồi . vì khi ở trường hợp đầu thì động cơ vẫn chạy tốt . chỉ có thay bằng trường hợp sau là VDK chay lung tung ![]() thay đổi nội dung bởi: quoc_vu, 27-12-2009 lúc 01:35 PM. |
![]() |
![]() |
|
|