下载 >  开发技术 >  C > ds18b20(液晶显示12864)

ds18b20(液晶显示12864)

2010-12-27 上传大小:10KB
分享
此为12864显示的ds18B20
************液晶显示子程序**********************************//
#define DATA_OUT PORTA
#define DATA_IN PINA //端口定义使用=============
#define DATA_DIR DDRA //使用寄存器================
#define CNTL PORTB
#define CNTL_DIR DDRB
#define OUT 0xff
#define IN 0x00

#define RS 0
#define RW 1
#define E 2
/******************************************************************** */
#define SETBIT(x,y) (x|=(1<<y)) //set bit y in byte x
#define CLRBIT(x,y) (x&=(~(1<<y))) //clear bit y in byte x
#define CHKBIT(x,y) (x&(1<
                            <y)) //check bit y in byte x
/******************************************************************** */
uchar character1[]="关于显示器的问题";
uchar character2[]="数字信号是要测量";
uchar character3[]="液晶显示效果是好";
uchar character4[]="显示效果还是加强";
uchar adress_table[][8]={
{0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87},//第一行汉字位置 
{0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97},//第二行汉字位置 
{0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F},//第三行汉字位置 
{0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F},//第四行汉字位置
}; 
/************************************************************ 
* 函数名称:void DelayMS(unsigned int time) 
* 功 能:软件延时 1/1000s 
* 入口参数:time 延时时间 MS 
* 出口参数:无 
************************************************************ 
void DelayMS(uint time) 
{ 
uint i; 
while(time--) 
{ 
for(i=1;i<(uint)(xtal*143-2);i++) 
; 
} 
} 

*/
/*-----------------------------------------------------
状态检查函数,判断是否处于忙状态
-------------------------------------------------------*/
void CheckState()
{
//unsigned char dat;
//CLRBIT(CNTL,RS); //RS=0
CLRBIT(CNTL,RS); //RS=0
SETBIT(CNTL,RW); //RW=1
DATA_DIR=IN; // portd as input
do
{
SETBIT(CNTL,E);
CLRBIT(CNTL,E);
}
while (DATA_IN&0x80);
}


/*----------------------------------------------
写显示数据
形参dat:显示数据
-------------------------------------------------*/
void write_data(unsigned char dat)
{
CheckState();
SETBIT(CNTL,RS);
CLRBIT(CNTL,RW);

DATA_DIR=OUT; //portd as output
DATA_OUT=dat;
SETBIT(CNTL,E);
CLRBIT(CNTL,E);
}


/*-------------------------------------------------
向LCD发送命令
形参command :命令
--------------------------------------------------*/
void write_command(unsigned char command)
{
CheckState();
CNTL_DIR=OUT;
//PORTB&=0xfc;
CLRBIT(CNTL,RS); //RS=0,RW=0
CLRBIT(CNTL,RW);

DATA_DIR=OUT; //portd as output
DATA_OUT=command;
SETBIT(CNTL,E);
CLRBIT(CNTL,E);
}

void LCD_Init(void)
{ 
Init_IO();
write_command(0x30);//功能设置 8位数据,基本指令
write_command(0x0C); //显示状态 ON,游标OFF,反白OFF 
write_command(0x01); //清除显示 
write_command(0x02); //地址归位 
write_command(0x80); //设置DDRAM地址
} 
void display_CGROM(uchar row,uchar column,uchar *p)
{ //while(row<4&&((*p)!='\0'))
//{
while(column<8&&((*p)!='\0'))
{
write_command(adress_table[row][column]);
write_data(*p++);
write_data(*p++);
column++;
}
//column=0;
//row++; 
// }
}
//============液晶子程序=========================//
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////
void main(void)
{ 

Init_IO(); //初始化I/O口
TCCR0=0x03; //T/C0工作于定时方式,系统时钟64分频
TCNT0=0x83; //计数初始值83
_SEI();
TIMSK=0x01;
LCD_Init(); 
while(1)
{
Display_ds18B20();
}
}                        
...展开收缩
综合评分:5
开通VIP 立即下载

评论共有2条

hnimkfpr 2018-02-08 16:49:47
还行,适合初学者学习。。。
zha2233568 2014-09-11 16:57:32
时序很清晰,思路很明确,谢谢分享!!
 
12864液晶图片显示程序详细步骤及指令解释 立即下载
积分/C币:3
温度测试 DS18B20精确计算,含一位小数, 液晶显示,用的是12864 立即下载
积分/C币:3
MSP430单片机DS18B20测温、LCD1602显示、报警 立即下载
积分/C币:3
基于单片机的DS18B20温度采集,液晶屏12864显示 立即下载
积分/C币:3
lcd12864有字库显示(汇编语言例程) 立即下载
积分/C币:3
12864液晶屏程序详解 立即下载
积分/C币:3
单片机程序(DS18B20-液晶1602显示温度和控制) 立即下载
积分/C币:3
基于51单片机和LCD12864显示的多功能万年历 立即下载
积分/C币:3
通过DS18B20检测环境温度,并在LCD12864上实时显示温度。 立即下载
积分/C币:1
12864液晶显示程序 立即下载
积分/C币:3

热点文章

VIP会员动态

推荐下载

关闭
img

spring mvc+mybatis+mysql+maven+bootstrap 整合实现增删查改简单实例.zip

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
点击完成任务获取下载码
输入下载码
为了良好体验,不建议使用迅雷下载
img

ds18b20(液晶显示12864)

会员到期时间: 剩余下载个数: 剩余C币: 剩余积分:0
为了良好体验,不建议使用迅雷下载
VIP下载
您今日下载次数已达上限(为了良好下载体验及使用,每位用户24小时之内最多可下载20个资源)

积分不足!

资源所需积分/C币 当前拥有积分
您可以选择
开通VIP
4000万
程序员的必选
600万
绿色安全资源
现在开通
立省522元
或者
购买C币兑换积分 C币抽奖
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
为了良好体验,不建议使用迅雷下载
确认下载
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 0 0
为了良好体验,不建议使用迅雷下载
开通VIP
img

资源所需积分/C币 当前拥有积分 当前拥有C币
5 4 45
您的积分不足,将扣除 10 C币
为了良好体验,不建议使用迅雷下载
确认下载
下载
无法举报自己的资源

兑换成功

你当前的下载分为234开始下载资源
你还不是VIP会员
开通VIP会员权限,免积分下载
立即开通

你下载资源过于频繁,请输入验证码

您因违反CSDN下载频道规则而被锁定帐户,如有疑问,请联络:webmaster@csdn.net!

举报

若举报审核通过,可返还被扣除的积分

  • 举报人:
  • 被举报人:
  • *类型:
    • *投诉人姓名:
    • *投诉人联系方式:
    • *版权证明:
  • *详细原因: