找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2206|回复: 2
打印 上一主题 下一主题
收起左侧

基于STM32单片机FM调频TEA5767功放收音机源程序

[复制链接]
跳转到指定楼层
楼主
ID:629491 发表于 2019-10-24 15:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
源码及实现

单片机源程序如下:
  1. #include "led.h"
  2. #include "delay.h"
  3. #include "sys.h"
  4. #include "usart.h"
  5. #include "lcd.h"
  6. #include <stdio.h>
  7. #include "timer.h"
  8. #include "lcd1602.h"
  9. #include "key.h"
  10. #include "fm_TEA5767.h"

  11. char dis0[16];//存放显示数组0
  12. char dis1[16];
  13. u8 rekey = 0;//按键防止重复
  14. u8 disFlag=0;//显示标志
  15. u8 i;

  16. void LCDshow(void);
  17.        
  18. int main(void)
  19. {          
  20.         delay_init();                     //延时函数初始化          
  21.         uart_init(9600);                 //串口初始化为9600
  22.   TIM3_Int_Init(499,7199);//50ms           
  23. //        LED_Init();                                  //初始化与LED连接的硬件接口
  24.         KEY_Init();                        //初始化按键

  25.         Lcd_GPIO_init();  //初始化lcd引脚
  26.         Lcd_Init();                  //初始化lcd屏幕
  27.         delay_ms(20);
  28.   Lcd_Puts(0,0,(u8 *)"     FMRadio    ");        //初始化显示

  29.         init();      //  初始化TEA5767
  30.        
  31.          while(1)
  32.         {
  33.                 if(disFlag == 1)
  34.                 {
  35.                         disFlag = 0;
  36.                 LCDshow();
  37.                 }                       
  38.                 if((key1==0)||(key2==1))//按键按下
  39.                 {
  40.                         {
  41.                                 delay_ms(10);//消除抖动

  42.                                 if(key1==0)                //按键显示切换
  43.                                 {
  44.                                         rekey = 1;
  45.                                         search_up();          //频率向上
  46.                                         delay_ms(200);//消除抖动
  47.                                 }
  48.                                 else  if(key2==0)                //按键显示切换
  49.                                 {
  50.                                         rekey = 1;
  51.                                         search_down();          //频率向上
  52.                                         delay_ms(200);//消除抖动
  53.                                 }
  54.                         }               
  55.                 }
  56.         }                                                                                            
  57. }       

  58. //*********************LCD1602显示程序*********************
  59. void LCDshow(void)//lcd显示
  60. {
  61.       num1=FM_FREQ/100000000;                                                //提取频率值
  62.       num2=(FM_FREQ%100000000)/10000000;
  63.       num3=(FM_FREQ%10000000)/1000000;
  64.       num4=(FM_FREQ%1000000)/100000;

  65.        Lcd_1Put(4, 1, tab1[num1]);//显示具体数值
  66.        Lcd_1Put(5, 1, tab1[num2]);
  67.        Lcd_1Put(6, 1,tab1[num3]);
  68.        Lcd_1Put(7, 1, '.');
  69.        Lcd_1Put(8, 1, tab1[num4]);
  70.        Lcd_1Put(9, 1,'M');//
  71.        Lcd_1Put(10,1,'H');//
  72.        Lcd_1Put(11,1,'Z');//
  73. }
复制代码

所有资料51hei提供下载:
程序.7z (209.29 KB, 下载次数: 83)


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏2 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:333807 发表于 2020-2-20 14:25 | 只看该作者
高手,感谢分享
回复

使用道具 举报

板凳
ID:755390 发表于 2020-6-9 14:53 | 只看该作者
谢谢分享  有电路图吗?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表