Welcome & Happy Holidays!
Kết quả 1 đến 10 của 10
  1. #1
    Ngày tham gia
    Dec 2015
    Bài viết
    0

    cần giúp đỡ pic 16f877a

    ai giúp em bài này với ạ! dùng pic 16f877a
    ●Có1 nút bấm và một hàng 4 led
    ●Ban đầu, hàng led tắt
    ●Nhấnnút, hàng led nháy (bấtkì) vớitầnsố1Hz
    ●Nhấnnút, hàng led nháy (bấtkì) vớitầnsố 2Hz
    ●Nhấnnút, hàng led tắt, lặp lại
    em mới tìm hiểu cái này nên chưa biết lắm m.ng giúp em với ạ!
    thanks trước ạ! ))))))))))))))))

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Bạn muốn mọi người giúp cho như thế nào? ) vẽ mạch cho bạn, xong rồi lập trình luôn cho bạn à )

  3. #3
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    mạch thì mình vẽ được rồi nhưng phần code vẫn đang gặp rắc rối! nếu được thì bạn code thử giúp mình nếu không thì bạn xem có bài nào làm rồi tương tự n.t.này đăng lên cho mình tham khảo với

  4. #4
    Ngày tham gia
    Apr 2016
    Bài viết
    0
    [IMG]http://*************/attachments/67399/[/IMG]

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    bạn up code lên xem nó rắc rối ở chỗ nào để mọi người giúp cho

  6. #6
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    #include<xc.h>
    #include <stdio.h>
    #define _XTAL_FREQ 2000000

    // CONFIG
    #pragma config FOSC = HS // Oscillator Selection bits (HS oscillator)
    #pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled)
    #pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
    #pragma config BOREN = ON // Brown-out Reset Enable bit (BOR enabled)
    #pragma config LVP = ON // Low-Voltage (Single-Supply) In-Circuit Serial Programming Enable bit (RB3/PGM pin has PGM function; low-voltage programming enabled)
    #pragma config CPD = OFF // Data EEPROM Memory Code Protection bit (Data EEPROM code protection off)
    #pragma config WRT = OFF // Flash Program Memory Write Enable bits (Write protection off; all program memory may be written to by EECON control)
    #pragma config CP = OFF // Flash Program Memory Code Protection bit (Code protection off)
    /*
    ************************************************** ****************
    */
    int a=1;
    void nhanh(void);
    void cham(void);
    void interrupt myIsr (void)
    {

    a++;
    if (a==3) a = 1;
    INTCONbits.TMR0IF = 0;

    }

    void main(void)
    {
    TRISB0 = 1; // RB0 input mode
    TRISD= 0x00;
    PORTD=0x00;
    INTCONbits.TMR0IE = 1;
    ei();
    while(1)
    {

    switch(a)
    {
    case 1: nhanh; break;
    case 2: cham; break;
    }

    }
    }
    void nhanh(void)
    {
    PORTD=0x0f;
    __delay_ms(500);
    }
    void cham(void)
    {
    PORTD=0x0f;
    __delay_ms(1000);
    }

  7. #7
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    chắc sai nhiều lắm ạ tại e mới tìm hiểu cái này đc 2-3 ngày

  8. #8
    Ngày tham gia
    Apr 2016
    Bài viết
    21
    cho em hỏi là led đang chạy muốn bấm nút để nó ngừng giữ nguyên trạng thái rồi ấn nút chạy tiếp thì làm ntn ạ?

  9. #9
    Ngày tham gia
    Sep 2015
    Bài viết
    632
    bạn sử dụng ngắt timer0 mà ko khai báo ngắt toàn cục,
    và hàm ei() là gì vậy?
    trong hàm switch() bạn có sử dụng 2 hàm nhanh() và cham() nhưng ko ghi đủ nhanh(), cham() mà chỉ ghi nhanh, cham.

  10. #10
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    Trích dẫn Gửi bởi thao05101995
    cho em hỏi là led đang chạy muốn bấm nút để nó ngừng giữ nguyên trạng thái rồi ấn nút chạy tiếp thì làm ntn ạ?
    thì viết lại hàm delay_ms theo ý người dùng đó bạn. bởi nếu dùng delay_ms dựng sẵn code sẽ không hay vì lỡ như bạn ấn nút lúc chương trình đang delay thì nó không cập nhật được trạng thái mới hoặc phải chạy xong delay (nhấn nút ngay lúc này) thì chương trình mới cập nhật --> chậm.

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •  
Múi giờ GMT +7. Bây giờ là 12:18 PM. Diễn đàn sử dụng vBulletin® Phiên bản 4.2.5.
Bản quyền của 2018 vBulletin Solutions, Inc. Tất cả quyền được bảo lưu.
Ban quản trị không chịu trách nhiệm về nội dung do thành viên đăng.