các cao nhân AVR giúp mình với
Thông báo
Collapse
No announcement yet.
Giúp Mình Về Việc Quet Led 7 đoạn
Collapse
X
-
#include <mega16.h>
#include <delay.h>
#include <stdio.h>
#define A PORTC.0//A,B,C,D nối vào ic giải mã 74247
#define B PORTC.1
#define C PORTC.2
#define D PORTC.3
#define T1 PORTC.5 // T1,t2,T3 nối vào IC 74138 dùng để quét 5 led(anod)
#define T2 PORTC.6
#define T3 PORTC.7
unsigned long a,b,c,d,e,f,g,h,sodem,cnt;
void giaima(unsigned long cnt)
{
switch (cnt)
{
case 0:
A=0;
B=0;
C=0;
D=0;
break;
case 1:
A=1;
B=0;
C=0;
D=0;
break;
case 2:
A=0;
B=1;
C=0;
D=0;
break;
case 3:
A=1;
B=1;
C=0;
D=0;
break;
case 4:
A=0;
B=0;
C=1;
D=0;
break;
case 5:
A=1;
B=0;
C=1;
D=0;
break;
case 6:
A=0;
B=1;
C=1;
D=0;
break;
case 7:
A=1;
B=1;
C=1;
D=0;
break;
case 8:
A=0;
B=0;
C=0;
D=1;
break;
case 9:
A=1;
B=0;
C=0;
D=1;
break;
}
}
sodem=DATA;//dât cần xuất ra led
a=(sodem/10000);
b=(sodem-a*10000)/1000;
c=(sodem-a*10000-b*1000)/100;
d=(sodem-a*10000-b*1000-c*100)/10;
e=(sodem-a*10000-b*1000-c*100-d*10);
//------------------ ---------------------------------------
cnt=a;
giaima(cnt);
//PORTA=0b11101111;
T1=1;
T2=1;
T3=0;
delay_ms(2);
//------------------
cnt=b;
giaima(cnt);
T1=0;
T2=0;
T3=1;
delay_ms(2);
//------------------
cnt=c;
giaima(cnt);
T1=1;
T2=0;
T3=1;
delay_ms(2);
//-----------------------
cnt=d;
giaima(cnt);
T1=0;
T2=1;
T3=1;
// PORTA=0b10111101;
delay_ms(2);
PORTA=0xFF;
//------------------
cnt=e;
giaima(cnt);
T1=1;
T2=1;
T3=1;
delay_ms(2);
PORTA=0xFF;
-
đây là đoạn chương trình khai báo trong main
PORTA=0xFF;
DDRA=0xFF;
PORTB=0xFF;
DDRB=0xFE;
PORTC=0xff;
DDRC=0xFF;
PORTD=0xff;
DDRD=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
ASSR=0x00;
TCCR2=0x00;
TCNT2=0x00;
OCR2=0x00;
// INT2: On
// INT2 Mode: Falling Edge
GICR|=0x00;
MCUCR=0x00;
MCUCSR=0x00;
GIFR=0x00;
TIMSK=0x00;
ACSR=0x80;
SFIOR=0x00;
Comment
-
Haha! Anh Nam cũng vào đây ahNguyên văn bởi bk_exp Xem bài viếtkhi chuyển qua mấy con AVR có JTAG lúc đầu chưa biết mọi người không bỏ nó đi nên mấy chân dùng cho JTAG lập trình hok đc,chỉ cần set lại Fusebit để bỏ nó đi thôi mà
. Em có con mega16 set fuse JTAGEN = 0 mà PORTC vẫn không hoạt động ở GPIO được. Chả hiểu thế nào nữa???
Comment
-
Bạn phải để JTAGEN = 1 (tức là không được tick) chứ không phải =0 (tức là Enable chức năng JTAG).PNLab
Mạch nạp/debug ULink2, Jlink ARM USB
Mạch nạp AVR, PIC, 8051, MSP430 USB
Mạch phát triển STM32, ARM9, ARM11
more...www.pnlabvn.com
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi bqvietBqv cáo lỗi vì chưa đủ khả năng diễn giải để người đọc hiểu. Người làm kỹ thuật sâu đôi khi như thế đó. Về việc nạp pin không vào dù cell mới, khả năng cái mạch quản lý đó đã hỏng - cũng chính là nguyên nhân đám cell cũ hỏng từ đầu.
-
Channel: Thiết bị điện tử cá nhân
Hôm qua, 17:17 -
-
Trả lời cho Xin hỏi về mạch thu FM/AM trong catsettebởi nguyendinhvanTheo tôi, nó chỉ là cái Tuy- ê - nơ, hoặc là khối Trung Văn Tần, nó một phần trong cái Da đì ô thôi. Vì có thấy một chỗ có ba chân hàn, giiống như chân Cờ rít sờ tăng 455 ki nô hẹc. Còn khối Tuy ê nơ thì không nhìn thây cái Di ốt Va di cáp...
-
Channel: Điện thanh
05-12-2025, 19:59 -
-
Trả lời cho Đấu tắt điện cho máy tính bảngbởi afrendlyCó vẻ ngoài hiểu biết của mình rồi. Cuối cùng mình quyết định tìm mua 2 pin trên Shopee, giá 200K thay vào. Tuy nhận pin được 1%, sạc mãi không vào nhưng cũng mở được máy lên. Vậy cũng tạm. Cảm ơn bạn đã hỗ trợ nhé....
-
Channel: Thiết bị điện tử cá nhân
04-12-2025, 01:27 -
-
Trả lời cho Máy điện châm ?bởi nick22Đúng như bạn nói, máy điện châm hiện nay trên thị trường đã khá đa dạng về mẫu mã, chức năng và giá thành.
-
Channel: Điện tử y sinh
01-12-2025, 13:23 -
-
Trả lời cho Làm thế nào để check IC LM358bởi thetungĐể check IC sống hay chết thì đơn giản : bạn lắp cái mạch ( khuếch đại hoặc dao động ) chạy bằng con IC đó ,nhưng vị trí IC thì lắp cái đế .... thế là cứ cắm rút thì biết . Còn không thì kiếm cái này : https://shopee.vn/Xu-M%C3%A1y-ki%E1%...di-%C4%91%E1%B...
-
Channel: Hướng dẫn tìm thông tin linh kiện
28-11-2025, 14:34 -
-
bởi ngochung90Tình hình là em có mua mạch 3s về để hàn vào khối pin 12v, hàn xong em đo tại các chân từ B-, B1, B2, B+ thì điện áp pin vẫn đủ 12,6v, nhưng tại 2 chân ra P- P+ thì đo chỉ được 6,3v là bị sao các bác, và chân P- P + này đồng thời là chân sạc xả thì mình cắm sạc xả cùng lúc được ko ạ
...-
Channel: Điện tử dành cho người mới bắt đầu
28-11-2025, 10:32 -

Comment