|
不能隨便出去的時(shí)期,用手頭的零件做個(gè)數(shù)字收音機(jī),收音模塊5807M,IIC通訊,0.91寸OLED IIC通訊的,EC11,一對(duì)一編碼器,自帶一個(gè)按鍵,就用編碼器+自帶按鍵操作,單片機(jī)翻了翻盒子,發(fā)現(xiàn)兩片STC15W408AS,就這個(gè)了。
折騰了兩天,昨晚上調(diào)試成功,今天整了一份Kicad的圖紙,帶自己隨便畫的一個(gè)小板圖,還有程序全套。
制作出來(lái)的實(shí)物圖如下:
IMG_20200228_171012.jpg (1.1 MB, 下載次數(shù): 155)
下載附件
2020-2-28 17:19 上傳
1582881627228.jpg (909.92 KB, 下載次數(shù): 152)
下載附件
2020-2-28 17:21 上傳
IMG_20200228_171022.jpg (1.13 MB, 下載次數(shù): 145)
下載附件
2020-2-28 17:19 上傳
51hei截圖20200228173037.png (12.49 KB, 下載次數(shù): 123)
下載附件
2020-2-28 17:32 上傳
電路原理圖如下:
51hei截圖20200228173117.png (14.87 KB, 下載次數(shù): 177)
下載附件
2020-2-28 17:32 上傳
51hei截圖20200228173211.png (18.54 KB, 下載次數(shù): 144)
下載附件
2020-2-28 17:32 上傳
單片機(jī)源程序如下:
- /*---------------數(shù)字調(diào)頻收音機(jī)------------------*/
- /* 學(xué)習(xí)之用,請(qǐng)勿商用 */
- /* 轉(zhuǎn)載請(qǐng)注明:數(shù)字收音機(jī)RDAV1.0 */
- /*-----------------------------------------------*/
- #include<rda.h>
- #include<ec11.h>
- #include<i2c.h>
- #include<5807.h>
- #include<oled.h>
- #include<bmp.h>
- void main()
- {
- u8 keynum;
- u32 rxfreq=9480,vol=2,tn,vol1,xfreq,yfreq;
- oledinit();
- oledbmp(0,0,128,4,BMP1);
-
- rdainit(); //RDA5807 初始化
- freqset(rxfreq); //頻率設(shè)置
- volset(vol); //音量設(shè)置
- seeset(6); //搜臺(tái)靈敏度設(shè)置,靈敏度太高會(huì)導(dǎo)致雜音,越小靈敏度越高,最大15。
- seektion(1);
-
- delay_ms(3000);
- oledclr();
- oledchine(0,0,0);
- oledchine(16,0,1);
- oledchar(40,0,'-',16);
-
- oledchar(72,0,'.',16);
-
- oledstr(88,0,"MHz-",16);
- oledchine(0,2,2);
- oledchine(16,2,3);
- oledchar(64,2,'-',16);
- oledchar(88,2,'-',16);
-
- while(1)
- {
- keynum=kpass();
-
- switch(keynum)
- {
- case 0:
- break;
- case 1:
- rxfreq+=10; //頻率+
- if(rxfreq>10800)
- rxfreq=10800;
- freqset(rxfreq);
- break;
- case 2:
- rxfreq-=10; //頻率-
- if(rxfreq<8830)
- rxfreq=8830;
- freqset(rxfreq);
- break;
- case 3:
- vol+=1; //音量+
- if(vol>15)
- vol=15;
- volset(vol);
- break;
- case 4:
- vol-=1; //音量-
- if(vol<1)
- vol=1;
- volset(vol);
- break;
- }
- if(tn!=rxfreq|vol1!=vol)
- {
- tn=rxfreq;
- vol1=vol;
- xfreq=rxfreq/100;
- yfreq=rxfreq/10%10;
- olednum(72,2,vol,2,16);
- olednum(48,0,xfreq,3,16);
- olednum(80,0,yfreq,1,16);
- }
-
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
rdAv0.1.7z
(47.46 KB, 下載次數(shù): 308)
2020-2-28 20:04 上傳
點(diǎn)擊文件名下載附件
數(shù)字調(diào)頻收音 下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|