1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Dùng chức năng Analog Comparator để báo nguồn yếu

Thảo luận trong 'Lập trình C cho vi điều khiển AVR cơ bản' bắt đầu bởi viethm06112100, 17 Tháng mười một 2009.

  1. viethm06112100 New Member

    Số bài viết: 12
    Đã được thích: 0
    Điểm thành tích: 0
    Hồ Minh Việt
    Lớp: 06112CLC
    MSSV: 06112100
    Nhấp nháy Led khi nguồn nuôi yếu.


    Code:
    #include <mega32.h>
    #include <delay.h>
    unsigned int time_count=0;
    interrupt [ANA_COMP] void ana_comp_isr(void)
    {
    ACSR=0;//Disable Analog Comparator
    TCCR0=0x2;//Kich hoat Timer 0
    }
    interrupt [TIM0_OVF] void timer0_ovf_isr(void)
    {
    TCNT0=31;//delay 0.5s
    ++time_count;
    switch (time_count)
    {
    case 1666:
    PORTC.0=0;//Led sang 0.5s
    break;
    case 2499:
    PORTC.0=1;//Led tat 0.25s
    time_count=0;
    break;
    default: break;
    };
    }
    void main(void)
    {
    PORTC=0x01;
    DDRC=0xFF;
    TCNT0=0;
    ACSR=0x0A;//Tac dong khi canh xuong AIN1>AIN0
    SFIOR=0x00;
    // Timer(s)/Counter(s) Interrupt(s) initialization
    TIMSK=0x01;
    // Global enable interrupts
    #asm("sei")
    while (1)
    {
    };
    }

Chia sẻ trang này