本试验基于AI8051U实验箱V1.2,
程序代码:
FM测试.zip
(359.26 KB, 下载次数: 4)
利用P4.7输出系统时钟,调整IRTRIM实现调频(FM),
(估计是3次谐波、5次谐波吧)
使IRTRIM以较高频率在两个值之间切换,如同PWM,
占空比决定电压,不断调整电压就能形成音频。
(stc8g\stc8h应该也都是能实现这个功能的)
P4.7连接一小段铜丝就能在FM收音机中收听到信号,
收听距离大约能到2米,程序中用数组wav_tab[]存了一段
大约3秒的WAV音频,循环播放。
缺点是:噪声较大,IRTRIM不变也会听到呼呼的声音,
猜测是是IRC本身在不断的调整频率。
(IRC频率为30MHz)
MCLKOCR=0x01;//1分频,P47输出,89.8MHz附近收听
//MCLKOCR=0x02;//2分频,P47输出,89.8MHz、104.8MHz附近收听
注意:不要干扰到别人听收音机。
部分代码:
- oid fm_beep(void)
- {
- u8 i;
- u8 t;
- t=IRTRIM;
- //MCLKOCR=0x01;//1分频,P47输出
- //MCLKOCR=0x02;//2分频,P47输出
- for(i=0;i<100;i++)
- {
- IRTRIM=t+1;
- delay_us(100);
- IRTRIM=t;
- delay_ms(1);
- }
-
- }
复制代码
|