Tải bản đầy đủ (.doc) (33 trang)

Led cube 8x8x8 pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (656.13 KB, 33 trang )

Đồ án môn vi xử lí Khoa công nghệ tự động
Contents
Contents 1
LỜI NÓI ĐẦU 2
CHƯƠNG 1. TỔNG QUAN VỀ LÝ THUYẾT 3
CHƯƠNG 2. THIẾT KẾ PHẦN CỨNG 3
CHƯƠNG 3. THIẾT KẾ PHẦN MỀM 17
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 1
Đồ án môn vi xử lí Khoa công nghệ tự động
LỜI NÓI ĐẦU
Ngày nay khi nhu cầu về thông tin quảng cáo rất lớn, việc áp dụng các
phương tiện kĩ thuật mới vào các lĩnh vực trên là rất cần thiết .
Khi bạn đến các nơi công cộng,khu giải trí bạn dễ dàng bắt gặp những áp
phích quảng cáo điện tử.các hệ thống đèn chiếu LED chạy theo các hướng khác
nhau với nhiều hiệu ứng, hình ảnh và màu sắc rất ấn tượng.
Từ yêu cầu của môn học kĩ thuật vi xử lý trong đo lường điều khiển và
thực tiễn như trên, chúng em quyết định chọn đề tài cho đồ án môn học là: Hiển
thị ma trận LED khối 8x8x8.
Khi đề tài được mở rộng thì sẽ có khả năng ứng dụng thực tiễn rất lớn.
Dưới đây em xin trình bày toàn bộ nội dung đồ án: “Hiển thị ma trận LED
khối 8x8x8”.do cô Ths.LÊ THỊ VÂN ANH giảng viên Trường Đại Học Điện
Lực hướng dẫn.
Nhờ sự chỉ bảo hướng dẫn tận tình của các thầy cô giáo bộ môn đặc biệt là
cô Lê Thị Vân Anh và sự cố gắng tìm hiểu thực tế, tham khảo các tài liệu liên
quan mà nhóm em đã hoàn thành đồ án này.
Em xin chân thành cảm ơn!
Nhóm sinh viên
Vũ Văn Cảnh
Hoàng Đức Nhân
Vũ Thái Long
Đỗ Nhật Anh


Nguyễn Duy
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 2
Đồ án môn vi xử lí Khoa công nghệ tự động
CHƯƠNG 1. TỔNG QUAN VỀ LÝ THUYẾT
Dựa trên nguyên tắc như quét màn hình, ta có thể thực hiện việc hiển thị
ma trận đèn bằng cách quét theo hàng và quét theo cột. Mỗi Led trên ma trận
LED có thể coi như một điểm ảnh. Địa chỉ của mỗi điểm ảnh này được xác định
đồng thời bởi mạch giải mã hàng và giải mã cột, điểm ảnh này sẽ được xác định
trạng thái nhờ dữ liệu đưa ra từ bộ vi điều khiển AVR ATMEGA32.
Như vậy tại mỗi thời điểm chỉ có trạng thái của một điểm ảnh được xác
định. Tuy nhiên khi xác định địa chỉ và trạng thái của điểm ảnh tiếp theo thì các
điểm ảnh còn lại sẽ chuyển về trạng thái tắt (nếu LED đang sáng thì sẽ tắt dần).
Vì thế để hiển thị được toàn bộ hình ảnh của ma trận đèn, ta có thể quét ma trận
nhiều lần với tốc độ quét rất lớn, lớn hơn nhiều lần thời gian kip tắt của đèn. Mắt
người chỉ nhận biết được tối đa 24 hình /s do đó nếu tốc độ quét rất lớn thì sẽ
không nhận ra được sự thay đổi nhỏ của đèn mà sẽ thấy được toàn bộ hình ảnh
cần hiển thị.
Sơ đồ khối:
Data
Khối LED 8x8x8 gồm 8 tầng ma trận LED,mỗi tầng gồm 64 LED được
chia thành 8 hàng ngang và 8 hàng dọc. 64 LED trong 1 tầng được nối chung
chân âm catot và 8 tầng được nối chung anot tạo thành 64 cột.
Trạng thái của một LED sẽ được quyết định bởi tín hiệu điện áp đi vào đồng
thời cả 2 chân. Ví dụ để LED sáng thì điện áp 5V phải đưa vào chân dương và
chân âm phải được nối đất, LED sẽ tắt khi không có điện áp đưa vào chân
dương.
CHƯƠNG 2. THIẾT KẾ PHẦN CỨNG
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 3
Ma trận đèn
LED

Giải mã cột
Giải mã
hàng
Đồ án môn vi xử lí Khoa công nghệ tự động
2.1 THIẾT KẾ MẠCH LỰC
Đồ án gồm hai mạch lực :
- Mạch thứ nhất tạo điện áp +5V cấp nguồn cho VĐK AT Mega32
- Mạch thứ hai tạo điện áp +5V cấp nguồn cho 8 IC 74HC59; IC ULN2803 và
514 LED
Sơ đồ nguyên lý mạch lực :
TT Tên thiết bị Số lượng Các thông số kĩ thuật
1 Biến áp 1 9V - 12V ; 2A
2 Cầu điôt 2 5A
3 IC 7805 2 Tạo điện áp +5V
4 Tụ hóa 2 1000
µ
F
5 Tụ hóa 2 470
µ
F
6 Tụ gốm 104 2 0.1
µ
F
7 Điện trở 2 1k

8 LED 2 3-5V ; 10mA
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 4
Đồ án môn vi xử lí Khoa công nghệ tự động
2.2 THIẾT KẾ MẠCH ĐIỀU KHIỂN
2.2.1 Vi điều khiển ATMEGA32.

 Atmega32 là vi điều khiển thuộc họ AVR của hãng Atmel,có 40 chân trong
đó có 32 chân I/O,có 4 kênh điều xung PWM,sử dụng thạch anh ngoài 12MHz.
 Nhân AVR kết hợp tập lệnh đầy đủ với 32 thanh ghi đa năng. Tất cả các
thanh ghi liên kết trực tiếp với khối xử lý số học và logic (ALU) cho phép 2
thanh ghi độc lập được truy cập trong một lệnh đơn trong 1 chu kỳ đồng hồ.
Kết quả là tốc độ nhanh gấp 10 lần các bộ vi điều khiển CISC thường.
 Dưới đây là hình vẽ sơ đồ chân của VĐK At mega32:
Hình 3.1 :Sơ đồ chân Atmega32
 At mega32 gồm có 4 port :port A,port B,port C và port D.
 Port A gồm 8 chân từ PA0 đến PA7:là cổng vào tương tự cho chuyển đổi
tương tự sang số.Nó cũng là cổng vào/ra hai hướng 8 bít trong trường hợp
không sử sụng làm cổng chuyển đổi tương tự,có điện trở nối lên nguồn dương
bên trong.Port A cung cấp đường địa chỉ dữ liệu vao/ra theo kiểu hợp kênh khi
dùng bộ nhớ bên ngoài.
 Port B gồm 8 chân từ PB0 đến PB7:là cổng vào/ra hai hướng 8 bít,có điện
trở nối lên nguồn dương bên trong.Port B cung cấp các chức năng ứng với các
tính năng đặc biệt của Atmega32.
 Port C gồm các chân từ PC0 đến PC7:là cổng vào/ra hai hướng 8 bit,có điện
trở nối lên nguồn dương bên trong,Port C cung cấp các địa chỉ lối ra khi sử
dụng bộ nhớ bên ngoài và đồng thời cung cấp ứng với các tính năng đặc biệt
của Atmega32.
 Port D gồm các chân từ PD0 đến PD7:là cổng vào/ra hai hướng 8 bít,có
điện trở nối lên nguồn dương bên trong. Port D cung cấp các chức năng ứng
với các tính năng đặc biệt của Atmega32.
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 5
Đồ án môn vi xử lí Khoa công nghệ tự động
 Chân nguồn Vcc (chân số 10 và chân số 30):điện áp nguồn nuôi của
Atmega32 từ 4.5v đến 5.5v.
 Chân Reset (chân số 9):lối vào đặt lại.
 Chân GND (chân số 11 và chân 31):chân nối mas.

 Chân XTAL1,XTAL2 là hai chân nối thạch anh ngoài (chân số 12
và chân số 13).Atmega32 sử dụng thạch anh ngoài là 12MHz.
 Chân ICP(chân số 20):là chân vào cho chức năng bắt tín hiệu cho
bộ định thời/đếm 1.
 Chân OC1B(chân số 18):là chân ra cho chức năng so sánh lối ra bộ
định thời/đếm 1.
 Chân INT1(chân số 17):chân ngõ vào ngắt.
ATmega32 có các đặc tính sau:
• 32Kbytes bộ nhớ ISP Flash với Read-While-Write capacities.
• 2Kbytes RAM.
• 1024 bytes EEPROM.
• 32 đường I/O đa năng.
• 32 thanh ghi đa năng.
• JTAG interface.
• On-chip Debug and Program.
• 3 bộ định thời phức hợp với chế độ so sánh.
• Ngắt ngoài và trong.
• Bộ truyền nhận nối tiếp USART lập trình được.
• Bộ giao tiếp nối tiếp định hướng 2 dây.
• 8 kênh, 10bit ADC với ngưỡng vào lựa chọn khác nhau độ lợi
lập trình được.
• Bộ WatchDog Timer khả trình với dao động nội.
• Port SPI nối tiếp.
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 6
Đồ án môn vi xử lí Khoa công nghệ tự động
Hình 3.2: Sơ đồ cấu trúc bên trong của Atmega32.
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 7
Đồ án môn vi xử lí Khoa công nghệ tự động
 ATmega32 có các chế độ tiết kiệm năng lượng như sau:
 Chế độ nghỉ (Idle) CPU trong khi cho phép bộ truyền tin nối tiếp đồng

bộ USART, giao tiếp 2 dây, chuyển đổi A/D, SRAM, bộ đếm bộ định thời,
cổng SPI và hệ thống các ngắt vẫn hoạt động.
 Chế độ Power-down lưu giữ nội dung của các thanh ghi nhưng làm
đông lạnh bộ tạo dao động, thoát khỏi các chức năng của chip cho đến khi
có ngắt ngoài hoặc là reset phần cứng.
 Chế độ Power-save đồng hồ đồng bộ tiếp tục chạy cho phép chương
trình sử dụng giữ được đồng bộ thời gian nhưng các thiết bị còn lại là ngủ.
 Chế độ ADC Noise Reduction dừng CPU và tất cả các thiết bị còn lại
ngoại trừ đồng hồ đồng bộ và ADC, tối thiểu hoá switching noise trong khi
ADC đang hoạt động.
 Chế độ standby, bộ tạo dao động (thuỷ tinh thể/bộ cộng hưởng) chạy
trong khi các thiết bị còn lại ngủ. Các điều này cho phép bộ vi điều khiển
khởi động rất nhanh trong chế độ tiêu thụ công suất thấp.
 Thiết bị được sản xuất sử dụng công nghệ bộ nhớ cố định mật độ cao của
Atmel. Bộ nhớ On-chip ISP Flash cho phép lập trình lại vào hệ thống qua
giao diện SPI bởi bộ lập trình bộ nhớ cố định truyền thống hoặc bởi chương
trình On-chip Boot chạy trên nhân AVR. Chương trình boot có thể sử dụng
bất cứ giao điện nào để download chương trình ứng dụng trong bộ nhớ Flash
ứng dụng. Phần mềm trong vùng Boot Flash sẽ tiếp tục chạy trong khi vùng
Application Flash được cập nhật, cung cấp thao tác Read-While-Write thực
sự. Bằng việc kết hợp 1 bộ 8-bit RISC CPU với In-System Self-
Programmable Flash trong chỉ nguyên vẹn 1 chip ATmega32 là một bộ vi
điều khiển mạnh có thể cung cấp giải pháp có tính linh động cao, giá thành rẻ
cho nhiều ứng dụng điều khiển nhúng.
2.2.2 ULN2803
ULN2803 là IC đệm đảo có 16 chân trong đó có 8 ngõ vào và 8 ngõ ra,
dưới đây là hình dạng và cấu tạo
bên trong của 2803:











Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 8
Đồ án môn vi xử lí Khoa công nghệ tự động







Bộ đệm đảo dùng IC ULN2803 nhằm đảo bít nếu ngõ vào ở mức cao qua
2803 ra sẽ là mức thấp. ULN2803 chịu đựng mức điện áp từ 6V-15V.
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 9
Đồ án môn vi xử lí Khoa công nghệ tự động
2.2.3 IC 74HC595
Nguyên tắt hoạt động: khi cho 1 bit vào SERIAL DATA INPUT và tác
động vào chân SHIFT CLOCK, bit dữ liệu (1) sẽ được đặt sẳn ở ngỏ ra QA của
74595, tiếp tục đưa vào bit (2) và tác động vào SHIFT CLOCK thì bit dữ liệu
(1) sẽ được đặt sẳn ở ngỏ ra QB, bit dữ liệu (2) sẽ được đặt sẳn ở ngỏ ra
QA, tương tự đến bit cuối cùng. Chú y dữ liệu chỉ được chuẩn bị sẳn ở các ngỏ
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 10
Đồ án môn vi xử lí Khoa công nghệ tự động
ra và chỉ được xuất ra khi ta tác động vào chân LATCH CLOCK. Có thể xuất dữ

liệu bất cứ lúc nào không phải cần chuẩn bị đến bit cuối cùng.
2.2.4 Mạch nguyên lý
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 11
Đồ án môn vi xử lí Khoa công nghệ tự động
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 12
Đồ án môn vi xử lí Khoa công nghệ tự động
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 13
Đồ án môn vi xử lí Khoa công nghệ tự động
TT Tên thiết bị Số lượng
1 ATMega32 1
2 IC ULN2803 1
3 IC 74HC595 8
4 Header 8 9
5 Header 5x2 1
6 Bottom 3
7 Điện trở 1
8 Tụ hóa 10
µ
F 1
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 14
Đồ án môn vi xử lí Khoa công nghệ tự động
2.3 THIẾT KẾ MẠCH IN
2.3.1. Bố trí linh kiện
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 15
Đồ án môn vi xử lí Khoa công nghệ tự động
2.3.2 Mạch in
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 16
Đồ án môn vi xử lí Khoa công nghệ tự động
CHƯƠNG 3. THIẾT KẾ PHẦN MỀM
Sử dụng trình biên dich Codevision để soạn thảo chương trình

#include <mega32.h>
#include <delay.h>
#define DATA PORTC.0
#define chot PORTC.1
#define xung PORTC.2
#define mat PORTA
#define L1 PORTA.0
#define L2 PORTA.1
#define L3 PORTA.2
#define L4 PORTA.3
#define L5 PORTA.4
#define L6 PORTA.5
#define L7 PORTA.6
#define L8 PORTA.7
unsigned char temp1,temp2,temp3,temp4,temp5,temp6,temp7,temp8,;
unsigned int i,j;//k,c;

void hienthi(unsigned char x)
{
unsigned char i,temp;
for(i=0;i<8;i++)
{
temp=x;
temp=temp&0x80;//lay ra bit dau tien (bit 7)
if(temp==0x80)//so sanh bit
DATA=1; //bang 1 thi xuat vao chip =1
else
DATA=0; //nguoc lai bang 0
x*=2; //dich bit lay bit trong so thap
xung=0; //tao xung tren chan 11

xung=1; //1 xung dua vào 1 bít
}
}
void xuat()
{
hienthi(temp1);
hienthi(temp2);
hienthi(temp3);
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 17
Đồ án môn vi xử lí Khoa công nghệ tự động
hienthi(temp4);
hienthi(temp5);
hienthi(temp6);
hienthi(temp7);
hienthi(temp8);
chot=0; //xuat du lieu ra output
chot=1;
}
void danglen(unsigned char ms,unsigned int m)
{
for(i=0;i<m;i++)
{
temp1=0xff;temp2=0xff;temp3=0xff;temp4=0xff;temp5=0xff;temp6=0xff;temp
7=0xff;temp8=0xff;xuat();
L1=1;delay_ms(ms);L1=0;
L2=1;delay_ms(ms);L2=0;
L3=1;delay_ms(ms);L3=0;
L4=1;delay_ms(ms);L4=0;
L5=1;delay_ms(ms);L5=0;
L6=1;delay_ms(ms);L6=0;

L7=1;delay_ms(ms);L7=0;
L8=1;delay_ms(ms);L8=0;
L7=1;delay_ms(ms);L7=0;
L6=1;delay_ms(ms);L6=0;
L5=1;delay_ms(ms);L5=0;
L4=1;delay_ms(ms);L4=0;
L3=1;delay_ms(ms);L3=0;
L2=1;delay_ms(ms);L2=0;
}
}
////////////////////////////////////////////////////
void pittong2(unsigned char ms,unsigned int m)
{
for(i=0;i<m;i++)
{
temp1=0x01;temp2=0x01;temp3=0x01;temp4=0x01,temp5=0x01;temp6=0x01;t
emp7=0x01;temp8=0x01;xuat();mat=0xff;delay_ms(ms);
temp1=0x02;temp2=0x02;temp3=0x02;temp4=0x02;temp5=0x02;temp6=0x02;t
emp7=0x02;temp8=0x02;xuat();delay_ms(ms);
temp1=0x04;temp2=0x04;temp3=0x04;temp4=0x04;temp5=0x04;temp6=0x04;t
emp7=0x04;temp8=0x04;xuat();delay_ms(ms);
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 18
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0x08;temp2=0x08;temp3=0x08;temp4=0x08;temp5=0x08;temp6=0x08;t
emp7=0x08;temp8=0x08;xuat();delay_ms(ms);
temp1=0x10;temp2=0x10;temp3=0x10;temp4=0x10;temp5=0x10;temp6=0x10;t
emp7=0x10;temp8=0x10;xuat();delay_ms(ms);
temp1=0x20;temp2=0x20;temp3=0x20;temp4=0x20;temp5=0x20;temp6=0x20;t
emp7=0x20;temp8=0x20;xuat();delay_ms(ms);
temp1=0x40;temp2=0x40;temp3=0x40;temp4=0x40;temp5=0x40;temp6=0x40;t

emp7=0x40;temp8=0x40;xuat();delay_ms(ms);
temp1=0x80;temp2=0x80;temp3=0x80;temp4=0x80;temp5=0x80;temp6=0x80;t
emp7=0x80;temp8=0x80;xuat();delay_ms(ms);
temp1=0x40;temp2=0x40;temp3=0x40;temp4=0x40;temp5=0x40;temp6=0x40;t
emp7=0x40;temp8=0x40;xuat();delay_ms(ms);
temp1=0x20;temp2=0x20;temp3=0x20;temp4=0x20;temp5=0x20;temp6=0x20;t
emp7=0x20;temp8=0x20;xuat();delay_ms(ms);
temp1=0x10;temp2=0x10;temp3=0x10;temp4=0x10;temp5=0x10;temp6=0x10;t
emp7=0x10;temp8=0x10;xuat();delay_ms(ms);
temp1=0x08;temp2=0x08;temp3=0x08;temp4=0x08;temp5=0x08;temp6=0x08;t
emp7=0x08;temp8=0x08;xuat();delay_ms(ms);
temp1=0x04;temp2=0x04;temp3=0x04;temp4=0x04;temp5=0x04;temp6=0x04;t
emp7=0x04;temp8=0x04;xuat();delay_ms(ms);
temp1=0x02;temp2=0x02;temp3=0x02;temp4=0x02;temp5=0x02;temp6=0x02;t
emp7=0x02;temp8=0x02;xuat();delay_ms(ms);mat=0x00;
}}
////////////////////////////////////////////////////
void pittong(unsigned char ms,unsigned int m)
{
for(i=0;i<m;i++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0xff;xuat();mat=0xff;delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0xff;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0xff;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0xff;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0xff,temp5=0x00;temp6=0x00;t

emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0xff;temp4=0x00,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0xff;temp3=0x00;temp4=0x00,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 19
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0xff;temp2=0x00;temp3=0x00;temp4=0x00,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0xff;temp3=0x00;temp4=0x00,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0xff;temp4=0x00,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0xff,temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0xff;temp6=0x00;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0xff;t
emp7=0x00;temp8=0x00;xuat();delay_ms(ms);
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0xff;temp8=0x00;xuat();delay_ms(ms);mat=0x00;
}
}
void khung1(unsigned char ms,unsigned int m)
{
PORTA=0;
for(i=0;i<m;i++)
{
for(j=0;j<(ms+4);j++)
{

temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x01;xuat();L1=1;delay_ms(1);L1=0;
}
for(j=0;j<(ms+3);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x03;temp8=0x03;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x03;temp8=0x03;xuat();L2=1;delay_ms(1);L2=0;
}
for(j=0;j<(ms+2);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x07;t
emp7=0x05;temp8=0x07;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x05;t
emp7=0x00;temp8=0x05;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x07;t
emp7=0x05;temp8=0x07;xuat();L3=1;delay_ms(1);L3=0;
}
for(j=0;j<(ms+2);j++)
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 20
Đồ án môn vi xử lí Khoa công nghệ tự động
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x0f;temp6=0x09;t
emp7=0x09;temp8=0x0f;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x09;temp6=0x00;t
emp7=0x00;temp8=0x09;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x09;temp6=0x00;t
emp7=0x00;temp8=0x09;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x0f;temp6=0x09;t

emp7=0x09;temp8=0x0f;xuat();L4=1;delay_ms(1);L4=0;
}
for(j=0;j<(ms+1);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x1f;temp5=0x11;temp6=0x11;t
emp7=0x11;temp8=0x1f;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x11;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x11;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x11;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x11;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x11;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x11;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x1f;temp5=0x11;temp6=0x11;t
emp7=0x11;temp8=0x1f;xuat();L5=1;delay_ms(1);L5=0;
}
for(j=0;j<(ms+1);j++)
{
temp1=0x00;temp2=0x00;temp3=0x3f;temp4=0x21;temp5=0x21;temp6=0x21;t
emp7=0x21;temp8=0x3f;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x21;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x21;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x21;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x21;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x00;temp3=0x21;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x21;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x00;temp2=0x00;temp3=0x21;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x21;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x00;temp2=0x00;temp3=0x3f;temp4=0x21;temp5=0x21;temp6=0x21;t
emp7=0x21;temp8=0x3f;xuat();L6=1;delay_ms(1);L6=0;
}

for(j=0;j<(ms);j++)
{
temp1=0x00;temp2=0x7f;temp3=0x41;temp4=0x41;temp5=0x41;temp6=0x41;t
emp7=0x41;temp8=0x7f;xuat();L1=1;delay_ms(1);L1=0;
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 21
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0x00;temp2=0x41;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x41;xuat();L2=1;delay_ms(8);L2=0;
temp1=0x00;temp2=0x41;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x41;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x41;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x41;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x00;temp2=0x41;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x41;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x00;temp2=0x41;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x41;xuat();L6=1;delay_ms(1);L6=0;
temp1=0x00;temp2=0x7f;temp3=0x41;temp4=0x41;temp5=0x41;temp6=0x41;t
emp7=0x41;temp8=0x7f;xuat();L7=1;delay_ms(1);L7=0;
}
for(j=0;j<(ms);j++)
{
temp1=0xff;temp2=0x81;temp3=0x81;temp4=0x81;temp5=0x81;temp6=0x81;t
emp7=0x81;temp8=0xff;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x81;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x81;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x81;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t

emp7=0x00;temp8=0x81;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x81;xuat();L6=1;delay_ms(1);L6=0;
temp1=0x81;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x81;xuat();L7=1;delay_ms(1);L7=0;
temp1=0xff;temp2=0x81;temp3=0x81;temp4=0x81;temp5=0x81;temp6=0x81;t
emp7=0x81;temp8=0xff;xuat();L8=1;delay_ms(1);L8=0;
}
for(j=0;j<(ms);j++)
{
temp1=0x00;temp2=0xfe;temp3=0x82;temp4=0x82;temp5=0x82;temp6=0x82;t
emp7=0x82;temp8=0xfe;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x82;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x82;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x82;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x82;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x82;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x82;xuat();L4=1;delay_ms(1);L4=0;
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 22
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0x00;temp2=0x82;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x82;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x00;temp2=0x82;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x82;xuat();L6=1;delay_ms(1);L6=0;
temp1=0x00;temp2=0xfe;temp3=0x82;temp4=0x82;temp5=0x82;temp6=0x82;t
emp7=0x82;temp8=0xfe;xuat();L7=1;delay_ms(1);L7=0;
}
for(j=0;j<(ms+1);j++)
{
temp1=0x00;temp2=0x00;temp3=0xfc;temp4=0x84;temp5=0x84;temp6=0x84;t

emp7=0x84;temp8=0xfc;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x84;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x84;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x84;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x84;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x00;temp3=0x84;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x84;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x00;temp2=0x00;temp3=0x84;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x84;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x00;temp2=0x00;temp3=0xfc;temp4=0x84;temp5=0x84;temp6=0x84;t
emp7=0x84;temp8=0xfc;xuat();L6=1;delay_ms(1);L6=0;
}
for(j=0;j<(ms+1);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0xf8;temp5=0x88;temp6=0x88;t
emp7=0x88;temp8=0xf8;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x88;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x88;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x88;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x88;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x88;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x88;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0xf8;temp5=0x88;temp6=0x88;t
emp7=0x88;temp8=0xf8;xuat();L5=1;delay_ms(1);L5=0;
}
for(j=0;j<(ms+2);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0xf0;temp6=0x90;t
emp7=0x90;temp8=0xf0;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x90;temp6=0x00;t

emp7=0x00;temp8=0x90;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x90;temp6=0x00;t
emp7=0x00;temp8=0x90;xuat();L3=1;delay_ms(1);L3=0;
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 23
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0xf0;temp6=0x90;t
emp7=0x90;temp8=0xf0;xuat();L4=1;delay_ms(1);L4=0;
}
for(j=0;j<(ms+2);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0xe0;t
emp7=0xa0;temp8=0xe0;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0xa0;t
emp7=0x00;temp8=0xa0;xuat();L2=1;delay_ms(1);L2=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0xe0;t
emp7=0xa0;temp8=0xe0;xuat();L3=1;delay_ms(1);L3=0;
}
for(j=0;j<(ms+3);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0xc0;temp8=0xc0;xuat();L1=1;delay_ms(1);L1=0;
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0xc0;temp8=0xc0;xuat();L2=1;delay_ms(1);L2=0;
}
for(j=0;j<(ms+4);j++)
{
temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x00;t
emp7=0x00;temp8=0x80;xuat();L1=1;delay_ms(1);L1=0;
}
}

}
void luonsong(unsigned char ms,unsigned int m)
{
for(i=0;i<m;i++)
{
//FAMER 1
for(j=0;j<(ms+1);j++)
{
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L1=1;delay(1);L1=0;
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L3=1;delay(1);L3=0;
temp1=0x80;temp2=0x80;temp3=0x80;temp4=0x80;temp5=0x80;temp6=0x80;t
emp7=0x80;temp8=0x80;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x41;temp2=0x41;temp3=0x41;temp4=0x41;temp5=0x41;temp6=0x41;t
emp7=0x41;temp8=0x41;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x22;temp2=0x22;temp3=0x22;temp4=0x22;temp5=0x22;temp6=0x22;t
emp7=0x22;temp8=0x22;xuat();L6=1;delay_ms(1);L6=0;
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 24
Đồ án môn vi xử lí Khoa công nghệ tự động
temp1=0x14;temp2=0x14;temp3=0x14;temp4=0x14;temp5=0x14;temp6=0x14;t
emp7=0x14;temp8=0x14;xuat();L7=1;delay_ms(1);L7=0;
temp1=0x08;temp2=0x08;temp3=0x08;temp4=0x08;temp5=0x08;temp6=0x08;t
emp7=0x08;temp8=0x08;xuat();L8=1;delay_ms(1);L8=0;
}
//FAMER 2
for(j=0;j<(ms+1);j++)
{
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L1=1;delay(1);L1=0;

//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L2=1;delay(1);L2=0;
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L3=1;delay(1);L3=0;
temp1=0x01;temp2=0x01;temp3=0x01;temp4=0x01;temp5=0x01;temp6=0x01;t
emp7=0x01;temp8=0x01;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x82;temp2=0x82;temp3=0x82;temp4=0x82;temp5=0x82;temp6=0x82;t
emp7=0x82;temp8=0x82;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x44;temp2=0x44;temp3=0x44;temp4=0x44;temp5=0x44;temp6=0x44;t
emp7=0x44;temp8=0x44;xuat();L6=1;delay_ms(1);L6=0;
temp1=0x28;temp2=0x28;temp3=0x28;temp4=0x28;temp5=0x28;temp6=0x28;t
emp7=0x28;temp8=0x28;xuat();L7=1;delay_ms(1);L7=0;
temp1=0x10;temp2=0x10;temp3=0x10;temp4=0x10;temp5=0x10;temp6=0x10;t
emp7=0x10;temp8=0x10;xuat();L8=1;delay_ms(1);L8=0;
}
//FAMER 3
for(j=0;j<(ms+1);j++)
{
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L1=1;delay(1);L1=0;
//temp1=0x00;temp2=0x00;temp3=0x00;temp4=0x00;temp5=0x00;temp6=0x0
0;temp7=0x00;temp8=0x00;xuat();L2=1;delay(1);L2=0;
temp1=0x01;temp2=0x01;temp3=0x01;temp4=0x01;temp5=0x01;temp6=0x01;t
emp7=0x01;temp8=0x01;xuat();L3=1;delay_ms(1);L3=0;
temp1=0x02;temp2=0x02;temp3=0x02;temp4=0x02;temp5=0x02;temp6=0x02;t
emp7=0x02;temp8=0x02;xuat();L4=1;delay_ms(1);L4=0;
temp1=0x04;temp2=0x04;temp3=0x04;temp4=0x04;temp5=0x04;temp6=0x04;t
emp7=0x04;temp8=0x04;xuat();L5=1;delay_ms(1);L5=0;
temp1=0x88;temp2=0x88;temp3=0x88;temp4=0x88;temp5=0x88;temp6=0x88;t
emp7=0x88;temp8=0x88;xuat();L6=1;delay_ms(1);L6=0;

temp1=0x50;temp2=0x50;temp3=0x50;temp4=0x50;temp5=0x50;temp6=0x50;t
emp7=0x50;temp8=0x50;xuat();L7=1;delay_ms(1);L7=0;
Sv: Vũ Văn Cảnh-Hoàng Đức Nhân-Vũ Thái Long-Đỗ Nhật Anh-Nguyễn Duy 25

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×