hvnam
14-03-2010, 08:04 AM
Em đang tìm hiểu về PIC và đang làm theo các tutorial, khi làm mạch LED 7 đoạn em gặp trục trặc như thế này, mong các bác chỉ cho em! Em rất cảm ơn!
1. Cho em hỏi cách nối mạch như thế đã đúng chưa?
2. Nguyên lý là làm cho mỗi LED 7 thanh tắt sáng trong thời gian rất ngắn để đánh lừa con mắt, vậy tại sao ko nối trực tiếp chân 1,2 của LED (trong sơ đồ) vào chân RB0 và RB1 luôn?
3. Trong hình vẽ ta thấy chân 1,2 của LED luôn sáng, vì sao lại thế ạ? Trong khi đã dùng con trans có tác dụng như cái công tắc?
4. Còn đây là trích 1 đoạn code điều khiển LED hiển thị 2 số 4 và 5:
"...loop
MOVLW 0x99 ; hiển thị số 4
MOVWF PORTD
MOVLW b'11111101' ; cấp nguồn cho LED hàng chục
MOVWF PORTB
CALL delay_1ms ; đoạn code delay_1ms em ko copy ra đây
MOVLW 0x92 ; hiển thị số 5
MOVWF PORTD
MOVLW b'11111110' ; cấp nguồn cho LED hàng đơn vị
MOVWF PORTB
CALL delay_1ms
GOTO loop... "
kết quả các bác thấy ở hình ảnh, nhờ các bác giải thích hộ ạ?
Em xin chân thành cảm ơn!
1. Cho em hỏi cách nối mạch như thế đã đúng chưa?
2. Nguyên lý là làm cho mỗi LED 7 thanh tắt sáng trong thời gian rất ngắn để đánh lừa con mắt, vậy tại sao ko nối trực tiếp chân 1,2 của LED (trong sơ đồ) vào chân RB0 và RB1 luôn?
3. Trong hình vẽ ta thấy chân 1,2 của LED luôn sáng, vì sao lại thế ạ? Trong khi đã dùng con trans có tác dụng như cái công tắc?
4. Còn đây là trích 1 đoạn code điều khiển LED hiển thị 2 số 4 và 5:
"...loop
MOVLW 0x99 ; hiển thị số 4
MOVWF PORTD
MOVLW b'11111101' ; cấp nguồn cho LED hàng chục
MOVWF PORTB
CALL delay_1ms ; đoạn code delay_1ms em ko copy ra đây
MOVLW 0x92 ; hiển thị số 5
MOVWF PORTD
MOVLW b'11111110' ; cấp nguồn cho LED hàng đơn vị
MOVWF PORTB
CALL delay_1ms
GOTO loop... "
kết quả các bác thấy ở hình ảnh, nhờ các bác giải thích hộ ạ?
Em xin chân thành cảm ơn!