鬧鍾編程
下面的程序就是用AT89C2051做的數字式時鍾,數碼管顯示,具有鬧鍾功能,整點報時,幾點蜂鳴器響幾下,晚上九點到第二天早上六點整點不報時。給你參考一下吧。
#include<AT89X051.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit sda=P3^1;
sbit scl=P3^0;
sbit key1=P1^7;
sbit key2=P1^6;
sbit key3=P1^5;
sbit kz=P3^5;
sbit bs=P3^4;
char shi=12,fen=12,ke1,mm,mi,nh,nf,mn,mms,baos,a;
bit ms,nt,b;
uchar code SEG8[]={ 0x50,0x5F,0x94,0x15,0x1B,
0x31,0x30,0x57,0x10,0x11,
0x40,0x4F,0x84,0x05,0x0B,
0x21,0x20,0x47,0x00,0x01,
0x21,0xa2,0x52,0xff};
//0-9,0.-9.;s.,f.,n 暗
void delay1ms(uchar ms)
{
uchar i;
while(ms--)
{
for(i = 0; i< 250; i++)
{
_nop_();
_nop_();
_nop_();
_nop_();
}
}
}
void display(char numh,char numf)
{
uchar qian,,sh,ge;
if(ke1==1)
qian=20;
else if(ke1==2)
qian=21;
else if((ke1==3)||(ke1==4))
qian=22;
else if(ke1==0)
qian=numh/10;
if((ke1==1)||(ke1==2))
=23;
else if(ke1==3)
=20;
else if(ke1==4)
=21;
else if(ke1==0)
{
=numh%10;
if(ms)
=+10;
}
if((ke1==1)||(ke1==3))
{sh=numh/10;ge=numh%10;}
else if((ke1==2)||(ke1==4)||(ke1==0))
{sh=numf/10;ge=numf%10;}
P1=SEG8[qian];
P3_3=0;delay1ms(2);P3_3=1;
P1=SEG8[];
P3_7=0;delay1ms(2);P3_7=1;
P1=SEG8[sh];
P3_2=0;delay1ms(2);P3_2=1;
P1=SEG8[ge];
P3_0=0;delay1ms(2);P3_0=1;
}
///////////x24c02//////////////////
void delay24()
{ ;; }
void init24c02() //初始化
{
sda=1;
delay24();
scl=1;
delay24();
}
void start2() //開始信號
{
sda=1;
delay24();
scl=1;
delay24();
sda=0;
delay24();
}
void stop() //停止
{
sda=0;
delay24();
scl=1;
delay24();
sda=1;
delay24();
}
void respons() //應答
{
uchar i;
scl=1;
delay24();
while((sda==1)&&(i<250))i++;
scl=0;
delay24();
}
void write_byte(char date) // 寫數據子函數
{
uchar i,temp;
temp=date;
for(i=0;i<8;i++)
{
temp=temp<<1;
scl=0;
delay24();
sda=CY;
delay24();
scl=1;
delay24();
}
scl=0;
delay24();
sda=1;
delay24();
}
uchar read_byte() // 讀數據子函數
{
uchar i,k;
scl=0;
delay24();
sda=1;
delay24();
for(i=0;i<8;i++)
{
scl=1;
delay24();
k=(k<<1)|sda;
scl=0;
delay24();
}
return k;
}
///////寫數據函數///////////////////
void write_add(uchar address,char date)
{
start2();
write_byte(0xa0);
respons();
write_byte(address);
respons();
write_byte(date);
respons();
stop();
}
char read_add(uchar address) //讀數據函數
{
uchar date;
start2();
write_byte(0xa0);
respons();
write_byte(address);
respons();
start2();
write_byte(0xa1);
respons();
date=read_byte();
stop();
return date;
}
void keyf(char *con,char up,char don)
{
uint i;
for(i=0;i<800;i++)
{
if((ke1==1)||(ke1==2))
display(shi,fen);
else if((ke1==3)||(ke1==4))
display(nh,nf);
P1=0xff;
if(key1==0)
{
delay1ms(10);
if(key1==0)
{
ke1++;
if(ke1>=5)
ke1=0;
while(!key1);
break;
}
}
if(key2==0)
{
delay1ms(10);
if(key2==0)
{
i=0;
*con+=1;
if(*con>up)
*con=0;
while(!key2);
}
}
if(key3==0)
{
delay1ms(10);
if(key3==0)
{
i=0;
*con-=1;
if(*con<don)
*con=up;
while(!key3);
}
}
}
}
void key()
{
P1=0xff;
if(key1==0)
{
EA=0;
delay1ms(20);
if(key1==0)
{
ke1++;
if(ke1>=5)
ke1=0;
while(!key1);
}
if(ke1==1)
{
keyf(&shi,23,0);
}
if(ke1==2)
{
keyf(&fen,59,0);
}
if(ke1==3)
{
keyf(&nh,23,0);
}
if(ke1==4)
{
keyf(&nf,59,0);
}
P1=0xff;P3=0xff;
write_add(0x01,nh);
delay1ms(5);
write_add(0x03,nf);
ke1=0;
EA=1;
}
}
void Timer0Init(void)
{
TMOD |= 0x01;
TL0 = 0xB0;
TH0 = 0x3C;
TF0 = 0;
TR0 = 1;
EA=1;
ET0=1;
}
void main()
{
P1=0xff;
P3=0xff;
init24c02();
nh=read_add(0x01);
delay1ms(50);
nf=read_add(0x03);
delay1ms(50);
Timer0Init();
while(1)
{
key();
display(shi,fen);
}
}
void tim0 ()interrupt 1
{
TH0=0X3C;
TL0=0XB0;
if(++mms>=10)
{
mms=0;
ms=!ms;
}
if(++mm>=20)
{
mm=0;
if(++mi>=60)
{
mi=0;
if(++fen>=60)
{
fen=0;
if(++shi>=24)
shi=0;
}
}
}
if(fen==0)
{
if((shi>=7)&&(shi<=20))
{
if((baos==0)&&(b==0))
{
baos=shi;
baos=baos*2;
b=1;
}
if(++a==10)
{
a=0;
if(--baos!=0)
{
bs=!bs;
}
else
{
bs=1;
}
}
}
}
else
b=0;
if(nh==shi)
{
if(nf==fen)
{
if(nt==0)
{
P1=0xff;
if(++mn==10)
{
mn=0;
kz=!kz;
}
if(key3==0)
{
nt=1;
kz=1;
}
}
}
else
{
nt=0;
kz=1;
}
}
}
2. 用C語言寫51單片機鬧鍾程序
//*********************************************************
//實現功能:本程序實現在P1口模擬一個流水燈程序
//*********************************************************
#include <reg51.h>
#define p_out P1 //宏定義輸出的i/o口為P1
//******************時間延遲函數**********************
//描伏中 述:用指令實現延時一段時間
//入口參數:int i,為時間延遲參數
//****************************************************
void delay_time(int i)
{
while(i)
i--;
}
//******************主函數***************************
//描 述:實現在P1口模擬一個流水燈程序
//****************************************************
void main(void)
{unsigned char i=0; //初始化一個局部變數為悉廳備0
p_out=0xff; //初始化將要輸出的i/o口,輸出高電平,熄滅所有燈
while(1)
{
for(i=0;i<8;i++)
{
p_out=~(1<<i);//點亮一個燈,
delay_time(50000); //延遲一段時間
p_out=0xff;//熄滅所有燈
}
}
}
//**************************************
//****************************************************
//實現功能:把鍵盤輸入的鍵盤碼,用led顯示出來
//****************************************************
#include <reg51.h>
#define p_key P1
#define led_date P0
#define choose_p P2
unsigned char change(unsigned char i);
unsigned int display_num=0;
//******************時間延遲函數**********************
//描 述:用指令實現延睜毀時一段時間
//入口參數:int i,為時間延遲參數
//****************************************************
void delay_time(int i)
{
while(i)
i--;
}
//******************按鍵掃描函數**********************
//描 述:對4*4鍵盤進行掃描,程序只適合4*4鍵盤使用,
// 鍵盤佔用一組完整的i/o口,在使用這個程序前
// 要宏定義p_key為用戶實際連接鍵盤的i/o口
// #define p_key Pn;//(n=0、1、2、3)
//返回參數:若有檢測到按鍵就返回按鍵的編號,否則返回0xff
//****************************************************
unsigned char read_key(void)
{
unsigned char j,key,key_buf=0;
p_key=0xff;
//檢測是否有建按下//
p_key=0xf0;
key=p_key;
if(key==0xf0)
{
return(0xff);//沒按鍵按下,返回0xff
}
//有按下,延時去抖//
delay_time(5000);
//確認是否有建按下//
p_key=0xf0;
key=p_key;
if(key==0xf0)
{
return(0xff);//沒按鍵按下,返回0xff
}
//真的有按鍵按下,掃描是哪一行有按鍵按下//
for(j=0;j<4;j++)
{key=p_key&(0x10<<j);
if (key)
{
key=p_key;
}
else
{
key_buf=j*4;
p_key=~(0x10<<j);//第j行的按鍵按下了,第j行輸出0,其他的i/o口輸出1
//掃描是第j行的哪個按鍵按下//
for(j=0;j<4;j++)
{
key=p_key&(1<<j);
if (key)
{
key=p_key;
}
else
{
key_buf+=j;
return(key_buf);//掃描到按鍵的確定位置,返回按鍵的編號
}
}
}
}
//沒掃描到按鍵,//
return(0xff);
}
//***************七段數碼管顯示函數*******************
//描 述:對四位的掃描型七段數碼管進行掃描顯示,在使用
// 前要定義一個全局變數display_num
// unsigned int display_num;
//入口參數:unsigned int num,要顯示的數字(0-9999)
//****************************************************
void display(unsigned int num)
{
if(num<10000)
{
display_num=num;
}
choose_p|=3;//先關顯示
led_date=change(display_num/1000);//得到千位的數字,並轉換成七段碼型
choose_p&=0xfe;//選通千位
delay_time(50);//延時一段時間
choose_p|=1;//關顯示
display_num=display_num%1000;
led_date=change(display_num/100);//得到百位的數字,並轉換成七段碼型
choose_p&=0xfd;//選通百位
delay_time(50);//延時一段時間
choose_p|=2;//關顯示
display_num=display_num%100;
led_date=change(display_num/10);//得到十位的數字,並轉換成七段碼型
choose_p&=0xfb;//選通十位
delay_time(50);//延時一段時間
choose_p|=4;//關顯示
led_date=change(display_num%10);//得到個位的數字,並轉換成七段碼型
choose_p&=0xf7;//選通十位
delay_time(50);//延時一段時間
choose_p|=8;//關顯示
}
//****************數字-碼型轉換函數*******************
//描 述:把數字轉換成七段碼型,此程序僅配合共陽的七
// 段數碼管使用
//入口參數:unsigned char i,要轉換的數字(0-9),
//返回參數:轉換後的七段碼型,0xff表示轉換失敗
//****************************************************
unsigned char change(unsigned char i)
{
switch(i)
{
case 0:
return(0xc0);//0的七段碼型
case 1:
return(0xf9);//1的七段碼型
case 2:
return(0xa4);//2的七段碼型
case 3:
return(0xb0);//3的七段碼型
case 4:
return(0x99);//4的七段碼型
case 5:
return(0x92);//5的七段碼型
case 6:
return(0x82);//6的七段碼型
case 7:
return(0xf8);//7的七段碼型
case 8:
return(0x80);//8的七段碼型
case 9:
return(0x90);//9的七段碼型
default:
return(0xff);//轉換失敗
}
}
//*********************主函數*************************
//描 述:把鍵盤輸入的鍵盤碼,用led顯示出來
//****************************************************
int main(void)
{unsigned char i;
while(1)
{
i=read_key();//掃描鍵盤
if(i<16)
display((unsigned int)i);//有效的鍵盤值
else
display(0xffff);//數據無效
}
}
//兩個程序加起來就可以完成你要求的功能,有說明,你認真看一下吧。
3. 求單片機C語言的電子鬧鍾設計程序 其功能只要有鬧鍾,一天24小時的時鍾功能就行。
你看看行不行
#include<reg51.h>
uchar code tab[10]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F}
void view() /*七段數碼管顯示程序 七個管輪流液悉顯示*/
{P3=0x01;
unsigned int i=0;
while(i<6)
{n=vnum;
P1=tab[n];
P3<<=1;
i++;
}
}
void mDelay(unsigned int Delay) /*延時程序*/
{ unsigned int i;
for(;Delay>虛埋州0;Delay--)
{ for(i=0;i<124;i++)
{;}
}
}
void jumpnum() /*用於鍾表時分秒的進位*/
{if(jnum(5)>9) /*秒進位
{jnum[4]=jnum[4]+1;
jnum[5]=0;
if(jnum[4]>6) /*秒到分進位
{jnum[3]=jnum[3]+1;
jum[4]=0;
if(jnum[3]>9) /*分進位
{jnum[2]=jnum[2]+1;
jnum[3]=0;
if(jnum[2]>6) /*分到時進位
{jnum[1]=jnum[1]+1;
jnum[2]=0;
if(jnum[1]>9) /*時的進位
{jnum[1]=0;
jnum[0]=jnum[0]+1;
}
else if(jnum[1]>4&&jnum[0]>=2)
{jnum[1]=0;
jnum[0]=0;
}
}
}
}
}
void key() /*鍵盤控製程序
{if((P2&0xFF)!=0xFF); /*防抖動
{mDelay(3000);
if((P2&0xFF)!=0xFF)
{unsign int c;
c=1;
while(c<4)
{ if((P2&0xFF)!=0xFF);
{mDelay(3000);
vnum[]=num[];
void view();
if((P2&0xFF)!=0xFF)
{switch(P2): /*判斷不同的按鍵
{case 0xFE: c++; /*c用於判斷是鬧鍾調時c=3還是時鍾調時c=2
case oxFD :if(c=2) /*分位增加
{num[3]++;}
else if(c=3)
{lnum[3]++;
}
case oxFC :if(c=2) /*時位增加
{num[1]++;}
else if(c=3)
{lnum[1]++;
}
}
if(c=2) /*增加後判斷是否需要進位
{jnum[]=num[];
jumpnum();
vnum[]=num[];
void view[];}
if(c=3)
{jnum[]=lnum[];
jumpnum();
vnum[]=num[];
void view[];}}}}}}}
void clock() /*鬧鍾程序
{for(cl=0;num[cl]==lnum(cl);cl=cl+1) /*當前時間與設定時間相同
{;}
unsigned int kp=0;
if(cl==5&&kp==0) /*鬧鍾鈴聲
{for(i=1;i<100;i++)
{P1_7=~P1_7;
for(j=1;i<=100;j++);}
void mDelay(3000);
for(i=1;i<100;i++)
{P1_7=~P1_7;
for(j=1;i<=100;j++);}
vnum[]=num[];
void view();
if((P2&0xFF)!=0xFF); /*判斷是否有按鍵,有則停止鬧鍾
{mDelayd(3000)
void view();
if((P2&0xFF)!=0xFF)
{kp=1;}
}}}
viod intclock() /*整點報時程序
{unsigned int ic,i;
if(num[2]==5&&num[3]==9&&num[4]==5&&num[5]==0) /*判斷差十秒整點差蔽
{if(ic=num[5]+2;(ic==(num[5]+2))&&num[5]<59;ic=num[5]) /*開始發出500hz聲因
{for(i=0;i<100;i++)
{P1_7=~P1_7;
for(i=0;i<=100;i++)
}
for(i=1;i<150;i++) /*1000hz聲音
{P1_7=~P1_7;
for(i=0;i<=50;i++)
}}}}
void count() inturrupt 1 using 2 /*計時程序
{cn++;
if(cn==20)
{num[5]++;
cn=0;
}
}
void main()
{ P2=0x00;
unsigned int num[5],jnum[5],lnum[5];
ET0=1;
EA=1;
TR0=1;
EX0=1;
EX1=1;
IT0=1;
IT1=1;
TMOD=0x01;
TH0=0x3C;
TL0=0xB0;
unsigned int cn=0;
P2=0x00;
while(1)
{void key();
void view();
void jumpnumber();
void clock();
void intclock();
}
}
4. C語言 鬧鍾程序
用C語言實現的鬧鍾程序
#include
#include
#include
#include
#include
void
main()
{
int
gd=DETECT,gm;
int
x=320,y=240,r=200,i,h,m,s,thetamin,thetasec;
struct
time
t;
char
n[12][3]={"3","2","1","12","11","10","9","8","7","6","5","4"};
initgraph(&gd,&gm,"g:\\tc\\bgi");//圖形驅動器路徑,根據自己的系統更換。
circle(x,y,210);
setcolor(4);
settextstyle(4,0,5);
for(i=0;i<12;i++)
{
if(i!=3)
outtextxy(x+(r-14)*cos(M_PI/6*i)-10,y-(r-14)*sin(M_PI/6*i)-26,n[i]);
else
outtextxy(x+(r-14)*cos(M_PI/6*i)-20,y-(r-14)*sin(M_PI/6*i)-26,n[i]);
}
gettime(&t);
printf("The
current
time
is:
%2d:%02d:%02d.%02d\n",t.ti_hour,
t.ti_min,
t.ti_sec,
t.ti_hund);
while(!kbhit())
{
setcolor(5);
setfillstyle(1,5);
circle(x,y,10);
floodfill(x,y,5);
gettime(&t);
if(t.ti_min!=m)
{
setcolor(0);
line(x,y,x+(r-60)*cos(thetamin*(M_PI/180)),y-(r-60)*sin(thetamin*(M_PI/180
)));
circle(x+(r-80)*cos(thetamin*(M_PI/180)),y-(r-80)*sin(thetamin*(M_PI/180))
,10);
line(x,y,x+(r-110)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-110)*sin(M_PI/6*h
-((m/2)*(M_PI/180))));
circle(x+(r-130)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-130)*sin(M_PI/6*h-(
(m/2)*(M_PI/180))),10);
}
if(t.ti_hour>12)
t.ti_hour=t.ti_hour-12;
if(t.ti_hour<4)
h=abs(t.ti_hour-3);
else&n
bsp;
h=15-t.ti_hour;
m=t.ti_min;
if(t.ti_min<=15)
thetamin=(15-t.ti_min)*6;
else
thetamin=450-t.ti_min*6;
if(t.ti_sec<=15)
thetasec=(15-t.ti_sec)*6;
else
thetasec=450-t.ti_sec*6;
setcolor(4);
line(x,y,x+(r-110)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-110)*sin(M_PI/6*h
-((m/2)*(M_PI/180))));
circle(x+(r-130)*cos(M_PI/6*h-((m/2)*(M_PI/180))),y-(r-130)*sin(M_PI/6*h-(
(m/2)*(M_PI/180))),10);
line(x,y,x+(r-60)*cos(thetamin*(M_PI/180)),y-(r-60)*sin(thetamin*(M_PI/180
)));
circle(x+(r-80)*cos(thetamin*(M_PI/180)),y-(r-80)*sin(thetamin*(M_PI/180))
,10);
setcolor(15);
line(x,y,x+(r-70)*cos(thetasec*(M_PI/180)),y-(r-70)*sin(thetasec*(M_PI/180
)));
delay(1000);
setcolor(0);
line(x,y,x+(r-70)*cos(thetasec*(M_PI/180)),y-(r-70)*sin(thetasec*(M_PI/180
)));
}
}
該程序已在Turbo
C++3.0中通過編譯.
5. 用VB編寫一個鬧鍾程序
拉緩槐一個按鈕控制項和一個Timer控制項,Timer控制項Interval設為1000,Enable設為false。Private Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrRetumString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
Dim t As Integer '計算時間
Dim s As Integer '提醒間隔擾橋友時間
Dim mp3file As String 'mp3文件路徑
Private Sub Command1_Click()
'停止播放
Call mciSendString("Stop " & mp3file, 0&, 0, 0)
End Sub
Private Sub Form_Load()
t = 0
s = 3 '一小時等於3600秒消猛
mp3file = "D:\yixiou.mp3"
Timer1.Enabled = True
End Sub
Private Sub Timer1_Timer()
t = t + 1
If t = s Then
'播放音樂
Call mciSendString("Close" & mp3file, 0&, 0, 0)
Call mciSendString("Open " & mp3file, 0&, 0, 0)
Call mciSendString("play " & mp3file, 0&, 0, 0)
'切換間隔時間
If s = 3600 Then
s = 900
Else
s = 3600
End If
End If
End Sub
6. C語言編鬧鍾程序
程序員聯合開發網上有:http://www.pudn.com/downloads59/sourcecode/windows/other/detail207633.html
非常漂亮。
//////////////橘族/////////
大兄弟你點那個文件名,就自動打開了,不要下載的。
給你我打開TransparentWnd.cpp,內容太多圓襪弊,貼子顯示不了,就一部分;
////////////////////
www.pudn.com > ktclock.rar > TransparentWnd.cpp
//****************
//* TransparentWindow.CPP
//*
//* A transparent window class.
//*
//* Based on the idea of Jason Wylie ,Franz Polzer,Luo yun bin
//* [email protected]
//* (C) 2002 by 王鵬
//*
//* Write to me: [email protected]
//好歲
#include "stdafx.h"
#include "TransparentWnd.h"
#include "Dib.h"
#include "resource.h"
#include
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#define WM_LIBEN WM_USER+994
CString GetCurPath()
{
TCHAR exeFullPath[MAX_PATH];
CString strPath;
GetMoleFileName(NULL,exeFullPath,MAX_PATH);
strPath.Format("%s", exeFullPath);
strPath = strPath.Left(strPath.ReverseFind('\\'));
return strPath;
7. 用VB編寫一個鬧鍾程序
做一個簡單的鬧鍾程序很簡單的。我頌喚這里不用if語句。首先我們在窗體上添加一個標腔絕簽控制項,再畫一個「鬧鍾」,將鬧鍾得interval屬野圓凱性改為1000,雙擊鬧鍾,進入鬧鍾的代碼視圖,編寫代碼
private
sub
timer1_timer()
label1.caption
=
time
end
sub就行了。謝謝採納
8. 用vb.net實現鬧鍾提醒程序
一個提醒程序 最典型的就是鬧鍾程序 網上有不少個性化的提醒程序下載 但是大部分都是以時間為主的鬧鍾提醒 我們也可以用來打造一個適合自己的提醒程序 比如監控一個某個應用程序的變化然後發出聲音提醒自己等等
一個提醒程序 最重要能在符合提醒條件的時候發出聲音來提醒使用者 在這里 我們就對具體的提醒條件啰嗦了 只針對如何實現提醒聲音的播放進行說明
在的 net組件中 並沒有提供播放聲音文件的組件 但是我們可以通過使用Com組件來播放聲音文件 但是 要注意的事 我們只需要發出提示的聲音而已 並不需要像播放器那樣播放不同格式的聲音文件和繁多的列表 所以我們可以通過API函數來循環播放單個的聲音文件
在WindowsAPI函數的有一個PlaySound函數 它用於播放WAV格式的聲音文件 我們可以用它來反復播放一個指定的WAV文件來實現提醒功能
首先在中引入API聲明
Public Declare Function PlaySound Lib winmm dll (ByVal lpszSoundName As String ByVal hMole As Integer ByVal dwFlags As Integer) As Integer
然後定義幾個我們程序中必須用到的dwFlags參數常量
同步調用PlaySound中指定的文件 播放完WAV文件後才返回結果
Const SND_SYNC As Integer = &H
非同步調用PlaySound中指定的文件 不必等到播放完WAV文件後就直接返回結果 在這里我們可以調用非同步方法來播放文件
Const SND_ASYNC As Integer = &H
反復播放指定的WAV文件譽譽
Const SND_LOOP As Integer = &H
在調用的時候hMole參數必須為耐虛拿
需要停止的時候通過調用PlaySound(vbNullString )來實現現在我們在窗體上放置兩個按鈕 一個用於開始播放 一個用於停止播放 然後再放置一個TextBox控制項 用於指定WAV文件的路徑 界面如下圖所示
圖一 示例界面
完整昌搭代碼如下
Public Declare Function PlaySound Lib winmm dll (ByVal lpszSoundName As String ByVal hMole As Integer ByVal dwFlags As Integer) As Integer
Const SND_FILENAME As Integer = &H
Const SND_ALIAS As Integer = &H
Const SND_SYNC As Integer = &H
Const SND_ASYNC As Integer = &H
Const SND_LOOP As Integer = &H
Private Sub Button _Click(ByVal sender As System Object ByVal e As System EventArgs) Handles Button Click
PlaySound(TextBox Text SND_LOOP Or SND_ASYNC)
End Sub
Private Sub Button _Click(ByVal sender As System Object ByVal e As System EventArgs) Handles Button Click
PlaySound(vbNullString )
End Sub
運行 在TextBox 中輸入有效的WAV文件的路徑 然後單擊開始 就可以循環播放聲音了 單擊停止按鈕就可以停止播放
lishixin/Article/program/net/201311/12453
9. 怎麼用c語言編寫鬧鍾程序,期末作業求大神
最簡單的方法,先讓用戶輸入時間,然後使用結構體保存起來,然後用一個循環,while、for都可以,然後在循環中取得當前的時間,使用取得的時間與用戶設定的時間進行比較,
如果沒到時間,那麼就繼續循環。
如果到時間了,發音,然後退出循拍悶皮環。襲差
稍微復雜一些的方罩虧法,使用Timer、啟動線程的方法。