試試這個int speaker(unsigned int freq,unsigned int delay) { static int flag=0,bit; if(flag==0) { flag=1; iopl(3); } outb(0xb6,0x43); outb((freq & 0xff),0x42); outb((freq >> 8),0x42); bit=inb(0x61); outb(3 | bit,0x61); usleep(10000*delay); outb(0xfc | bit,0x61); } #include <sys/io.h> #include <unistd.h> main() { int i; for(i = 0; i<1; i++) { speaker( 2000, 40 ); sleep(2); } speaker( 1000, 40 ); }希望對你有幫助。
試試這個int speaker(unsigned int freq,unsigned int delay) { static int flag=0,bit; if(flag==0) { flag=1; iopl(3); } outb(0xb6,0x43); outb((freq & 0xff),0x42); outb((freq >> 8),0x42); bit=inb(0x61); outb(3 | bit,0x61); usleep(10000*delay); outb(0xfc | bit,0x61); } #include <sys/io.h> #include <unistd.h> main() { int i; for(i = 0; i<1; i++) { speaker( 2000, 40 ); sleep(2); } speaker( 1000, 40 ); }希望對你有幫助。