các bác ơi, ai có code cho 89s52, nháy led matrix 8x8 hay 5x7 ko, cho e với.
Thông báo
Collapse
No announcement yet.
Tổng hợp các đề tài cho 8051-ASM-Keil(Học tập)
Collapse
X
-
pro ơi a giúp e lập trình ghép nối con 89c51 với con 8259A để mở rộng ngắt cho con VĐK với. e cố tìm đọc mãi nhưng giờ vẫn chưa bít thiết đặt trạng thái khởi đọng ban đầu cho con 8259A như thía nào. A bớt chút thời gian giúp e nha! tks a trước!
Comment
-
linh ơi,cho minh hỏi là những cái ASM mà bạn gửi có đúng ko thế, sao mih thấy mấy ct bị sai
vd như là
ORG 0000H
HUND EQU 100 ;100 x 1000 = 1 giay
COUNT EQU 1000
SETB P2.0 ;P3.0: input
LOOP: JNB P2.0,LOOP ;Cho logic 0 o P3.0
LOOP1: JB P2.0,LOOP1 ;cho logic 1 o P3.0
CLR P1.0
ACALL DELAY
SETB P1.0
SJMP LOOP
DELAY: MOV R7,#HUND
AGAIN: MOV TH0,#HIGH(COUNT)
MOV TL0,#LOW(COUNT)
SETB TR0
WAIT: JNB TF0,WAIT
CLR TF0
CLR TR0
DJNZ R7,AGAIN
RET
end
bạn ko khởi động TMOD thì lam j có thời gian trễ,với lại đk p2.0 chứ đâu phải p3.0,mấy cái ct đó bạn test chưa?
Comment
-
mấy bác nào xài c chỉ e dùng 555 chỉnh nhịp giup e vơi
code e đây ạ
#include <regx51.h>
#define led P0
void delay(unsigned int ms)
{
unsigned int i;
unsigned char j;
for(i=0;i<ms;i++)
{
for(j=0;j<125;j++)
{
}
}
}
main()
{
while(1)
{
P0=0x00;delay(1000);
P0=0x00;delay(1000);
P0=0x04;delay(1000);
P0=0x08;delay(1000);
P0=0x10;delay(1000);
P0=0x20;delay(1000);
P0=0x40;delay(1000);
P0=0x80;delay(1000);
}
}
Comment
-
bạn có thể gửi cho mình kai' code matrix đc koNguyên văn bởi linhnc308 Xem bài viếtBên PIC cũng có một mục như vầy và thấy có nhiều bạn hỏi nên tôi mở thêm cho bên 8051, code cho 8051 tôi có khá nhiều và sẽ cố share dần cho a e mới học, có đủ cả cho ASM và C. Sẽ chuẩn bị và up lên sớm. Mong dc sự đón nhận và ủng hộ của a e, ai có gì hay thì up lên nhé, để cho nhưng người mới đỡ khổ như tôi trước đây, cứ phải mò mẫm và đôt không biết bao nhiêu tiền net cho việc tìm tài liệu.
- Nháy LED dơn, nháy led nhiều chế độ
- LED 7 thanh
- Phím bấm
- RS232
- ADC0804, 0809
- Code cho DAC0808 tôi còn thiếu, ái có bổ xung nhé
- Led matrix
- I2C, SPI
- LCD
.....nhiều code lặt vặt khác.
Phát triển box 8051
Vẫn còn bên AVR nữa, có lẽ cung cần mở môt mục tương tự cho nó đủ bộ AT, AVR, PIC
mail: vietdung91hp@gmail.com
Comment
-
bạn sai cú pháp và nhầm P1.0 là 1 chân ở port 1 thì nó là 1bit thì không thể đặt 1 byte vào được.Nguyên văn bởi ngoalong911 Xem bài viếtxin cac pro giai thich gium tai sao khi toi dung ham
MOV P1.0,#3CH
thi chuong trinh bao la Undefined symbol
xin hoi khac phuc ntn ah
thank so much
nếu là p1.0 thì setb hoặc clr
còn là p1 thì mới mov p1,#...
Comment
-
Giúp mình viết code này với.
Mọi người giúp mình với. Mình đã lập trình được khi bấm công tắc thì mở LCD, còn giờ muốn bấm công tắc để LCD tắt thì làm sao ạ,chức năng giống như nút ON/OFF. Mọi người ai giỏi lập trình giúp mình với. thank! Đây là code mình viết:
#include<reg52.h>
#include<stdio.h>
#include<intrins.h>
#include<math.h>
#include<stdlib.h>
#define bat 1
#define tat 0
sbit ctac = P3^0;
unsigned char dem=1;
sbit RS = P1^0;
sbit RW = P1^1;
sbit EN = P1^2;
sbit f = P3^3;
sbit b = P3^1;
sbit c1=P0^4;
sbit c2=P0^5;
sbit c3=P0^6;
sbit c4=P0^7;
unsigned char x;
unsigned char message[32];
unsigned char i,k;
void delay(unsigned long int t)
{
unsigned long int i;
for(i = 0; i<=t; ++i);
}
/*void phimnhan(void)
{ if(ctac==0)
{delay(100);
while(ctac==0);
delay(100);
dem++;
}
} */
void busy_flag (void)
{
P2 = 0xff;
RS = 0;
RW = 1;
do
{
EN = 1;;
delay (10);
EN = 0;
x = P2;
x = x&0x80;
}
while(x!= 0x80);
}
void write_command (unsigned char lcd_command)
{
busy_flag();
P2 = lcd_command;
RS = 0;
RW = 0;
EN = 1;
delay(10);
EN = 0;
delay(10);
}
void write_data(unsigned char LCD_data) // thanh ghi du lieu
{
busy_flag();
if(LCD_data!='\n')
{
P2=LCD_data;
}
else
{
write_command(0xC0);
return;
}
RS=1;
RW=0;
EN=1;
delay(80);
EN=0;
delay(80);
}
void write_string(char *s)
{
while(*s)
{
write_data(*s);
s++;
}
}
void init (void)
{
write_command(0x03); //
write_command(0x38);
write_command(0x06);
write_command(0x0e);
}
void hienthi()
{
/*if(P0==0xee){write_command(0x01);
write_command(0x80);
write_string(" phim so 1 ");
P3=0xf1;} */
/*if(P0==0xde){write_command(0x01);
write_command(0x80);
write_string(" \n phim so 2 ");P3=0xf2;} */
if(P0==0xbe){write_command(0x01);
write_command(0x80);
write_string(" ON ");
write_command(0x0c);}
if(P0==0x7e){write_command(0x01);
write_command(0x80);
write_string(" OFF ");
write_string(" 3 "); delay(500); write_command(0x01);
write_string(" 2 "); delay(500);write_command(0x01);
write_string(" 1 "); delay(500); write_command(0x01);
write_command(0x08);
return; }
/*if(P0==0xed){write_command(0x01);
write_command(0x80);
write_string(" phim so 5 ");}
if(P0==0xdd){write_command(0x01);
write_command(0x80);
write_string(" phim so 6 ");} */
if(P0==0xbd){write_command(0x01);
write_command(0x80);
write_string(" VOLUME+ ");}
if(P0==0x7d){write_command(0x01);
write_command(0x80);
write_string(" VOLUME- ");}
/*if(P0==0xeb){write_command(0x01);
write_command(0x80);
write_string(" phim so 9 ");}
if(P0==0xdb){write_command(0x01);
write_command(0x80);
write_string(" phim so 10 ");} */
if(P0==0xbb){write_command(0x01);
write_command(0x80);
write_string(" UP ");}
if(P0==0x7b){write_command(0x01);
write_command(0x80);
write_string(" DOWN ");}
/*if(P0==0xe7){write_command(0x01);
write_command(0x80);
write_string(" phim so 13 ");}
if(P0==0xd7){write_command(0x01);
write_command(0x80);
write_string(" phim so 14 ");} */
if(P0==0xb7){write_command(0x01);
write_command(0x80);
write_string(" ENTER ");}
if(P0==0x77)
{
write_command(0x01);
write_command(0x80);
sprintf(&message[0],"ESC");
write_string(&message[0]);P3=0x00;
}
}
void dieukhien(void)
{
int n[5] = {0xfe,0xfd,0xfb,0xf7};
for (i=0; i<=3;++i)
{
P0 = n[i];
hienthi();
}
}
/* Lenh cuon tang tuyen tinh
k = 0xfe;
for(i=0;i<=3;++i)
{
P0 = k;
k = _crol_(k,1);
}*/
void main (void)
{
while(1)
if(ctac==0)
{
delay(100);
init();
write_command(0x01);
write_command(0x80);
sprintf(&message[0]," CAM BIEN\nHONG NGOAI_LCD");
write_command(0x0c);
write_string(&message[0]);
/*while(ctac==1)
{
//delay(100);
write_command(0x08);
} */
while(1)
{
dieukhien();
delay(10);
}
}
}
Comment
Bài viết mới nhất
Collapse
-
bởi FotiniChào mọi người.
Cấu trúc khung giàn của tôi sử dụng một động cơ servo tích hợp trên mỗi trục (https://www.oyostepper.es/category-8...integrado.html), với một dây nối đất chung.
Việc kích hoạt từng trục riêng lẻ hoạt động tốt, nhưng...-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 14:03 -
-
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