Nguyên văn bởi beiudientu
Xem bài viết
Thông báo
Collapse
No announcement yet.
giúp em hiệu ứng quét theo hàng
Collapse
X
-
-
wa cái này em định hỏi các pác có bít thì giúp em ha
giải thích cho em cách làm dòng chữ chạy từ dưới lên dc ko
có đoạn code ví dụ thì càng tốt (viết bàng asm)8051 là con em viết thành thạo. em sẵn sàng giúp đỡ các pác nếu em có thể
liên lạc với em qua địa chi email: Mob: 01882.076.989
Comment
-
Nguyên văn bởi hoangphat Xem bài viếtwa cái này em định hỏi các pác có bít thì giúp em ha
giải thích cho em cách làm dòng chữ chạy từ dưới lên dc ko
có đoạn code ví dụ thì càng tốt (viết bàng asm)
Chương trình mình up lên cũng có hiệu ứng chạy từ dưới lên đó. Có cả trên xuống, phải qua trái đó. có gì bạn tham khảo nha.
Comment
-
@ Anh Mr_se7en sao trong chương trình này em không thấy hàm chính void main () đâu cả vậy... và vòng lặp liên tục vd while(1) chẳng hạn.. em đưa vào mô phỏng và điều khiển thực tế thì không thấy port điều khiển cho ic quét hàng 74hc154 được tác động... anh cho em hỏi thêm câu code này nữa out_serial(lib_font[(data_out[3-i])*16 + v],7); anh giải thích cho em cái lệnh data_out[3-i])*16 + v] nó sẽ trỏ tới mảng data_out nhưng sao cần *16 ..Nguyên văn bởi Mr_se7en Xem bài viếtMình kiếm được tài liệu rồi đây. Đã làm chạy thành công rồi. Chương trình này đưa 24 chữ cái ( Chữ IN HOA đó nha) vào rối muốn chữ nào xuât ra thì chỉ việc đổi chữ "DEMO" thành chữ mình muốn nha. Chúc bạn thành công
#include <AT89X52.h>
//--------------------------------
//khai bao bien
//16hang, 4led
//P0 SELECT HANG
sbit clk = P2^5;
sbit s_clk = P2^4;
sbit data_d = P2^6;
sbit data_x = P2^7;
//--------------------------------
unsigned char n,m,l,step,color =0;
unsigned int count =0,temp_1=0,temp_2=0;
//----------------------------------------------
/*font du lieu chi lap trinh cho chu IN HOA,
neu muon cho chu thuong thi tao them font chu IN THUONG
cho bang ma font */
//FONT TIENG VIET 24 CHU CAI
unsigned char code lib_font[]={
0x00,0x00,0x00,0x10,0x38,0x7C,0xFE,0xC6,0xC6,0xFE, 0xFE,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0xF8,0xFE,0xC6,0xC6,0xFC,0xFC,0xC6 ,0xC6,0xFE,0xFC,0x00,0x00,0x00
,0x00,0x00,0x00,0x7C,0xFE,0xC0,0xC0,0xC0,0xC0,0xC0 ,0xC0,0xFE,0x7C,0x00,0x00,0x00
,0x00,0x00,0x00,0xF8,0xFC,0xC6,0xC6,0xC6,0xC6,0xC6 ,0xC6,0xFC,0xF8,0x00,0x00,0x00
,0x00,0x00,0x00,0xFE,0xFE,0xC0,0xC0,0xF8,0xF8,0xC0 ,0xC0,0xFE,0xFE,0x00,0x00,0x00
,0x00,0x00,0x00,0xFE,0xFE,0xC0,0xC0,0xFC,0xFC,0xC0 ,0xC0,0xC0,0xC0,0x00,0x00,0x00
,0x00,0x00,0x00,0x7C,0xFE,0xC0,0xC0,0xC0,0xCE,0xC6 ,0xC6,0xFE,0x7C,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xC6,0xC6,0xFE,0xFE,0xC6 ,0xC6,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0x7E,0x3C,0x18,0x18,0x18,0x18,0x18 ,0x18,0x3C,0x7E,0x00,0x00,0x00
,0x00,0x00,0x00,0x7E,0x7E,0x18,0x18,0x18,0x18,0x98 ,0xD8,0xF8,0x70,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xCC,0xD8,0xF0,0xE0,0xE0,0xF0 ,0xD8,0xCC,0xCE,0x00,0x00,0x00
,0x00,0x00,0x00,0xC0,0xC0,0xC0,0xC0,0xC0,0xC0,0xC2 ,0xC6,0xFE,0xFE,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xEE,0xFE,0xD6,0xC6,0xC6 ,0xC6,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xE6,0xE6,0xF6,0xDE,0xCE ,0xCE,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0x7C,0xFE,0xC6,0xC6,0xC6,0xC6,0xC6 ,0xC6,0xFE,0x7C,0x00,0x00,0x00
,0x00,0x00,0x00,0xFC,0xFE,0xC6,0xC6,0xFE,0xFC,0xC0 ,0xC0,0xC0,0xC0,0x00,0x00,0x00
,0x00,0x00,0x00,0x7C,0xFE,0xC6,0xC6,0xC6,0xD6,0xDA ,0xCC,0xF6,0x7B,0x00,0x00,0x00
,0x00,0x00,0x00,0xFC,0xFE,0xC6,0xC6,0xFE,0xFC,0xD8 ,0xDC,0xCE,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0x7C,0xFE,0xC0,0xC0,0xFC,0x7E,0x06 ,0x06,0xFE,0x7C,0x00,0x00,0x00
,0x00,0x00,0x00,0x7E,0x7E,0x5A,0x18,0x18,0x18,0x18 ,0x18,0x18,0x18,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xC6,0xC6,0xC6,0xC6,0xC6 ,0xC6,0xFE,0x7C,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xC6,0xC6,0xC6,0xC6,0xEE ,0x7C,0x38,0x10,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0xC6,0xC6,0xC6,0xD6,0xFE ,0xEE,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0xC6,0xC6,0x6C,0x38,0x10,0x10,0x38 ,0x6C,0xC6,0xC6,0x00,0x00,0x00
,0x00,0x00,0x00,0x66,0x66,0x66,0x7E,0x3C,0x18,0x18 ,0x18,0x3C,0x7E,0x00,0x00,0x00
,0x00,0x00,0x00,0xFE,0xFE,0x06,0x0C,0x18,0x30,0x60 ,0xC0,0xFE,0xFE,0x00,0x00,0x00
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00 ,0x00,0x00,0x00,0x00,0x00,0x00};
unsigned char code lib_dis []={"ABCDEFGHIJKLMNOPQRSTUVWXYZ "};
unsigned char code lib_out []={" DEMO @"};
unsigned char data_out [5];
unsigned char data_temp[5];
void delay_ms(unsigned int data_in)
{
unsigned int i,j;
for(i=0;i<=data_in;i++)
for(j=0;j<=33;j++);
}
//------------------------------------------------------
void out_serial(unsigned char data_in,unsigned char loop)
{
unsigned char i,j;
for(i=0;i<=loop;i++)
{
j = data_in;
j = j>>i;
j &= 0x01;
if(j ==0)
{
data_x =0;
data_d =0;
clk =0;
clk =1;
}
else
{
if(color==0) //RED
{
data_d =1;
data_x =0;
clk =0;
clk =1;
}
else
if(color==1) //GREEN
{
data_d =0;
data_x =1;
clk =0;
clk =1;
}
else
{
data_d =1; //YELLOW
data_x =1;
clk =0;
clk =1;
}
}
}
}
//----------------------------------------------------------
void tra_ma (unsigned char data_in)
{
unsigned char i,j,k=0;
for(i=data_in;i<=(data_in + 4);i++)
{
data_temp[k] = lib_out[i];
k ++;
}
for(i=0;i<=4;i++)
{
for(j=0;j<=26;j++)
{
if(data_temp[i] == lib_dis[j])
data_out[i] = j;
}
}
}
//------------------------------------------------------------
void next_led(unsigned char data_in,unsigned char dich_bit)
{
out_serial(data_in,7-dich_bit);
}
//------------------------------------------------------------
void hien_thi(unsigned char hang,unsigned char dich_bit)
{
unsigned char i;
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[4-i])*16+hang],7);
}
next_led (lib_font [(data_out[0])*16+hang],dich_bit);
}
//-----------------------------------------------------
void change_color () interrupt 1 //ngat timer0
{
TR0 =0;
TH0=0x3C;
TL0=0xB0;
TR0=1;
count ++;
if(count == 40) //delay 50.000uS * 80 = 2s (Crystal = 22.1184MHz)
{
count =0;
color ++;
if(color==3)
color=0;
}
}
//---------------------------------------------------
void stop_data()
{
unsigned char i,k,u;
for(k=0;k<=150;k++)
{
for(u=0;u<=15;u++)
{
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[3-i])*16+u],7);
}
delay_ms(2);
P0 =255;
s_clk =0;
s_clk =1;
P0 =u;
}
}
}
//------------------------------------------------------
void down_up()
{
unsigned int u,i,j,k,v;
tra_ma(4);
for(k=0;k<=15;k++)
{
for(j=0;j<=20;j++)
{
v = 0;
for(u=0;u<=15;u++)
{
if(u>=15-k)
{
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[3-i])*16 + v],7);
}
delay_ms(2);
P0 =255;
s_clk =0;
s_clk =1;
P0 =u;
v++;
}
}
}
}
for(k=0;k<=15;k++)
{
for(j=0;j<=20;j++)
{
v = k;
for(u=0;u<=15;u++)
{
if(u <= 15-k)
{
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[3-i])*16 + v],7);
}
delay_ms(2);
P0 =255;
s_clk =0;
s_clk =1;
P0 =u;
v++;
}
}
}
}
}
void up_down()
{
unsigned int u,i,j,k,v;
tra_ma(4);
for(k=0;k<=15;k++)
{
for(j=0;j<=20;j++)
{
v = 15-k;
for(u=0;u<=15;u++)
{
if(u<=k)
{
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[3-i])*16 + v],7);
}
delay_ms(2);
P0 =255;
s_clk =0;
s_clk =1;
P0 =u;
v++;
}
}
}
}
tra_ma(4);
for(k=0;k<=15;k++)
{
for(j=0;j<=20;j++)
{
v = 0;
for(u=0;u<=15;u++)
{
if(u>=k)
{
for(i=0;i<=3;i++)
{
out_serial(lib_font[(data_out[3-i])*16 + v],7);
}
delay_ms(2);
P0 =255;
s_clk =0;
s_clk =1;
P0 =u;
v++;
}
}
}
}
}
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Cấu hình chiến game "quốc dân" cho nền tảng AM5: Lựa chọn tối ưu ngân sách với Ryzen 5 7500Fbởi kumarbrMình đồng ý với hướng build AM5 bằng 7500F, nhưng nếu có thể cố thêm ngân sách thì nên lên RX 7600 ngay từ đầu. 4GB VRAM của RX 6500 XT bắt đầu khá chật với nhiều game mới, còn RX 7600 sẽ dùng thoải mái hơn trong vài năm tới.
-
Channel: Đánh giá sản phẩm DTVN
16-06-2026, 15:49 -
-
bởi theidiotcatTrong thời buổi vật giá leo thang, việc sắm một bộ máy tính chơi game đáp ứng đủ tiêu chí "ngon, bổ, rẻ" là ưu tiên hàng đầu của nhiều bạn trẻ. Lúc này, combo sử dụng vi xử lý AMD Ryzen 5 7500F kết hợp cùng card màn hình Radeon...
-
Channel: Đánh giá sản phẩm DTVN
16-06-2026, 10:16 -
-
bởi theidiotcatAMD Ryzen 9 9950X3D không chỉ là một bộ vi xử lý đơn thuần; nó là lời khẳng định về sức mạnh của kiến trúc Zen 5 kết hợp cùng công nghệ 3D V-Cache đột phá. Trong bối cảnh thị trường linh kiện PC cạnh tranh khốc liệt, đây được xem...
-
Channel: Đánh giá sản phẩm DTVN
15-06-2026, 09:21 -
-
bởi theidiotcatBộ đôi Ryzen 9 9950X3D2 và Radeon RX 9070 XT 16GB là sự kết hợp phần cứng cao cấp nhất của AMD hiện nay. Đây không chỉ là một dàn máy tính để giải trí thông thường, mà là công cụ làm việc mạnh mẽ dành cho những ai có nhu cầu xử lý cường...
-
Channel: Đánh giá sản phẩm DTVN
15-06-2026, 09:09 -
-
bởi theidiotcatKhi ráp một bộ máy tính cấu hình cao, việc cân đối ngân sách cho từng linh kiện là rất quan trọng. Sự kết hợp giữa vi xử lý AMD Ryzen thế hệ mới có công nghệ 3D V-Cache và card đồ họa Radeon RX 9070 XT đang là lựa chọn rất đáng tiền....
-
Channel: Đánh giá sản phẩm DTVN
11-06-2026, 10:43 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Giới thiệu bản nhạc đệm mới nhộn nhịp tươi vui, nghe là muốn... xuất gia đi tu liền!!!!😁...
-
Channel: Tâm tình dân kỹ thuật
11-06-2026, 09:51 -

Comment