+LCD显示—C程序

+LCD显示—C程序

ID:37973216

大小:146.00 KB

页数:11页

时间:2019-06-04

+LCD显示—C程序_第1页
+LCD显示—C程序_第2页
+LCD显示—C程序_第3页
+LCD显示—C程序_第4页
+LCD显示—C程序_第5页
资源描述:

《+LCD显示—C程序》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、数字频率计的设计[日期:2008-05-05] [来源:网络作者:佚名] [字体:大中小] (投递新闻)频率计是我们经常会用到的实验仪器之一,本实验要使用单片机和计数电路及液晶器件来设计一个宽频的频率计。期望达到10Hz-1.1G范围的频率精确测量。实验电路图(初步方案)1)计数及显示电路:2)前置放大及分频电路:设计思路频率的测量实际上就是在1S时间内对信号进行计数,计数值就是信号频率。用单片机设计频率计通常采用两种办法,1)使用单片机自带的计数器对输入脉冲进行计数,或者测量信号的周期;2)单片机外部使用计数器对脉冲信号进行计数

2、,计数值再由单片机读取。由于单片机自带计数器输入时钟的频率通常只能是系统时钟频率的几分之一甚至几十分之一,因此采用单片机的计数器直接测量信号频率就受到了很大的限制。本实验电路采用方式2,使用一片74LS393四位双二进制计数器和Atmega8的T1计数器组成了24位计数器,最大计数值为16777215。如果输入信号经过MB501分频器进行64分频后再进行测量,则固定1S时基下最高测量频率为1073.741760Mhz。为了方便得到准确的1秒钟测量闸门信号,我们使用了Atmega8的异步实时时钟功能,采用32.768Khz的晶振由T

3、C2产生1秒钟的定时信号。测量原理:单片机打开测量闸门,即PB1输出高电平,同时TC2定时器启动。74LS393开始对输入脉冲进行计数,74LS393每计数达256时,Atmega8的T1计数器也向上计数1次。当1S定时到达时,单片机产生中断,PB1输出低电平关闭测量闸门,然后Atmega8读取74LS393和T1的计数值,然后送LCD显示。实验进展2004-09-27根据设计思路编写程序初步获得了一些实验结果,如下图所示。下图是测量8M有源晶振的输出结果。由于1S的测量闸门时间在业余条件下不好测试,因此,实验程序中在LCD上同时

4、显示实时时钟用于判断1S闸门时间的准确性。实验中,我使用CDMA手机上显示的GPS卫星精确时间进行比较。手机时间显示的最小单位是分钟,测量时一旦手机分钟值发生跳变,则立即记录下LCD显示的秒值,这样的话让频率计运行一段时间后,再多次记录下LCD显示的秒,就可以准确判断频率计的异步时钟是否准确。实验过程中,我让频率计走了10个小数左右,测量的1S时钟还是非常准确的。#include#include#includelcd.h#include6x8.h#includechinese.h/*------------------------

5、-----------------------------------------------LCD_init:3310LCD初始化编写日期:2004-8-10最后修改日期:2004-8-10-----------------------------------------------------------------------*/voidLCD_init(void){PORTB&=~LCD_RST;//产生一个让LCD复位的低电平脉冲delay_1us();PORTB

6、=LCD_RST;PORTB&=~LCD_CE;//关闭

7、LCDdelay_1us();PORTB

8、=LCD_CE;//使能LCDdelay_1us();LCD_write_byte(0x21,0);//使用扩展命令设置LCD模式LCD_write_byte(0xc8,0);//设置偏置电压LCD_write_byte(0x06,0);//温度校正LCD_write_byte(0x13,0);//1:48LCD_write_byte(0x20,0);//使用基本命令LCD_clear();//清屏LCD_write_byte(0x0c,0);//设定显示模式,正常显示PORTB&=~LC

9、D_CE;//关闭LCD//LCD_clear();}/*-----------------------------------------------------------------------LCD_clear:LCD清屏函数编写日期:2004-8-10最后修改日期:2004-8-10-----------------------------------------------------------------------*/voidLCD_clear(void){unsignedinti;LCD_write_byte(

10、0x0c,0);LCD_write_byte(0x80,0);for(i=0;i<504;i++)LCD_write_byte(0,1);}/*----------------------------------------------------

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。