|
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 |
08-09-2013, 10:41 PM | #1 |
Nhập môn đệ tử
Tham gia ngày: Sep 2013
Bài gửi: 2
: |
Help me ! Đồng hồ led 7 đoạn dùng Pic16F887 , cài đặt được thời gian rồi nhưng không
Ôi không để ý làm quả tiêu đề dài quá nên không hết :"Help me ! Đồng hồ led 7 đoạn dùng Pic16F887 , cài đặt được thời gian rồi nhưng không từ động chạy "
Mày mò vẽ lại cái Pickit chạy ok rồi , đến test làm cái đồng hồ led 7 đoạn dùng Pic16F887 chơi , thì mô phỏng cũng ok rồi , nhưng khi test trên bo cắm thử ( dựa vào mô phỏng thôi , chưa làm mạch thật ) thì đã " set " được thời gian , nhưng sau nó cứ đứng sáng led không chạy gì , nhiều khi cắm nguồn vào còn phải set Ok cái cho nó sáng led 7 đoạn ( sau nó vẫn " rậm chân tại chỗ" mới đau ):-(||> Nên mình nghĩ chỉ sửa trên code thôi , chưa mạch thật nên không cần nguyên lý , nhưng chưa làm thực tế cái nào nên chưa biết lỗi tại đâu . Nhờ bác nào làm rồi hay biết giúp mình gấp với , nếu lỗi code chỉnh lại giúp mình được không , máy mình bị " lên vùng cao" bảo hành rồi , L-) không có gì chơi ,thỉnh thoảng mới ra internet tham khảo được . Mấy hôm nữa lên vùng cao tình nguyện rồi , nên nhờ các bác biết code lỗi đâu xin bớt chút thời gian sửa giúp được không , sau mình test thử , mình xin hậu tạ . Trích : #include<16f887.h> #device ADC=8 #FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,NOLVP, NOCPD, NOWRT #use delay(clock=12m) #define set input(pin_B3) #define up input(pin_B4) #define down input(pin_B5) #define ok input(pin_B6) #use i2c(master, sda=pin_B2, scl=pin_B1) unsigned char so[11]={64,121,36,48,25,18,2,120,0,16,70}; unsigned char i,year,month,date,day,hour,min,sec,b,kt,a; char t; char set0,set1,up0,up1,down0,down1; #include<lunar.h> #include<ds1307.h> #include<ktphim.h> #include<hienthi.h> #int_timer0 void timer0interrupt() { b++; if(b==20)output_high(pin_D2); if(b==40){output_low(pin_D2);b=0;} } #int_EXT //ngat ngoai RB0 void EXT_RB0(void)//cu moi lan co ngat ngoai thi doc du lieu (1s doc 1lan) { a++; get_time(); if(a==5) { t=read_adc(); lunar_calculate(date,month,year); a=0; } } void main() { setup_timer_0 (RTCC_DIV_256); ENABLE_INTERRUPTS(INT_TIMER0); set_timer0(0); ext_int_edge(0,H_TO_L);//chon ngat ngoai 0, suon ngat la suon xuong enable_interrupts(GLOBAL);//cho phep ngat toan cuc setup_adc(ADC_CLOCK_INTERNAL);//ADC lam viec voi nguon xung noi setup_adc_ports(sAN0);//chon kenh ADC setup_rtc(); while(1) { ktphim(); hien_thi(); } } thay đổi nội dung bởi: ChuTieu_Quay, 08-09-2013 lúc 11:08 PM. |
|
|