基于BH1415F的数控调频发射器设计

  • M4_473388
    了解作者
  • C/C++
    开发工具
  • 30.2KB
    文件大小
  • rar
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-02-25 10:24
    上传日期
类似校园广播电台的数控调频发射器,单片机,BH1415F
基于BH1415F的数控调频发射器设计.rar
  • 基于BH1415F的数控调频发射器设计
  • jack21.M51
    14.4KB
  • jack21.lnp
    59B
  • jack21.opt.bak
    1.1KB
  • jack21.uvproj
    13.1KB
  • STARTUP.OBJ
    758B
  • jack21_Uv2.Bak
    2.1KB
  • Text1.c
    4.1KB
  • Text1.LST
    9.3KB
  • jack21.Uv2.bak
    2.1KB
  • jack21.hex
    2.3KB
  • STARTUP.A51
    6.2KB
  • jack21_Opt.Bak
    1.1KB
  • jack21
    10.8KB
  • Text1.OBJ
    11.7KB
  • STARTUP.LST
    13.7KB
  • jack21.plg
    204B
  • jack21.uvopt
    55.8KB
内容介绍
#include<reg52.h> #include<intrins.h>//调用_nop_()函数 #define uchar unsigned char #define uint unsigned int #define key P2 //键盘扫描口 sbit rs=P1^0; //液晶数据命令选择端 sbit w=P1^1; //液晶读写选择端 sbit en=P1^2; //液晶使能端 sbit MUTE=P1^3;//静音控制键 sbit DA=P1^4; //BH1415F数据输入端 sbit CLK=P1^5; //BH1415F时钟信号输入端 sbit CE=P1^6 ; //BH1415F使能端 uint data_fm; //11位频率控制字 void delay() //4微妙延迟 { _nop_(); _nop_(); _nop_(); _nop_(); } void delayms(int x) //毫秒延迟 { int i,j; for(i=x;i>0;i--) for(j=110;j>0;j--); } void write_lcdcom(uchar com) //向液晶屏送命令 { rs=0; w=0; en=0; P0=com; delayms(5); en=1; delayms(5); en=0; } void write_lcddata(uchar date) //向液晶屏送数据 { rs=1; w=0; en=0; P0=date; delayms(5); en=1; delayms(5); en=0; } void lcd_init() //液晶屏初始化 { write_lcdcom(0x38); write_lcdcom(0x0c); write_lcdcom(0x06); write_lcdcom(0x01); } void write_lcdfm(uint data1) // 将频率控制字转化为频率显示 { uint bai,shi,ge,fen; bai=data1/1000; shi=data1%1000/100; ge=data1%1000%100/10; fen=data1%1000%100%10; lcd_init(); if(bai) { write_lcdcom(0x80+0x40); write_lcddata(0x30+bai); } write_lcdcom(0x80+0x41); write_lcddata(0x30+shi); write_lcddata(0x30+ge); write_lcddata('.'); write_lcddata(0x30+fen); write_lcddata('M'); write_lcddata('H'); write_lcddata('z'); } void write_bh1415f(uint data2) //单片机将频率控制字写入BH1415F { int i; CLK=0; CE=0; CE=1; for(i=11;i>0;i--) //写入11位频率控制字 { DA=data2&0x01; data2>>=1; delay(); CLK=1; delay(); CLK=0; } DA=1; //MONO=1表示立体声开启 delay(); CLK=1; delay(); CLK=0; delay(); DA=0; delay(); CLK=1; delay(); CLK=0; delay(); DA=0; //PD0=0 PD1=0 表明PLL输出状态为正常模式 delay(); CLK=1; delay(); CLK=0; delay(); DA=1; //T0=1 delay(); CLK=1; delay(); CLK=0; delay(); DA=0; //T1=0 delay(); CLK=1; delay(); CLK=0; CE=0; } void keyscan() //键盘扫描程序 { uchar keytemp; key=0xf0; if(key!=0xf0) delayms(5); if(key!=0xf0) { keytemp=key; key=0x0f; keytemp=keytemp|key; while(key!=0x0f); switch(keytemp) { case 0xee:{data_fm++;if(data_fm>1020)data_fm=820; write_lcdfm(data_fm);write_bh1415f(data_fm);break;} //以0.1MHZ频率加 case 0xde:{data_fm--;if(data_fm<820)data_fm=1020; write_lcdfm(data_fm);write_bh1415f(data_fm);break;} //以0.1MHZ频率减 case 0xbe:{MUTE=~MUTE;break;} //静音控制 case 0xe7:{data_fm=820;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率82MHZ case 0xd7:{data_fm=840;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率84MHZ case 0xb7:{data_fm=860;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率86MHZ case 0x77:{data_fm=880;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率88MHZ case 0xeb:{data_fm=900;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率90MHZ case 0xdb:{data_fm=920;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率92MHZ case 0xbb:{data_fm=940;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率94MHZ case 0x7b:{data_fm=960;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率96MHZ case 0xed:{data_fm=980;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率98MHZ case 0xdd:{data_fm=1000;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率100MHZ case 0xbd:{data_fm=1020;write_lcdfm(data_fm); write_bh1415f(data_fm);break;} //预置频率102MHZ default:break; } } } void main() //主程序 { data_fm=920; MUTE=0; write_bh1415f(data_fm); write_lcdfm(data_fm);//初始化 while(1) { keyscan(); } }
评论
    相关推荐
    • 单片机课件
      能够帮助同学们快速的了解单片机并对于单片机的一些设计程序有一定的认知
    • 单片机课件
      单片机的课件及例题, 单片机的课件及例题, 单片机的课件及例题, 单片机的课 件及例题,
    • 爱上单片机
      一本电子爱好者都能看懂,会边看边笑的单片机入门书籍,作者杜洋曾在《无线电》上发表过“趣味单片机制作专题”、“单片机编程魔法学校”等深受读者喜爱、让无数单片机入门者热血沸腾的系列文章。本书通过生动的语言...
    • 单片机资料
      内含30个单片机应用开发的资料,包括配套单片机入门PPT。
    • 单片机课件
      单片机课的课件,对单片机的基础进行了全面的概述,也有非常精细的指导。
    • 单片机工具
      单片机工具 供单片机学习使用 免费资源 日后还会有更多资源 请联系我
    • 单片机课件
      单片机课件 ppt文件格式 介绍了单片机的结构、程序设计、定时器、中断等
    • 单片机教程
      这是一个单片机的教程,可以用于初次学习单片机的人学习。
    • 单片机入门
      很好的单片机学习资源,入门比较好适合对单片机的学习有兴趣的人,而且是名校的精彩讲解,
    • 爱上单片机
      《爱上单片机》本书是一本电子爱好者都能看懂,会边看边笑的单片机入门书籍,作者杜洋曾在《无线电》上发表过“趣味单片机制作专题”、“单片机编程魔法学校”等深受读者喜爱、让无数单片机入门者热血沸腾的系列文章...