![]() |
|
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 |
Đệ tử 1 túi
Tham gia ngày: Apr 2006
Bài gửi: 19
: |
Mấy bác ơi,giúp em với.
Em mới bắt đầu học pic,nhưng chưa có mạch nạp. Em thử biên dịch chương trình bằng mplap. Em làm y hệt anh NTC,cái bài cho led chạy từ trái sang phải ấy code như sau: Code:
;8 led o portb ;cho led chay tu trai sang phai ;thoi gian delay la 100ms list p=16f877A ; list directive to define processor #include <p16f877A.inc> ; processor specific variable definitions __CONFIG _CP_OFF & _WDT_OFF & _BODEN_OFF & _PWRTE_ON & _XT_OSC & _WRT_OFF & _LVP_OFF & _CPD_OFF ;========================== ;KHOI TAO CAC BIEN ;========================== count1 equ 0X20 counta equ 0X21 countb equ 0X22 ORG 0X0000 GOTO MAIN MAIN BCF STATUS,RP1 ;RP1=0 BSF STATUS,RP0 ;RP0=1=>CHON BANK1 CLRF TRISB ;XUAT DU LIEU RA PORTB BCF STATUS,RP0 ;CHON BANK0 MOVLW B'10000000' MOVWF PORTB ;BAT LED O CHAN RB7 LOOP CALL DELAY_100MS RRF PORTB,1 GOTO LOOP DELAY_100MS MOVLW d'100' MOVWF count1 DELAY0 MOVLW d'199' MOVWF counta MOVLW d'1' MOVWF countb D1 DECFSZ counta,1 GOTO $+2 DECFSZ countb,1 GOTO D1 DECFSZ count1,1 GOTO DELAY0 RETURN end Clean: Deleting intermediary and output files. Clean: Deleted file "D:\pic\B3.mcs". Clean: Done. Executing: "C:\Program Files\Microchip\MPASM Suite\MPAsmWin.exe" /q /p16F877A "B3.ASM" /l"B3.lst" /e"B3.err" Warning[207] D:\PIC\B3.ASM 15 : Found label after column 1. (count1) Warning[207] D:\PIC\B3.ASM 16 : Found label after column 1. (counta) Warning[207] D:\PIC\B3.ASM 17 : Found label after column 1. (countb) Message[302] D:\PIC\B3.ASM 26 : Register in operand not in bank 0. Ensure that bank bits are correct. Loaded D:\pic\B3.COD. BUILD SUCCEEDED: Mon Jul 03 15:52:56 2006 Ko hiểu sao lại có mấy cái warning ở trên Mấy bác giải thích dùm em với thanks thay đổi nội dung bởi: falleaf, 02-07-2006 lúc 09:34 PM. |
![]() |
![]() |
#2 | |
PIC Bang chủ
|
Trích:
Cách viết này, có thể dùng để đặt hằng số, có thể đặt biến, nếu em dùng nó như một thanh ghi, thì nó là biến, nếu em dùng nó như là số, thì nó là hằng. Cho nên, lúc này em phải viết nó vào cột thứ nhất, như một cái nhãn. Vì vậy, nó mới thông báo rằng tìm thấy một cái nhãn không viết trong cột 1. Hay dịch nguyên văn là nó tìm thấy một cái nhãn viết sau cột 1. Trong phần này anh nhớ đã có viết rất chi tiết trong bài viết về tập lệnh, đặt biến. Khi đặt biến, em dùng cách đặt RES thì sẽ tốt hơn dùng equ. Sau này chuẩn hoá, đặt biến sẽ dùng RES chứ không dùng EQU nữa. Chúc vui PS, em nhớ phải đặt chương trình trong cái thẻ [code] [/ code] (viết liền lại), thì mọi người mới thấy đựơc những chỗ sai kiểu như thế này. Chúc vui
__________________
Công ty TNHH Thương mại và Giao nhận R&P store.hn@rpc.vn - store.hcm@rpc.vn Học PIC như thế nào? |
|
![]() |
![]() |
|
|
![]() |
||||
Ðề tài | Người gửi | Chuyên mục | Trả lời | Bài mới |
TUT về USART trong PIC16F877A | mafd_47a | MPASM | 16 | 19-02-2025 05:32 AM |
TUT ve I2C ( pic16f877a ) | mafd_47a | MPASM | 28 | 28-01-2025 10:45 PM |
Lập nhóm PIC16F877A | nhh | Cơ bản về vi điều khiển và PIC | 285 | 08-03-2017 11:08 PM |
Bộ so sánh và PWM cho PIC16F877A | anhquangngai | Cơ bản về vi điều khiển và PIC | 24 | 08-09-2012 09:00 AM |
CCS C for PIC16F877A | nhh | Các ngôn ngữ lập trình khác (CCS C, HT PIC,...) | 405 | 24-04-2008 12:00 PM |