LCD显示简易频率计 源程序.docx_第1页
LCD显示简易频率计 源程序.docx_第2页
LCD显示简易频率计 源程序.docx_第3页
LCD显示简易频率计 源程序.docx_第4页
LCD显示简易频率计 源程序.docx_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言源代码/=/* 小波电子工作室 All rights reserved*/* 个人主页:/niejinbo */* 文 件 名: lcd_freq_0715_2.c */* 功能概要: LCD显示简易频率计 */* MCU: STC89C52 晶振:11.0592Mhz */* 设 计 者: 聂金波 */* 完成日期: 2008-07-15 */* 当前版本: 0715_2 */* 改进说明: 暂无 */=/*头文件区*#include#include#include #include/*宏定义方便使用*#define uchar unsigned char#define uint unsigned int/*定义变量区*sbit dula=P26; /数码管段选sbit wela=P27; /数码管位选sbit lcden=P34; /LCD使能信号sbit lcdrs=P35; /LCD数据/命令选择信号sbit K5=P37; /按键uchar count,k,key;uchar tab_freq=0,0,0,10,0,0,11,12,13;uchar tab_nofreq=14,14,0,10,0,0,11,12,13;uchar code tab=0123456789.Khz;uchar code tab_1=Freq:;uchar code tab_time=2008-07-15-pm;/=/*函数声明区* void int_time1(); /定时器0void int_count0(); /计数器1void trans_count(); /转换为10进制void lcd_dis(); /lcd显示函数void lcd_init(); /LCD初始化函数void write_com(uchar); /写命令函数void write_data(uchar); /写数据函数void delay(uint); /延时函数void freq_key();/=/*主函数开始*void main()TMOD=0x11; /T0为计数模式:方式1 T1为定时模式:方式1 TH0=0; /T0计数初始值TL0=0;TH1=0x4c; /T1定时初始值TL1=0x00; /50MSEA=1;ET1=1; /允许T1定时中断ET0=1; /允许T0计数中断lcd_init(); write_com(1);while(1) freq_key();trans_count();lcd_dis();/=/*T0计数函数开始*void int_count0() interrupt 1k+;/*T1定时中断函数开始*void int_time1() interrupt 3TH1=0x4c;TL1=0x00; /50MScount+;if(count=20)count=0;TR0=0; /到1秒T0停止计数TR1=0; /T1停止定时/*数据转换函数开始*void trans_count()unsigned long int z;z=k*65536+TH0*256+TL0;if(z1000000) /最大量程为999999z=999999;tab_freq0=z/100000; /十万位tab_freq1=(z-tab_freq0*100000)/10000; /万位tab_freq2=(z-tab_freq0*100000-tab_freq1*10000)/1000; /千位tab_freq4=(z-tab_freq0*100000-tab_freq1*10000-tab_freq2*1000)/100; /十位tab_freq5=(z-tab_freq0*10000-tab_freq1*1000-tab_freq2*100)%10; /个位; /各位舍去为0/=/*lcd显示函数开始*void lcd_dis()uchar i,t;for(i=0;i5;i+)write_data(tab_1i); /显示Freq:write_com(0x80+5);for(i=0;i9;i+)t=tab_freqi;write_data(tabt); /显示频率值write_com(0x80+0x40);for(i=0;i0;i-)for(j=110;j0;j-);/=/*按键函数开始*void freq_key()if(K5=0)delay(3);if(K5=0)key+;while(K5=0);if

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论