久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5304|回復: 11
打印 上一主題 下一主題
收起左側

Arduino加5110屏+TEA5767組成的數調收音機源程序

  [復制鏈接]
跳轉到指定樓層
樓主

  1. #include <TEA5767N.h>  //https://github.com/mroger/TEA5767
  2. #include <LCD5110_Graph.h> //http://www.rinkydinkelectronics點com/library.php?id=48

  3. LCD5110 lcd(8,9,10,12,11);
  4. TEA5767N radio = TEA5767N();

  5. extern unsigned char BigNumbers[];
  6. extern unsigned char TinyFont[];

  7. extern uint8_t splash[];
  8. extern uint8_t signal5[];
  9. extern uint8_t signal4[];
  10. extern uint8_t signal3[];
  11. extern uint8_t signal2[];
  12. extern uint8_t signal1[];

  13. int analogPin = 0;
  14. int val = 0;
  15. int frequencyInt = 0;
  16. float frequency = 0;
  17. float previousFrequency = 0;
  18. int signalStrength = 0;

  19. void setup()
  20. {
  21.   radio.setMonoReception();
  22.   radio.setStereoNoiseCancellingOn();
  23.   initScreen();
  24.   showSplashScreen();
  25.   Serial.begin(9600);
  26. }

  27. void loop() {
  28.   
  29.   for(int i;i<30;i++)
  30.   {
  31.      val = val + analogRead(analogPin);
  32.      delay(1);
  33.   }
  34.   
  35.   val = val/30;
  36.   frequencyInt = map(val, 2, 1014, 8700, 10700); //Analog value to frequency from 87.0 MHz to 107.00 MHz
  37.   float frequency = frequencyInt/100.0f;

  38.   if(frequency - previousFrequency >= 0.1f || previousFrequency - frequency >= 0.1f)
  39.   {
  40.     lcd.clrScr();
  41.     radio.selectFrequency(frequency);
  42.     printSignalStrength();
  43.     printStereo();
  44.     printFrequency(frequency);
  45.     previousFrequency = frequency;   
  46.   }
  47.   
  48.   lcd.clrScr();
  49.   printSignalStrength();
  50.   printStereo();
  51.   printFrequency(frequency);
  52.   delay(50);
  53.   val = 0;  
  54. }

  55. void initScreen()
  56. {
  57.   lcd.InitLCD();
  58.   lcd.setFont(BigNumbers);
  59.   lcd.clrScr();
  60. }

  61. void showSplashScreen()
  62. {
  63.   lcd.drawBitmap(0, 0, splash, 84, 48);
  64.   lcd.update();  
  65.   delay(3000);
  66.   lcd.clrScr();
  67.   lcd.update();
  68. }

  69. void printFrequency(float frequency)
  70. {
  71.   String frequencyString = String(frequency,1);
  72.   if(frequencyString.length() == 4)
  73.   {
  74.     lcd.setFont(BigNumbers);
  75.     lcd.print(frequencyString,14,12);
  76.     lcd.update();
  77.   }
  78.   else
  79.   {
  80.     lcd.setFont(BigNumbers);
  81.     lcd.print(frequencyString,0,12);
  82.     lcd.update();
  83.   }
  84. }
  85. void printStereo()
  86. {
  87.     boolean isStereo = radio.isStereo();
  88.      if(isStereo)
  89.     {
  90.       lcd.setFont(TinyFont);
  91.       lcd.print("STEREO",55,2);
  92.     }
  93. }

  94. void printSignalStrength()
  95. {
  96.   signalStrength = radio.getSignalLevel();
  97.   String signalStrenthString = String(signalStrength);
  98.   if(signalStrength >=15)
  99.   {
  100.     lcd.drawBitmap(1, 1, signal5, 17 , 6);
  101.   }else if(signalStrength >=11 && signalStrength <15)
  102.   {
  103.     lcd.drawBitmap(1, 1, signal4, 17 , 6);
  104.   }
  105.   else if(signalStrength >=9 && signalStrength <11)
  106.   {
  107.     lcd.drawBitmap(1, 1, signal3, 17 , 6);
  108.   }
  109.    else if(signalStrength >=7 && signalStrength <9)
  110.   {
  111.     lcd.drawBitmap(1, 1, signal2, 17 , 6);
  112.   }
  113.    else if(signalStrength <7)
  114.   {
  115.     lcd.drawBitmap(1, 1, signal1, 17 , 6);
  116.   }
  117. }
復制代碼


FMRadio(tea5767_5110-nano).zip

2.09 KB, 下載次數: 74

完整代碼

評分

參與人數 2黑幣 +65 收起 理由
wangshoukai + 15
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:701198 發表于 2020-5-8 16:12 | 只看該作者
找了好久終于找到了,感謝樓主分享
回復

使用道具 舉報

板凳
ID:701198 發表于 2020-5-8 16:13 | 只看該作者
感謝樓主分享,終于找到了。
回復

使用道具 舉報

地板
ID:378732 發表于 2020-8-5 19:58 | 只看該作者
這個電路圖是用什么畫的
回復

使用道具 舉報

5#
ID:798252 發表于 2020-8-7 10:44 | 只看該作者
ty417502873 發表于 2020-8-5 19:58
這個電路圖是用什么畫的

應該是fritzing畫的
回復

使用道具 舉報

6#
ID:979259 發表于 2021-11-8 20:18 | 只看該作者
如何搜臺的?
回復

使用道具 舉報

7#
ID:1061340 發表于 2023-1-17 15:43 | 只看該作者

通過旋轉電位器搜索電臺
回復

使用道具 舉報

8#
ID:1075262 發表于 2023-7-12 16:52 | 只看該作者
求教:有沒有大佬做成功的?我怎么頻率卡在87Mhz,頻率電位器怎么調都不變。
回復

使用道具 舉報

9#
ID:1083556 發表于 2023-7-23 00:49 | 只看該作者

找了好久終于找到了,感謝樓主分享
回復

使用道具 舉報

10#
ID:1088165 發表于 2023-7-23 21:51 | 只看該作者
程序報錯,有能解決嗎?

Arduino:1.8.13 (Windows 10), 開發板:"Arduino Uno"

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1\FMRadio1.ino: In function 'void printStereo()':

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1\FMRadio1.ino:101:30: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]

C:\Users\Administrator\Documents\Arduino\libraries\TEA5767-master\TEA5767N.cpp: In function 'transmitData.constprop':

C:\Users\Administrator\Documents\Arduino\libraries\TEA5767-master\TEA5767N.cpp:92:13: warning: iteration 5 invokes undefined behavior [-Waggressive-loop-optimizations]

   Wire.write(transmission_data[i]);

             ^

C:\Users\Administrator\Documents\Arduino\libraries\TEA5767-master\TEA5767N.cpp:91:18: note: within this loop

  for (int i=0 ; i<6 ; i++) {

                  ^

C:\Users\Administrator\AppData\Local\Temp\cclP43mC.ltrans0.ltrans.o: In function `printSignalStrength':

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:111: undefined reference to `signal5'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:111: undefined reference to `signal5'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:114: undefined reference to `signal4'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:114: undefined reference to `signal4'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:118: undefined reference to `signal3'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:118: undefined reference to `signal3'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:122: undefined reference to `signal2'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:122: undefined reference to `signal2'

C:\Users\Administrator\AppData\Local\Temp\cclP43mC.ltrans0.ltrans.o: In function `showSplashScreen':

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:72: undefined reference to `splash'

D:\arduino\arduino作品\Arduino加5110屏+TEA5767組成的數調收音機源程序\51黑論壇_FMRadio(tea5767_5110-nano)\FMRadio\FMRadio1/FMRadio1.ino:72: undefined reference to `splash'

collect2.exe: error: ld returned 1 exit status

exit status 1

為開發板 Arduino Uno 編譯時出錯。



在文件 -> 首選項開啟
“編譯過程中顯示詳細輸出”選項
這份報告會包含更多信息。
回復

使用道具 舉報

11#
ID:1075262 發表于 2023-7-24 15:19 | 只看該作者
uno是可以通過編譯的,你是否已經把FMRadio.ino,icons.c,splash.c 三個文件放在一個目錄里?
回復

使用道具 舉報

12#
ID:369888 發表于 2023-7-30 13:11 | 只看該作者
Fritzing中 TEA5767   LM386   5110  的原件庫怎么弄的,能發我一下嗎
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费看国产精品视频 | 欧美在线亚洲 | 欧美视频区 | 91精品国产一区二区三区动漫 | 国产精品视频在线观看 | 午夜精品久久久久久久久久久久久 | 亚洲成人免费视频在线 | 粉色午夜视频 | 国产精品区二区三区日本 | 国产精品国产三级国产播12软件 | 一区二区三区四区在线免费观看 | 天天影视色综合 | 色综合久久久久 | 国产一区三区在线 | 91免费在线播放 | 久久久久久久久久久久一区二区 | 久久亚洲二区 | 91.xxx.高清在线 | 综合亚洲视频 | 欧美性精品 | 在线看av的网址 | 亚洲一二三区在线观看 | 香蕉国产在线视频 | 日韩国产黄色片 | 亚洲欧美激情四射 | av毛片免费 | 在线观看黄免费 | 欧美在线一级 | 美日韩视频 | 久久精品国产一区二区电影 | 国产精品一区二区久久久久 | 在线观看视频你懂得 | 午夜视频在线 | 日本人做爰大片免费观看一老师 | 蜜桃毛片 | 日本一区二区三区在线观看 | 国产免费福利小视频 | 久久一热| 在线观看国产精品视频 | 国产一区二区a | 欧美性乱 |