HVCT_Khoa Điện - Điện tử
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.
Keywords

Latest topics
» Trang bị điện
Ứng dụng timer của 89xxx EmptyWed Sep 24, 2014 8:46 am by vinagreensun

» Chia sẻ source code mạch đếm 0-99 sử dụng 8051 và LED hồng ngoại
Ứng dụng timer của 89xxx EmptyMon Mar 24, 2014 2:07 pm by xuantruong1911

» mình đang làm đồ án 1 cần làm mạch khó số điện tử dùng ic số và phải có thể thay đổi password
Ứng dụng timer của 89xxx EmptyFri Mar 21, 2014 8:01 pm by saobang

» Chế tạo máy dò kim loại help ?
Ứng dụng timer của 89xxx EmptyFri Nov 29, 2013 11:17 am by Thanhtra conan

» mấy bro vào giup em với
Ứng dụng timer của 89xxx EmptyWed Nov 27, 2013 9:01 pm by luongthanhvp

» giáo trình plc mitsubishi căn bản và nâng cao
Ứng dụng timer của 89xxx EmptyTue Apr 30, 2013 5:55 pm by Admin

» hoc led chay chu
Ứng dụng timer của 89xxx EmptyThu Apr 18, 2013 8:05 pm by vuphong

» QUÉT PHÍM MA TRẬN 4X4 HIỂN THỊ RA LED 7 ĐOẠN
Ứng dụng timer của 89xxx EmptyThu Apr 18, 2013 7:59 pm by thanhxuan

» cách vẽ mạch in bằng ocard 1 cách đơn giản?
Ứng dụng timer của 89xxx EmptyThu Apr 18, 2013 1:09 pm by Admin

May 2024
MonTueWedThuFriSatSun
  12345
6789101112
13141516171819
20212223242526
2728293031  

Calendar Calendar


Ứng dụng timer của 89xxx

2 posters

Go down

Ứng dụng timer của 89xxx Empty Ứng dụng timer của 89xxx

Bài gửi  thay Khai Tue Jan 15, 2013 9:36 pm

/*
Lời thơ: Đỗ Trung Quân
Nhạc: Giáp Văn Thạch
Quê hương là chùm khế ngọt
Cho con trèo hái mỗi ngày
Quê hương là đường đi học
Con về rợp bướm vàng bay
Quê hương là con diều biếc
Tuổi thơ con thả trên đồng
Quê hương là con đò nhỏ
Êm đềm khua nước ven sông

ĐK:
Quê hương là cầu tre nhỏ
Mẹ về nón lá ngiêng che
Quê hương là đêm trăng tỏ
Hoa cau rụng trắng ngoài thềm

Quê hương mỗi người chỉ một
Như là chỉ một Mẹ thôi
Quê hương nếu ai không nhớ
Sẽ không lớn nổi thành người

*/
/////////////////////////////////////////////////////////
///Dùng VDK để mô phỏng
//==============================
#include <REGX51.H>
//que huong
//nhac : giap van thach
// tho: Do trung Quan
sbit phat = P2^7;

unsigned int code key[]={0,3821,3404,3032,2862,2550,2271,2023,
1910,1701,1516,1431,1274,1135,1011,
955,850,757,715,637,567,505,
477,424,378,357,318,283,252} ;
unsigned char code
note_truong[][2]={{13,4},{0,1},{13,8},{10,2},{0,1},{10,2},{13,2},{15,2},{9,4},{10,4},{13,4},{0,6},
{12,4},{0,1},{12,8},{10,4},{13,2},{14,2},{10,4},{0,1},{10,8},{0,8},
// que huong la duong di hoc
{10,4},{11,4},{0,1},{11,8},{9,4},{0,1},{9,2},{0,1},{9,2},{10,2},{9,2},{6,8},{0,8},
{10,2},{9,2},{7,8},{9,4},{10,4},{11,4},{9,4},{10,8},{0,8},
{13,4},{0,1},{13,8},{10,4},{13,4},{10,2},{13,2},{15,8},{0,4},
{13,2},{15,2},{16,8},{14,4},{0,1},{14,4},{16,4},{14,2},{13,2},{12,2},{0,1},{12,10},{0,8}
//que huong la con do nho
,{13,4},{0,1},{13,8},{11,4},{13,4},{11,4},{0,1},{11,4},{13,4},{15,4},{0,8},
{10,2},{9,2},{0,1},{9,8},{12,4},{14,4},{15,4},{13,4},{0,1},{13,12},{0,8},
// que huong la cau tr nho
{15,4},{0,1},{15,8},{13,4},{0,1},{13,4},{0,1},{13,4},{10,4},{13,4},{15,4},{0,8},
{13,4},{0,1},{13,8},{17,4},{0,1},{17,6},{16,2},{0,1},{16,8},{0,8},
{14,4},{0,1},{14,8},{12,4},{13,4},{14,4},{10,4},{13,4},{14,4},{0,8},
// hoa cau rung trang ngoai them
{14,4},{0,1},{14,8},{10,8},{15,2},{13,2},{0,1},{13,8},{0,8},
{15,4},{0,1},{15,8},{13,2},{15,2},{13,4},{15,4},{10,8},{0,8},
{15,4},{13,8},{0,1},{13,2},{15,2},{10,4},{13,2},{14,2},{16,8},{0,10},
// que huong neu ai ko nho // se ko lon noi thanh nguoi
{14,2},{13,2},{14,8},{13,4},{12,4},{13,4},{9,2},{10,2},{13,2},{14,8},{0,16},
{14,4},{16,4},{14,8},{16,4},{16,2},{17,2},{13,4},{0,1},{13,8},{0,16},
// diep khuc
{14,2},{13,2},{14,8},{13,4},{12,4},{13,4},{9,2},{10,2},{13,2},{14,8},{0,16},
{14,4},{16,4},{14,8},{16,4},{16,2},{17,2},{13,4},{0,1},{13,8},{0,24}
, {0,0}} ;
//not den = 8 , not moc don = 4

unsigned char truong_do=1,note ;
unsigned int w,cao_do ;
void delay(truong_do);
void silent(truong_do);
void sing(void);
//void singsing(cao_do);
void main(void){
IE=0x82; // ngat timer 0 mod 16 bit
TMOD=0x01 ;
w=0 ;
TH0= ~ (1000/256);
TL0= - (1000%256);
TR0= 1;
for(w=0;truong_do!=0;w++) {
note = note_truong[w][0];
truong_do = note_truong[w][1];
cao_do = key[note] ;
TR0 = 1; // CHO BO DINH THOI CHAY
if (cao_do==0) {
TR0=0 ;
silent(truong_do) ;
}
else delay(truong_do) ;
w=w++;
}
phat=1;
}

void delay(truong_do){
while(truong_do--){
unsigned int tempo= 12000 ; //toc do choi cua ban nhac
while(tempo--); // vong lap nay se mat thoi gian la temp0 x 8 (us)

}
}
void silent(truong_do){
while(truong_do--){
unsigned int temp1= 4000 ; //toc do choi cua ban nhac
while(temp1--); // vong lap nay se mat thoi gian la temp0 x 8 (us)

}
}
void sing(void) interrupt 1 using 1 {
TF0=0; // XOA CO NGAT
TR0=0 ;
phat=(~phat) ; //dao bit
TH0= ~ (cao_do/256);
TL0= - (cao_do%256);
TR0= 1;

}
////////////////////////////////////////////////////////////////
//Để hiểu về nốt nhạc, bạn phải hiểu về một chút về cao độ và trường độ. Đọc link này nhé
[You must be registered and logged in to see this link.]
//////////////////////////////////////////////////
//Một vài thứ học được ở bài này:
- Khởi tao bit (bit và sbit khác nhau chỗ nào?)
- Khởi tạo mảng (cách khởi tạo mảng 1 chiều và 2 chiều)
- Sử dụng timer (Nếu là 89xxx thì: B1- Chọn chế độ, B2- Cài giá trị, B3- Cho timer chạy, B4-Kiểm tra cờ tràn (phần mềm hoặc tự kiểm tra nếu dùng ngắt-interrupt), B5- Xóa cờ tràn (phần mềm hoặc tự xóa nếu dùng ngắt-interrupt, còn Timer2 phải có lệnh xóa)
- Biết các lệnh if else; vòng lặp for
- ...
- Biết về nốt nhạc cao độ và trường độ
//////////////////////////////////////////
- Phần cứng này dể thôi, tự xem cấu hình trong bài mà thiết kế nhé

thay Khai

Tổng số bài gửi : 23
Join date : 14/11/2012

Về Đầu Trang Go down

Ứng dụng timer của 89xxx Empty Re: Ứng dụng timer của 89xxx

Bài gửi  Admin Mon Mar 18, 2013 6:27 pm

thầy không cho thiết kế thì cũng phải cho đoạn video cho các em thích thú thiết kế chứ. Đọc chữ không chưa khích thích hoc trò thầy ơi

Admin
Admin

Tổng số bài gửi : 79
Join date : 03/11/2012
Age : 42

https://diendientuhvct.forumvi.com

Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết