高人看看,单片机C程序,温度值读不进去咋回事
发布时间:2011-06-30 07:25:13 文章来源:www.iduyao.cn 采编人员:星星草
高人看看,单片机C程序,温度值读不进去怎么回事?
#include<reg51.h>
#include<absacc.h>
#define SEND_INIT XBYTE[0xf400]
#define SEND_DATA XBYTE[0xf500]
#define READ_BUSY XBYTE[0xf600] //
#define READ_DATA XBYTE[0xfF00] //读点地址
#define COM8155 XBYTE[0x8000]
#define PB XBYTE[0X8002]
#define PC XBYTE[0X8003]
#define DQ PA5
#define uchar unsigned char
#define uint unsigned int
#define comm 0 //定义传送指令代码为0
#define dat 1
bit busy;
sbit DQ=P1^0; //ds18b20与单片机连接口
sbit RS=P2^0;
sbit RW=P2^1;
sbit EN=P2^2; //定义LCD忙标志位
void first();// 初始化
void wr_lcd (uchar dat_comm,uchar content); //写控制字与数据
void wr_str(unsigned char addr,unsigned char counts,const unsigned char *ps);//写字符串
void chk_busy (void);
void delay (uint us);
void init_lcd();
void clrram(void);
void loose();
void dshi();
void dge();
void Write_hms(uint add,uchar date) ;
uchar data disdata[5];
uint tvalue; //温度值
uchar tflag; //温度正负标志
uchar yu=0;
uint a=5,b;
uchar shi=0,ge=0,ai;//定义变量
uchar code TAB1A[]={"题目:时钟显示"};
uchar code TAB1B[]={"时间: 00: 00: 00"};
uchar code TAB1C[]={"摄氏温度: 0000"};
uchar code TAB1D[]={"华氏温度:00"};
//uchar code disdata[]={0,1,2,3};
uchar miao,fen,shi;
/******************************************************************************************
* 函数名称 :init_lcd
* 功能描述 :初始化LCD
******************************************************************************************/
void init_lcd()
{ wr_lcd(comm,0x30); //0011 0000 扩充功能设定——8位数据 基本指令操作
wr_lcd(comm,0x34); //扩展指令操作
wr_lcd(comm,0x01); //0000 0001 清屏——将DDRAM填满"20H",并且设定DDRAM的地址计数器为"00H"
wr_lcd(comm,0x06); //0000 0110 进入点设定——指定在数据的读取与写入时,设定游标的移动方向
wr_lcd(comm,0x0c); //0000 1100 游标或显示移位控制——开显 //开显示,关光标,不闪烁
}
/******************************************************************************************
* 函数名称 :clrram
* 功能描述 :将DDRAM填满"20H",并且设定DDRAM的地址计数器(AC)到"00H"
******************************************************************************************/
void clrram(void)
{
wr_lcd(comm,0x30);
delay(10);
wr_lcd(comm,0x01);
delay(10);
}
/*********写字符串**************************************/
void wr_str(unsigned char addr,unsigned char counts,const unsigned char *ps)
{
int i;
wr_lcd(comm,addr);
delay(1);
for(i=counts;i>0;i--) //循环counts次
{
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
erlang:创建表
mnesia:create_table(student, [{attributes,{name,number,sex}}]).
怎么老是提示:
{aborted,{bad_type,student,{...
-
100分求助,matlab一维矩阵变成二维矩阵,怎么感觉我写的代码这么绕呢
希望把Input矩阵(一维)变成3行4列的二维矩阵Output;我写了下面...
-
为什么没有易语言版块呢?
为什么没有易语言版块呢?
------解决方案--------------------
易语言,还不常用,交流也不比,所以无....
-
批处理的一个问题
想用批处理更改文件属性
@echo off
arrtib -R /S E:\home\*.*
exit
这样写是错误的吗?
为什么没起作用啊
--...
-
几个关于大型机的问题(新手求救啊~)
1、z/OS 和UNIX系统的相同点和相异点有哪些啊?主目录和用户目录的区别是什么啊?
2、用JCL创建一...
-
急求!如何用正则截取一对标签中的字符当中的日期
<p class="source">
<!--[if !IE]>收藏功能<!...
-
批处理代码放在U盘里,如何复制整个硬盘的时间段文件? qivsran老师的答案,谢谢!
@echo off
md 新文件
setlocal enabledelayedexpa...
-
复制文件不带目录文件夹如何修改代码?同名文件仅复制最新的
@echo off
md %computername%资料 2>nul
Cd /d %computername%资料
F...
-
求C里面 全角半角转换函数
求C里面 全角半角转换函数
------解决方案--------------------
我在别处看了,希望对你有帮助。
...
-
求助:关于qtp10 无法识别 maven自动构建flex3.6 的问题
近日遇到maven自动构建flex3.6的问题。希望大家提出宝贵意见。
问...