资源简介
基于51单片机和lm371的发射机程序,功能基本齐全,调试通过!
代码片段和文件信息
#include
#include
#define uchar unsigned char
#define uint unsigned int
sbit radio_clk = P3^0;//串行通信时要使用的同步时钟
sbit radio_di = P3^1;//串行数据输入。单片机--》PLL
sbit radio_ce =P3^2;//片选信号
uchar bdata fl=0fh=0col=0;
sbit sns=col^0;//
sbit dvs=col^1;
sbit cte=col^2;//测量中频开始或结束 1:开始 2:结束复位
sbit xs=col^3;//晶振设置 1:7.2M 0: 4.5M
sbit r0=col^4;//参考频率设置
sbit r1=col^5;
sbit r2=col^6;
sbit r3=col^7;
#define Lcd_Data P0
#define Busy 0x80 //用于检测Lcd中的忙标识
sbit Lcd_RS=P2^7;
sbit Lcd_RW=P2^6;
sbit Lcd_E=P2^5;
sbit key1=P1^0; //频率按键加定义
sbit key2=P1^1; //频率按键减定义
sbit key3=P1^2; //频段选择按键
uint wqbsgmnnum1num2=0l=0j=0;
uint Cfreq=9800; //初开机显示的频率
#define RdCommand 0x01 //定义ISP操作
#define PrgCommand 0x02
#define EraseCommand 0x03
#define WaitTime 0x01 //定义CPU等待时间
sfr ISP_DATA=0xe2; //寄存器声明
sfr ISP_ADDRH=0xe3;
sfr ISP_ADDRL=0xe4;
sfr ISP_CMD=0xe5;
sfr ISP_TRIG=0xe6;
sfr ISP_CONTR=0xe7;
//**************各函数声明**************//
void Lcd_WriteData(uchar TempData);//各函数声明
void Lcd_WriteCmd(uchar TempData uchar BuysC);
uchar ReadDataLcd(void);
uchar ReadStatusLcd(void) ;
void Lcd_DisplayOneChar(uchar X uchar Y uchar DData);
void Lcd_DisplayString(uchar X uchar Yuchar *DData);
void Lcd_Init(void); //LCD初始化;
void fredisplay();// 频率显示函数
void keyscan(); // 键盘扫描函数
void soucrescan();// 信号源扫描函数
void tx_dat(uchar i);// lc72131传递8个字节函数
void rd_cmd();// 向lc72131传送数据函数
void Read_Epprom(); // 开机读各保存数据
uchar byte_read(uint byte_addr);// 读数据函数
void SectorErase(uint sector_addr);// 擦数据函数
void byte_write(uint byte_addr uchar original_data) ;// 写字节函数
void Delay(uint Delay_Time)
{
while(Delay_Time--);
}
void main()
{
uint kz=0;
TMOD=0x01; // 设置定时器0工作方式1
TH0=(65536-55000)/256;// 定时器赋初值
TL0=(65536-55000)%256;
EA=1;//开中断
ET0=1;
TR0=1;
Lcd_Init(); //lcd初始化
Lcd_DisplayString(30“WelcomeUse“);
Lcd_DisplayString(41“AG-FM2008“);//开机显示内容
Delay(500000); Delay(500000);
Delay(500000); Delay(500000);
Delay(500000); Delay(500000);
Delay(500000); Delay(500000);
Delay(500000); Delay(500000);
Lcd_WriteCmd(0x011); //开机短暂显示后清屏
Delay(5000000); Delay(500000);
Read_Epprom();//开机读各数据
while(1)
{
fredisplay();
keyscan();//按键扫描
soucrescan();//信号源扫描
Lcd_DisplayString(00“AHGD“);
Lcd_DisplayString(01“FM:“);
Lcd_DisplayString(80“DS:“);
Lcd_DisplayString(91“MHz“);
rd_cmd();
if(num2>=1)//定时时间到后进行数据的保存
{
for(k=0;k<7;k++)
{
SectorErase(0x2000+z); //保存数据先擦除扇区内容
z=z+2;
}
byte_write(0x2000 w); //存数据万位
byte_write(0x2002 q);
byte_write(0x2004 b);
byte_write(0x2006 s);
byte_write(0x2008 g);
byte_write(0x2010 l); //存信号源标志位
//byte_write(0x2012 j); //存频段标志位
}
}
}
void soucrescan()
{
P3=P3&00001111;
if(P3^5=
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9961 2002-01-01 08:36 8.1.c
----------- --------- ---------- ----- ----
9961 1
- 上一篇:倒频谱程序
- 下一篇:VC控制Excel的示范源码--不错的选择
相关资源
- Keil C51 V900注册机,完全破解无限制
- 51单片机与PC间的WIFI通信
- 基于AT89C51单片机的温度测量设计
- AT89C51中文资料手册,应该是官方版的
- W78E516中文手册
- LCD12864(KS0108) C51程序
- 原创自己动手写实时操作系统能够在
- 单片机控制继电器模块电路原理图,
- lena 图片 512*512 gray and color
- TC35发送英文短信C51
- 8051与1601LCD设计的计算器
- 51单片机到TC35(GSM)发送接收程序
- 基于STM32的GPS定位接收显示
- TFT 240*320 ST7789 C51-STC单片机
- 基于AD9851的扫频系统
- 基于单片机的红外风扇遥控原理图与
- luvcview_20070512.tar.gz
- MSC51单片机 汇编语言 循环显示0到99程
- 基于51的超声波测距数码管显示
- 基于单片机的路灯自动控制系统
- at89c51与ad0808实现电压采集
- 三字节乘以三字节mcs-51单片机
- 51单片机Ds1302及温度Ds18B20+1602液晶显示
- 基于89C51单片机的脉冲宽度的测量设计
- 51单片机学习型红外遥控器C代码
- 智能大棚单片机源码
- C51单片机数字温度计源程序与论文.
- C8051F020产生方波正弦波三角波
- jdk8 jdk-8u251-windows-x64 网盘
- c51单片机跑马灯单键控制
评论
共有 条评论