1. Xin chào Khách ! Ban quản trị sẽ tiến hành nâng cấp diễn đàn từ ngày 11/8/2017 Mọi truy cập có thể bị dán đoạn, mong bạn thông cảm!
    Dismiss Notice

Xin giúp định nghĩa PORT trong CCS

Thảo luận trong 'Họ PIC -> dsPIC'

Đang xem chủ đề này ( Thành viên: 0, Khách: 0)

Moderators: THUONGDTQB
  1. Authur

    Authur Học sinh phổ thông

    Tham gia ngày:
    23/12/16
    Bài viết:
    2
    Đã được thích:
    0
    Điểm thành tích:
    3
    Giới tính:
    Nam
    Chào các bạn,

    mình sử dụng CCS 5.015, để lập trình đoạn code bật tắt LED, nhưng mô phỏng trên Proteus không chạy được,
    Cách 1 : mình muốn mở công RB0,1,2 nhưng không được
    Cách 2 : mình mở được cổng RB3, nhưng không mở đồng thời cổng RB4 được,

    mình cảm ơn,

    #include <main.h>

    int8 status_b=0;

    #byte PORTB=0x06
    #byte TRISB=0x86

    void main()
    {
    TRISB=0b01000000;
    PORTB=0;

    //cach 1
    PORTB=0x01;
    delay_ms(500);
    PORTB=0x02;
    delay_ms(500);
    PORTB=0x04;
    delay_ms(500);

    //cach 2
    status_b=PORTB;
    output_b(status_b|0x08);
    delay_ms(500);
    status_b=PORTB;
    output_b(status_b|0x10);
    while(TRUE)
    {

    //TODO: User Code
    }

    }
     
    Last edited: 25/12/16
  2. huuquy95

    huuquy95 Học sinh phổ thông

    Tham gia ngày:
    28/4/14
    Bài viết:
    22
    Đã được thích:
    7
    Điểm thành tích:
    3
    Giới tính:
    Nam
    Chương trình ko có vấn đề gì nhé,bạn kiểm tra lại mô phỏng xem.tần số thạch anh đặt là 20Mhz chưa. mặc định trong protues là 1 Mhz nên có thể chương trình chạy ko đúng yêu cầu.
     
  3. dientuthuc

    dientuthuc Kỹ sư

    Tham gia ngày:
    25/5/15
    Bài viết:
    366
    Đã được thích:
    142
    Điểm thành tích:
    43
    Giới tính:
    Nam
    mở rb012 thì portb=0b00000111; còn 34 thì cũng tương tự portb=0b00011000; bác đã khai báo mỗi port có 8 bít thì thao tác trên từng bít cho dễ hiểu nó cũng mất 1 lệnh không làm chậm chương trình đâu mà
     
  4. Authur

    Authur Học sinh phổ thông

    Tham gia ngày:
    23/12/16
    Bài viết:
    2
    Đã được thích:
    0
    Điểm thành tích:
    3
    Giới tính:
    Nam
    Mình đã kiểm tra lại proteus, tần số mình cài đặt đúng 20Mhz nhưng vẫn ko chạy được @@,

    To dientuthuc : Ah, tại mình có một số đoạn code lập trình bên MPLABX sử dụng cách trên, nên đổi lại có một số bất tiện,
     
Moderators: THUONGDTQB

Chia sẻ trang này