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
-
Nguyê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
-
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
-
Trả lời cho Hỏi cách điều chế xungbởi thetungBạn cho qua cái Tờ ri gơ Sờ mít ấy ......
-
Channel: Kỹ thuật điện tử tương tự
16-12-2024, 11:26 -
-
Trả lời cho Hỏi cách điều chế xungbởi nguyendinhvanCó gì mà khó ?
Răn cưa vuông đây
...-
Channel: Kỹ thuật điện tử tương tự
15-12-2024, 23:36 -
-
Trả lời cho hỏi về tụ điệnbởi ndp62Chữ " VENT" không phải là tên hãng sx tụ đâu ,vó thế là 1 ký hiệu liên quan tụ lowesr ?
-
Channel: Điện thanh
15-12-2024, 18:24 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi bqvietTrừ trường hợp công suất (rất) thấp, hầu như tất cả các loại nguồn xung thông thường đều có tụ nhỏ 1 - 10nF nối giữa sơ cấp và thứ cấp, để thoát nhiễu và để chống hiện tượng tương tự tĩnh điện. Vụ này đã thảo luận vài...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 22:02 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi namlangnhoE thử 3 cái nguồn nó đều giống nhau. Nên e làm tiếp địa luôn.
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 19:58 -
-
Trả lời cho Thắc mắc về nguồn tổ ong 12vbởi mèomướpDạ chú sắm con át chống giật và thay nguồn tổ ong khác cho an toàn ạ. Đa phần nguồn xung đều xả nhiễu của bên thứ cấp về điện lưới qua 1 con tụ nên cảm giác tê sẽ khó xác định rõ ràng là do rò điện hay là nó vốn vậy...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 18:51 -
-
bởi namlangnhoXin chào mọi người. E có sử dụng 1 cục nguồn tổ ong 12v-30A chạy đèn led xe trà sữa. Mà thợ thi công bị rò điện nên điện rò ra khung xe. E dùng đồng hồ đo điện ở khung xe và cả output thì thấy có dòng điện xoay chiều hơn 100v. Nên chạm...
-
Channel: Điện tử dành cho người mới bắt đầu
14-12-2024, 00:12 -
-
bởi Manh.n.trCác bác cho em hỏi cách điều chế xung răng cưa sang xung vuông với ạ. Em đang thấy khó ạ...
-
Channel: Kỹ thuật điện tử tương tự
13-12-2024, 20:46 -
-
Trả lời cho hỏi về thiết kế mạch tuần tự trên proteusbởi Hatruong1309
-
Channel: Hỗ trợ học tập
12-12-2024, 00:33 -
-
bởi Hatruong1309Cho e hỏi là phần chân X thì nối cái j thì mạch mới chạy được ạ và kiểm tra đúng sai kiểu j ạ
Đề bài thiết kế mạch dãy đồng bộ nhận biết dãy tín hiệu vào ở dạng nhị phân được đưa liên tiếp ở đầu vào X và được đồng...-
Channel: Hỗ trợ học tập
12-12-2024, 00:33 -
Comment