Articles by "Code Lập Trình"

10 4.104 8051 9 Acquy adc pic All datasheet ALTIUM Altium Designer AM-FM Arduino ARM ARM là gì Ấn Tượng Bản tin công nghệ Bản tin Thiết Bị Số Barobo bất động sản biến Binary Bit board lpc2378 Bộ chuyển đổi ADC Bộ Đếm Bộ điều khiển cửa cuốn Bộ Định Thời Buy Khóa Số Điện Tử Buy Mạch đếm sản phẩm Buy Mạch giao thông Buy Mạch nạp Buy Matrix Byte C cho AVR các hàm vào ra các loại lõi arm các mạch DAC cơ bản các ngắt trong pic Cách đọc điện trở Cách Đọc Giá Trị Điện Trở Cách đọc giá trị tụ điện Cách hàn linh kiện dán cách làm mạch khóa số cách tạo linh kiện dán cad/cam Cài Đặt cài đặt proteus 8 cảm biến Cấu Kiện Logic Khả Trình cấu tạo cấu trúc arm cấu trúc lệnh CCS Chân chân Transistor Chip Khả Trình chuyển đổi Chuyển đổi số tương tự Chuyển Đổi Tương Tự/Số - ADC Chuyển động số chương trình City Clip Điện Tử Code 8051 - ASM Code 8051 - C Code 8051-C code ASM code ASM mẫu 8086 Code AVR - C code C Code Lập Trình Code led sao băng code maupic code mẫu 8051 Code Mẫu 8086 Code Mẫu cho ARM - LPC1343 code mẫu pic Code PIC - C codemaupic Counter Cổng Vào Ra Cơ Bản Cuộn Cảm Cửa cuốn DA DAC Debug Decimal Delay8051 Dev-C++ Diode DIY Dò đường Do It Yourself doanh nghiệp Download DTMF Mobile đảo chiều động cơ Điện Trở Điện Tử Điện Tử Cơ Bản điều chế độ rộng xung điều chế xung PWM điều khiển bằng điện thoại Điều khiển cửa cuốn Điều khiển cửa cuốn bằng điện thoại điều khiển động cơ đo điện áp đo nhiệt độ đo nhiệt độ hiển thị lên lcd trên 8051 Đo Nhiệt Độ LM35 + LCD Đo Nhiệt Độ LM35 + Led 7 thanh đọc màu điện trở đồ chơi động cơ chân không Động cơ nhiên liệu Động cơ robo đồng hồ thời gian thực Ebook Đại Học ebook điện tử Ebook đồ án Ebook Tin Học Encoder Encoder là gì Full Giải Thuật Giải thuật PID Giáo Dục giao tiếp i2c pic 16f877a giao tiếp i2c pic16f877a với ic ds1307 giao tiếp máy tính qua rs232 Giao Tiếp Máy Tính VB6 giao tiếp rs232 giao tiếp spi giữa 2 pic giao tiếp spi trong pic Giáo Trình Điện Tử Giới thiệu 8051 Giới thiệu cơ bản GPIO Graphic Design hàm Hàn linh kiện dán Hexadecimal Hệ Hexa Hệ Nhị Phân Hệ Thập Lục Phân Hệ Thập Phân hiển thị lên lcd 16x2 Hoạt Động Học Học 8051 qua các ví dụ đơn giản Học ALtium Designer học AVR Học Corel Draw X3 Học Eagle HỌC LẬP TRÌNH 16F877A Học Lập Trình 8051 Học Lập Trình C Học Orcad Học Protues hoc-lam-robot-do-duong-qua-video Hồng ngoại hướng dẫn hướng dẫn Altium Designer hướng dẫn đo đồng hồ VOM hướng dẫn keil - C lập trình 8051 hướng dẫn làm led sao băng hướng dẫn làm led trái tim hướng dẫn lập trình ARM Hướng Dẫn Lập Trình ARM - LPC1343 hướng dẫn lập trình ARM-LPC2378 hướng dẫn lập trình CCS hướng dẫn lập trình PIC Hướng Dẫn Led Trái Tim hướng dẫn module sim548c hướng dẫn sử dụng keil hướng dẫn sử dụng proteus 8 Hyper Terminal hercules 3.2.4 I/O IC 555 IC 7447 IC 74HC151 IC 74HC154 IC 74HC245 IC 74HC595 IC 74LS138 IC DS1307 IC đồng hồ thời gian thực IC LM324 IC LM342 IC LM7805 IC số IC số opamp LM324 IC Thông Dụng IC555 Interrupt Keil 4 Full keil arm Keil C Keil uVision3 kế toán kiểm toán khái niệm Khái Niệm Cơ Bản Kho Vật Liệu khóa điện tử khóa số dùng 8051 khóa số dùng 89s52 Khóa Số Điện Tử khuếch đại kiểm tra Kinh doanh maketing kinh tế quản lí Kỹ Thuật Kỹ Thuật Vi Xử Lý làm mạch điện lý thú Làm quen AVR Lap Trinh Dieu Khien Robot Lập Trình lập trình 8051 Lập Trình AVR Lập Trình C lập trình c++ Lập Trình Led Quảng Cáo Lập Trình Nhúng Lập trình pic Lập trình Robot Lập Trình Vi Điều Khiển Lập Trình Với AVR Studio LCD 16x2 Lcd16x2 Led Clock Led Quay led sao băng led trai tim Led Trái Tim Lịch sử ra đời Linh Kiện Cơ Bản linh kiện điện tử Loa LPC 2378 LSB lý thú Mã AVR - C Mạch 7seg Mạch Amply.Mạch Loa Mạch Autorobo Mạch bảo vệ Mạch Cảm Biến mạch cảm ứng sờ tay Mạch Cầu H Mạch cube Mạch Đếm Sản Phẩm Mạch điện cơ bản Mạch điện hay Mạch Điện Ứng Dụng Mạch Điều khiển động cơ Mạch Động Cơ Mạch đồng hồ Mạch đồng hồ 4 led Mạch giao thông Mạch IC số Mạch in mạch khóa số mạch khuếch đại thuật toán mạch led chúc mừng năm mới mạch led đẹp Mạch Led đơn Mạch Led Quảng Cáo mach led trai tim mạch led trái tim Mạch Led Vumeter mạch lý thú Mạch Ma trận Phím Mạch Matrix Mạch nạp Mạch nguồn Mạch Nút Bấm mạch sóng rf mạch tăng áp Mạch thu phát Mạch tổ hợp MSI Mạch trái tim Mạch Vi điều khiển Microbicho module module GSM/GPS Module Sim548 Module Sim548 giao tiếp với vi điều khiển PIC Module Sim548C Mosfet Motor Mô Phỏng Phần Cứng Mô Tả Phần Cứng MSB mua led sao băng News Ngắt Ngắt Trong LPC23xx ngân hàng Ngôn Ngữ Ngôn Ngữ C Ngôn Ngữ Tự Học Lập Trình C Ngôn Ngữ VHDL Nguyên Lý nguyên lý ic 555 Nguyên Tắc nháy led Nhập môn C Nhỏ Gọn Nibble opamp People Phần Mềm phần mềm altium Designer Phần mềm điện tử Phần Mềm Điện Tử Phần Mềm Điện Tử Hay Phần Mềm Hay Phần Mềm Led Quảng Cáo phần mềm proteus 8 Phần mềm vi tính Phần Mền Phương pháp hàn linh kiện dán PIC pic16f877a Print Design Proteus Proteus 7.8 SP2 FULL PWM quà tặng bạn gái quà tặng độc đáo quản trị doanh nghiệp quản trị kinh doanh quét led 7 đoạn Relay robocon Robot ROBOT DÒ ĐƯỜNG rút gọn mạch logic tổ hợp Sach Dien Tu Sản Phẩm Thú Vị Sản Phẩm Thương Mại Sáng tạo Short Smart Home SMD sơ đồ nguyên lý spi Sports Sử Dụng Sử Dụng Đồng Hồ sử dụng đồng hồ VOM sử dụng ngắt trong pic sự khác nhau Sức mạnh số Tải tài chính tài chính doanh nghiệp tài chính ngân hàng Tài Khoản Chia Sẻ Tài Liệu Tài Liệu 8051 tài liệu avr Tài liệu Điện Tử Tài Liệu Pic Tài liệu robocon tài liệu về ngân hàng Tài Liệu Vi Điều Khiển tailieuvn Tạo cổng Com ảo Tạo cổng nối tiếp ảo tạo dự án trong keil arm Tạo Project trong Vi Xử Lý ARM tạo thư viện altium designer tạo xung vuông Tạp chí Tạp Chí Hay tăng áp Tập lệnh AT Team Support TEAMPLATE PROTEUS Test thị trường tài chính Thiết Bị Thú Vị Thiết kế robot Thiết lập Fuse Bits Thiết Lập Pin Thuật Toán Thuật Toán Điều Khiển PID Thuật Toán Quine MCCluskey Thư viện Protues Thực Hành Thyristor Timer Timer/Counter Tin Học Chia Sẻ Tổ Chức Bộ Nhớ tổng quan về proteus 8 Transistor Tranzito Tranzitor Trao đổi học tập Travel Trình Biên Dịch Trình Dịch Trong Suốt Truyền Thông Nối Tiếp Không Đồng Bộ- UART truyền thông nối tiếp RS232 Tụ điện TUT - 8051 - ASM TUT - 8051 - KeilC tự hành Tự Học C Tự Học Lập Trình C Tý hon UART Update USB Ứng Dụng Led Quảng Cáo ứng dụng mạch khuếch đại thuật toán vẽ mạch in vẽ mạch nguyên lý VHDL Vi Điều Khiển Vi điều khiển - Ứng dụng vi điều khiển PIC Vi mạch số Vi Xử Lý Vi Xử Lý 8051 Vi Xử Lý 8086 Vi Xử Lý ARM Vi Xử Lý PIC Video Video Mach Điện Virtual Serial Port Driver VOM vxl Web Design xác định góc quay động cơ xử lý chuỗi
Hiển thị các bài đăng có nhãn Code Lập Trình. Hiển thị tất cả bài đăng

Lập Trình Quét 6 Led 7 Đoạn 000000 -999999 Dùng Code ASM Chính Xác Nhất

Tương tự như bài trước,chúng mình giới thiệu cho các bạn code lập trình quét 6 led từ 000000 -999999

[alert title="CODE MẪU" icon="info-circle"]
ORG 00
MAIN:
MOV R2,#0
LAPLED:MOV R1,#0
LAPLAI:MOV R0,#0
LAP:CALL HIENTHI
INC R0
CJNE R0,#100,LAP
INC R1
CJNE R1,#100,LAPLAI
INC R2
CJNE R2,#100,LAPLED
JMP MAIN

HIENTHI:
MOV R7,#100
QUET:
MOV P3,#00H
MOV A,R0
MOV B,#10
DIV AB

MOV DPTR,#MALED
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
SETB P3.4
CALL DELAY
CLR P3.4

MOV A,B
MOVC A,@A+DPTR
MOV P2,A
SETB P3.5
CALL DELAY
CLR P3.5
CALL DELAY

MOV A,R1
MOV B,#10
DIV AB
MOV DPTR,#MALED
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
SETB P3.2
CALL DELAY
CLR P3.2

MOV A,B
MOVC A,@A+DPTR
MOV P2,A
SETB P3.3
CALL DELAY
CLR P3.3
CALL DELAY

MOV A,R2
MOV B,#10
DIV AB
MOV DPTR,#MALED
MOVC A,@A+DPTR
MOV P2,A
CALL DELAY
SETB P3.0
CALL DELAY
CLR P3.0

MOV A,B
MOVC A,@A+DPTR
MOV P2,A
SETB P3.1
CALL DELAY
CLR P3.1
CALL DELAY

RET
DJNZ R7,QUET
MALED:DB 11000000B,11111001B,10100100B,10110000B,10011001B,
10010010B,10000010B,11111000B,10000000B,10010000B
RET

DELAY:
MOV R4,#35
LAP1:
MOV R5,#20

LAPA:
NOP
NOP
NOP
NOP
DJNZ R5,LAPA
DJNZ R4,LAP1
RET

END

[/alert]

Hôm nay THIETKEMACHDIENTU.NET xin giới thiệu với bạn một số chương trình điều khiển led đơn đơn giản như sau:

1.Chương trình led sáng nhấp nháy port 1.
ORG 00H
MAIN:
MOV P1,#00H;led tắt hết
CALL DELAY
MOV P1,#0FFH;led sáng hết
CALL DELAY
JMP MAIN
DELAY:;CT tạo trễ
MOV R0,#50
LAP:
NOP
NOP
DJNZ R0,LAP
RET
END
2.Chương trình Led sáng dần port 1

ORG 00H
MAIN:
MOV P1,#00000000B;Trạng thái led tắt hết
CALL DELAY
MOV P1,#00000001B;Led p1.0 sáng
CALL DELAY
MOV P1,#00000011B;led p1.0,p1.1 sáng
CALL DELAY
MOV P1,#00000111B;led p1.0,p1.1,p1.2 sáng
CALL DELAY
MOV P1,#00001111B
CALL DELAY
MOV P1,#00011111B
CALL DELAY
MOV P1,#00111111B
CALL DELAY
MOV P1,#01111111B
CALL DELAY
MOV P1,#11111111B
CALL DELAY
JMP MAIN
DELAY:
MOV R0,#200
LAP:
MOV R1,#200
LAP2:
NOP
NOP
NOP
DJNZ R1,LAP2
DJNZ R0,LAP
RET
END
3.Chương trình led tắt dần port 1

ORG 00H
MAIN:
MOV P1,#11111111B;Trạng thái led sáng hết
CALL DELAY
MOV P1,#11111110B;Led p1.0 tắt
CALL DELAY
MOV P1,#11111100B;led p1.0 tắt,p1.1 tắt
CALL DELAY
MOV P1,#11111000B
CALL DELAY
MOV P1,#11110000B
CALL DELAY
MOV P1,#11100000B
CALL DELAY
MOV P1,#11000000B
CALL DELAY
MOV P1,#10000000B
CALL DELAY
MOV P1,#00000000B
CALL DELAY
JMP MAIN
DELAY:
MOV R0,#200
LAP:
MOV R1,#200
LAP2:
NOP
NOP
NOP
DJNZ R1,LAP2
DJNZ R0,LAP
RET
END
4.Sáng dần tắt dần theo chiều ngược lại:
ORG 00H 
MAIN:
CALL CON1
CALL CON2
JMP MAIN
CON1:;SANG DAN
MOV P1,#00000000B
CALL DELAY
MOV P1,#10000000B
CALL DELAY
MOV P1,#11000000B
CALL DELAY
MOV P1,#11100000B
CALL DELAY
MOV P1,#11110000B
CALL DELAY
MOV P1,#11111000B
CALL DELAY
MOV P1,#11111100B
CALL DELAY
MOV P1,#11111110B
CALL DELAY
MOV P1,#11111111B
CALL DELAY
RET

CON2:;TAT DAN
MOV P1,#11111111B
CALL DELAY
MOV P1,#01111111B
CALL DELAY
MOV P1,#00111111B
CALL DELAY
MOV P1,#00011111B
CALL DELAY
MOV P1,#00001111B
CALL DELAY
MOV P1,#00000111B
CALL DELAY
MOV P1,#00000011B
CALL DELAY
MOV P1,#00000001B
CALL DELAY
MOV P1,#00000000B
CALL DELAY
RET

DELAY:
MOV R0,#200
LAP:
MOV R1,#200
LAP2:
NOP
NOP
NOP
DJNZ R1,LAP2
DJNZ R0,LAP
RET
END
5,Đèn giao thông không dùng led 7 đoạn:

ORG 00H
MAIN:
MOV P2,#00100001B;P1.0 và p1.5=1
CALL DELAY
MOV P2,#00010010B;p1.2 và p1.4=1
CALL DELAY1
MOV P2,#00001100B;p1.3 và p1.4=1
CALL DELAY2
JMP MAIN
DELAY:;CT trễ 2.2S
MOV R0,#200
LAP:
MOV R1,#100
LAP1:
MOV R3,#100
LAP2:
NOP
NOP
NOP
DJNZ R3,LAP2
DJNZ R1,LAP1
DJNZ R0,LAP
RET

DELAY1:;CT trễ 1.1S
MOV R4,#220
LAP4:
MOV R5,#150
LAP5:
MOV R6,#50
LAP6:
NOP
NOP
NOP
DJNZ R6,LAP6
DJNZ R5,LAP5
DJNZ R4,LAP4
RET
DELAY2:;CT trễ 3.3S
MOV R0,#220
LAP7:
MOV R1,#100
LAP8:
MOV R2,#100
LAP9:
NOP
NOP
NOP
DJNZ R2,LAP9
DJNZ R1,LAP8
DJNZ R0,LAP7
RET
END

Phạm Văn Ngọc Anh- 01644326695




VIDEO DEMO

Chương trình viết bằng C
#include<REGX51.H>
/************khai bao bien*************/
sfr dataP = 0x90;//du lieu la P1
sbit contact = P3^4;
unsigned char dem = 0;
  //ma 7 thanh tu 0 den 9 la P1
 //0xc0h;0xf9h,0xa4h,0xb0h,0x99h,0x92h,0x82h;0xf8h;0x80h;0x90h.
void delay(long time)
{
while (time--);
}
/******************Chuong trinh con kiem tra phim nhan************/
void phim_an(void)
{
if(contact==0)
{
delay(500); //chong rung phim
while(contact==0);//cho nha phim
delay(500);//chong rung phim
dem++; //tang bien dem
if(dem==10)dem=0;
}
}
/***************hien thi so lan nhan phim********/
void solan_an(void)
{
switch(dem)
{
case 0:{dataP=0xc0;break;}
case 1:{dataP=0xf9;break;}
case 2:{dataP=0xa4;break;}
case 3:{dataP=0xb0;break;}
case 4:{dataP=0x99;break;}
case 5:{dataP=0x92;break;}
case 6:{dataP=0x82;break;}
case 7:{dataP=0xf8;break;}
case 8:{dataP=0x80;break;}
case 9:{dataP=0x90;break;}
};
}
 /***********chuong trinh chinh***********/
void main(void)
{
dataP=0xc0;
while(1)
{
phim_an();
solan_an();
}
}

Chào bạn. Một thời gian dài không viết lách nên hôm nay viết một bài chia sẻ với các bạn về điều khiển led cơ bản các kiểu. Mình viết trên chip 8051 và trên trình biên dịch Keil C.
Code Lập Trình C Led Đơn Cơ Bản Kết Hợp 8051

Code lập trình C cơ bản cho led đơn,một số hiệu ứng như nhấp nháy,sáng dần,sáng đuổi,sáng chẵn lẻ,sáng dồn.các bạn tham khảo code rất dễ hiểu,qua đó các bạn có thể tự viết cho mình 1 chương trình 32 led rồi đó,kết hợp các hiệu ứng và port thì rất hay,bạn dùng phần mềm biên dịch keil C tại đây

[success title="CODE MẪU" icon="check-circle"]
/**** Ket noi VDK voi P2,P3 tich cuc am 0 sang 1 tat******/
/*****Designer By Duycoi***************************/
/*****May chuong trinh nay cac ban co the phat trien them,ket hop chung voi nhau se tao nen code led trai tim bang C do,chuc cac ban thanh cong,moi chi tiet lien he0986xxxx*/
#include //khai bao Chip
#include
unsigned int i,j;

/*****chuong trinh tao thoi gian tre******/
void delay(long time)
{
while(time--);
}


/****Chuong trinh nhap nhay led******/
void nhapnhay(void)
{
            for(i=1;i<8;i++)
            {
            P2=P3=0xff;//cac led tat het
            delay(25000);//delay1s
           P2=P3=0x00;//cac led sang het
            delay(25000);//delay1s
            }
}


/****Chuong trinh sang dan  led******/

void sangdan(void)
 {
            unsigned char M[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,
            0x80,0x00};//ma tuong duong 11111110,11111100,11111000,11110000,
                                                             11100000,11000000,10000000,00000000
            P2=P3=0xff;// tat het cac led
            for(i=0;i<8;i++)
            {
            P2=M[i];//lay gia tri trong mang M
            P3=M[i];
            delay(25000);
            }

}

/****Chuong trinh sang duoi led******/

void sangduoi(void)
 {
            unsigned char M[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
                                               //ma led 11111110,11111101,11111011,11110111,
                                                             11101111,11011111,10111111,01111111
            P2=P3=0xff;
            for(i=0;i<8;i++)
            {
            P2=M[i];
            P3=M[i];
            delay(25000);
            }

}
/****Chuong trinh sang chan le led******/

void chanle(void)
{
            for(i=1;i<8;i++)
            {
            P0=P1=P2=P3=0xAA;//1010
            delay(25000);
            P0=P1=P2=P3=0x55;//0101
            delay(25000);
            }
}
/****Chuong trinh sang don led******/

void sangdon(void)
{
unsigned char M[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,
                  0x7e,0x7d,0x7b,0x77,0x6f,0x5f,0x3f,
                                                  0x3e,0x3d,0x3b,0x37,0x2f,0x1f,
                                                  0x1e,0x1d,0x1b,0x17,0x0f,
                                                  0x0e,0x0d,0x0b,0x07,
                                                  0x06,0x05,0x03,
                                                  0x02,0x01};
   P0=P1=P2=P3=0xff;
 for(i=1;i<8;i++)
 {
  P2=M[i];
  P3=M[i];
  delay(25000);
  }
}


void main(void)//bat dau chuong trinh chinh
{
while(1)
            {
            nhapnhay();//ham ctrinh con nhap nhay
            sangdan();//ham chuong trinh con sang dan
            sangduoi();//ham chuong trinh con sang duoi
            chanle();//ham chuong trinh con sang chan le
            sangdon();//ham chuong trinh con sang don
            }
} [/success]



Video

Code
#include <REGX51.H>
#include<stdio.h>
#include<math.h>
#define bat 1
#define tat 0
#define data P2  
/****************http://www.dientuchiase.com*********************/
sbit led1=P3^0;
sbit led2=P3^1;
sbit led3=P3^2;
sbit led4=P3^3;
/************** ma led****************/
int M[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
int num=0,donvi,chuc,tram,nghin;
/******************delay**************/
void delay(int ms)
 {
  int i,j;
  for(i=0;i<ms;i++)
   for(j=0;j<125;j++)
   {
   }
  }
/***************chuyen ma**************/
void seg7(void)
 {
  nghin=num/1000;
  tram=(num%1000)/100;
  chuc=(num%100)/10;
  donvi=num%10;
  }
/**************hienthi*****************/
void hienthi(void)
 {
  data=M[nghin];
  led1=bat;
  delay(10);
  led1=tat;
  data=M[tram];
  led2=bat;
  delay(10);
  led2=tat;
  data=M[chuc];
  led3=bat;
  delay(10);
  led3=tat;
  data=M[donvi];
  led4=bat;
  delay(10);
  led4=tat;
 }
/**************ham chinh****************/
 void main(void)
 {
 while(1)
  {int k;
  for(k=0;k<20;k++)
  {
   seg7();
   hienthi();
  }
  num=num+1;
  if(num==10000)
  num=0;
  }
 }




Video Demo



Code
$MOD51
E BIT P3.2
RS BIT P3.1
RW BIT P3.0
ORG 00
MAIN:
LCALL SETUP
DONG2:
MOV DPTR,#DIS2
SETB E
CLR RS
CLR RW
MOV P1,#0C0H
CLR E
LCALL WAIT
LCALL XUAT_CHU 
DONG1:
MOV DPTR,#DIS1
DICH:
LCALL DISPLAY1
LCALL DELEY
LCALL DELEY
INC DPTR
MOV A,DPL
CJNE A,#LOW(DIS1+40),DICH
MOV A,DPH
CJNE A,#HIGH(DIS1+40),DICH
SJMP DONG1
SETUP:
SETB E
CLR RS
CLR RW
MOV P1,#38H ;cai dat ban dau
CLR E
LCALL WAIT
SETB E
CLR RS
CLR RW
MOV P1,#0CH 
CLR E
LCALL WAIT
SETB E
CLR RS
CLR RW
MOV P1,#06H
CLR E
LCALL WAIT
RET
DISPLAY1:
SETB E
CLR RS
CLR RW
MOV P1,#80H
CLR E
LCALL WAIT
XUAT_CHU:
MOV R1,#0
LOOP:
MOV A,R1
MOVC A,@A+DPTR
SETB E
SETB RS
CLR RW
MOV P1,A
CLR E
LCALL WAIT
INC R1
CJNE R1,#20,LOOP 
RET
WAIT: ;thoi gian doi 1ms
MOV TMOD,#10H
MOV TH1,#HIGH(-1000)
MOV TL1,#LOW(-1000)
CLR TF1
SETB TR1
JNB TF1,$
CLR TR1
CLR TF1
RET
DELEY: ;thoi gian de lay 1s
MOV R0,#100
CONT:
MOV TMOD,#10H
MOV TH1,#HIGH(-10000)
MOV TL1,#LOW(-10000)
CLR TF1
SETB TR1
JNB TF1,$
CLR TR1
CLR TF1
DJNZ R0,CONT
RET
ORG 100H
DIS1:
DB 'DEMO GIAO TIEP 8051-LCD '
ORG 200H
DIS2:
DB 'BY:CHIPKOOL.TK'
END

Phạm Văn Ngọc Anh- 01644326695


Chip nhận thấy các bạn hay ghé qua blog của chip chủ yếu xem mạch trái tim và cách làm mạch trái tim,nên hôm nay chip chia sẻ tiếp mạch trái tim 32 led lập trình code C,nhưng code này chip mượn tạm 1 người bạn về edit 1 tí,lập trình nó cũng không khó,các bạn đem về sử dụng nhé.lập trình dễ hơn ASM đó,dễ làm hiệu ứng.

Video demo
1 đoạn Code C


#include<reg52.h> 
#include<stdio.h> 
#include<intrins.h>
unsigned i,j,k;

//ham delay tao thoi gian tre 0.5s
void delay(unsigned int ms) 
unsigned int a; 
unsigned char b; 
for(a=0;a<ms;a++) 
for(b=0;b<125;b++) 
}

//hieu ung chop tat toan bo led
void hieu_ung_1(void) 
for(k=0;k<8;k++) 
P0=P1=P2=P3=0xff; 
delay(300); 
P0=P1=P2=P3=0x00; 
delay(300); 

//hieu ung chop 2 nua trai tim  
void hieu_ung_2(void) 
for(i=0;i<6;i++) 
P0=P3=0x00; 
delay(300); 
P0=P3=0xff; 
P1=P2=0x00; 
delay(300); 
P1=P2=0xff; 
//hieu ung led nhay so le 1 
void hieu_ung_3(void) 
for(i=0;i<8;i++) 
P0=P1=P2=P3=0x55; 
delay(300); 
P0=P1=P2=P3=0xaa; 
delay(300); 
//hieu ung led nhay so le 2 
void hieu_ung_4(void) 
 { 
for(i=0;i<8;i++) 
 { 
P0=P1=P2=P3=0xaa; 
delay(300); 
P0=P1=P2=P3=0x55; 
delay(300); 
 } 
 } 
//p0,p1,p2,p3,p4 cung sang thuan
void hieu_ung_5(void) 
 { 
unsigned char x,y; 
x=y=255; 
i=1; 
j=128; 
for(k=0;k<8;k++) 
 { 
x=x-i; 
y=y-j; 
P0=x; 
P1=P2=P3=y; 
i=i*2; 
j=j/2; 
delay(300); 
 } 
 }
main() 
 { 
while(1) ///3-4,5-6,7-8,9-10,18-19,23,24-25 ,28-29, 30 ,37,38 ,39,40,41 ,42,43 ,44
 {
hieu_ung_1();
delay(200);
hieu_ung_2();
delay(200);
hieu_ung_3();
delay(200);
hieu_ung_4();
delay(200);
hieu_ung_5();
delay(200);
}}



Tất cả File Code(full)+ASM + Hex + Nguyên Lý + Video + Mô Phỏng

(Update Link server Mediafire)
Khi nhấn nút "Tải Về Máy", bạn sẽ vào trang quảng cáo, vui lòng chờ 5 giây. Nút hiện ra ở góc phải phía trên, nhấn vào để đến trang download

Author Name

{picture https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjN0PUWA2genMqX3Sm26mBTX_30OJgDenoIi4K6BR-E1vl3nI7LALp0X759QZgzqrMcGBB7jEbdZnubJbp4n2ZZ22KT196CWCg9DLs3MfEivocdmkjZEPEn-A42hyphenhyphen9dmsca0VIDQr_LjqM/s512-Ic42/pham-van-ngoc-anh.jpg}

Tôi là Ngọc Anh. Tôi đến từ Nghệ An. Tôi tốt nghiệp một trường đại học tại Sài Gòn. Hiện tôi đang phát triển công ty riêng. Liên lạc với tôi qua:

{facebook https://www.facebook.com/phamvanngocanh}
{twitter https://twitter.com/nghiphong1993}
{google https://plus.google.com/+dientuchiase/posts}
{youtube https://www.youtube.com/channel/UCeJKhA_goBNFmDw6RKNtmYQ}

Biểu mẫu liên hệ

Tên

Email *

Thông báo *

Được tạo bởi Blogger.