?? sh406.c
字號:
#include <absacc.h>
#include <stdio.h>
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
uchar data BUFFER[1]={0}; /*定時器計數變量*/
sbit PR=P2^2; // 定義語音芯片的控制端口,下同
sbit EOM=P2^2;
sbit PD=P2^4;
sbit CE=P2^5;
void delays(void) // 延時程序
{
uchar i;
for(i=300;i>0;i--);
}
void play( void)
{
PD=1; // 打開芯片電源開關
CE=0; // 選中該芯片
PR=1; // 開始播放
while(!EOM); // 等待播放內容結束信號
delays( ); // 延時
PD=0;
CE=0;
PR=0;
}
/* 定時計數器0的中斷服務子程序 */
void timer0(void) interrupt 1 using 1
{
TH0=-5000/256; // 定時器T0的高四位賦值
TL0=-5000%256;
BUFFER[0]=BUFFER[0]+1; // 定時器T0的低四位賦值
if (BUFFER[0]==1000) // 百分秒進位
{
play( ); // 調用播放程序
}
}
main()
{
EA=1; IT1=1; ET0=1;
TMOD=0x01; /* T0方式1計時1秒 */
TH0=-5000/256;
TL0=-5000%256;
TR0=1; /* 開中斷,啟動定時器 */
for (;;);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -