![]() |
![]() |
#1 |
Đệ tử 3 túi
Tham gia ngày: Apr 2009
Bài gửi: 53
: |
giúp em 1 chút về CCS với.
em muốn quét 16 con led7.
hiển thị 8 giá trị nhiệt độ (từ 00=>80 độ) lưu trong mảng a[] ( 2 con hiển thị 1 giá trị nhiệt độ) RB0->RB3 : nối với 4 chân chọn chip của 74154 RB4->RB7: nối vào 4 chân của 7447 tần số pic16f877a là 20Mhz ctrinh sao ko chạy ạ int8 j=0; void TIMER1_isr(void) { int8 i,temp; setup_timer_1(55536); i=j/2; convert_bcd((int8)a[i]); if(j%2==0) // hien thi hang chuc { temp=j*2^4+high; PORTB=temp; } if(j%2==1) // hien thi hang don vi { temp=j*2^4+low; PORTB=temp; } j++; if(j==6) { j=0; } } void convert_bcd(int8 x) { low=x%10; // so hang don vi high=x/10; // hang chuc } |
![]() |
![]() |
![]() |
#2 |
Đệ tử 7 túi
Tham gia ngày: Jul 2007
Nơi Cư Ngụ: Đà Nẵng
Bài gửi: 188
: |
t k hỉu bạn viết code kiểu j , chẳng có hàm main() , mún sd ngắt timer 1 để quét led thì phải khai báo đúng . Không có vòng lặp thì ct của u chỉ chạy đc 1 lần + tốc độ quá nhah--> k thấy j
|
![]() |
![]() |
![]() |
#3 |
Đệ tử 3 túi
Tham gia ngày: Apr 2009
Bài gửi: 53
: |
hihi. mình mún hỏi cái giải thuật trên tại sao sai. các phần khai báo hay lặp thì ok rùi bạn à. tức là vào chương trình timer1 viết vậy có j sai ? bạn xem kĩ giùm mình tí
|
![]() |
![]() |
![]() |
|
|