资源简介
采集,protues仿真,51系列单片机,显示在1602上
代码片段和文件信息
/********************************************************************
开发环境:Keil
单片机:AT89S52-24PU 晶振:12 MZ
程序描述: K型热电偶+MAX6675,LCD1602 显示
designed by YING
2012-08-29 21:16 完成
注:本程序只供学习参考之用,,请自行验证程序正确性及可靠性,请勿用于其它用途~~!!!
**************************定义头文件*****************************************/
#include
#include
/*******************************************************************/
//lcd part
#define LINE1 0
#define LINE2 1
#define LINE1_HEAD 0x80
#define LINE2_HEAD 0xC0
#define LCD_DELAY_TIME 40
#define DATA_MODE 0x38
#define OPEN_SCREEN 0x0C
#define DISPLAY_ADDRESS 0x80
#define CLEARSCREEN LCD_en_command(0x01)
#define HIGH 1
#define LOW 0
#define TRUE 1
#define FALSE 0
#define ZERO 0
#define MSB 0x80
#define LSB 0x01
/*******************************************************************/
#define LCDIO P1
sbit LCD1602_RS=P2^0; //设置RS
sbit LCD1602_RW=P2^1; //设置RW
sbit LCD1602_EN=P2^2; //设置E
sbit MAX6675_SO=P2^4;
sbit MAX6675_SCK=P2^5;
sbit MAX6675_CS=P2^6;
unsigned char data disdata[5];
unsigned int Value;
/********************************************************************/
void LCD_delay(void);//LCD延时函数
void LCD_en_command(unsigned char command);//LCD写指令
void LCD_en_dat(unsigned char temp);//LCD写数据
void LCD_set_xy( unsigned char x unsigned char y );//设置LCD显示位置
void LCD_write_char( unsigned xunsigned char yunsigned char dat);//向LCD写入一个字符
void LCD_write_string(unsigned char Xunsigned char Yunsigned char *s);//向LCD写入一串字符
void LCD_init(void);//LCD初始化函数
/********************************************************************/
void delay_nms(unsigned int n);//延时函数
/********************************************************************/
/***********************从MAX6675读取温度*********************************************/
unsigned int ReadMAX6675()
{
unsigned char count;
MAX6675_CS=1; //关闭MAX6675
//_nop_();
// _nop_();
MAX6675_CS=0;//置低,使能MAX6675
//_nop_();
MAX6675_SCK=1;
Value=0;
//_nop_();
//_nop_();
for(count=16;count>0;count--) //获取16位MSB
{
MAX6675_SCK=0; //sck置低
Value=Value<<1; //左移
if(MAX6675_SO==1) //取当前值
Value|=0x0001;
else
Value&=0xffff;
MAX6675_SCK=1;
//_nop_();
//_nop_();
//_nop_();
//_nop_();
}
MAX6675_CS=1; //关闭MAX6675
return Value;
}
/***************************************************************************************/
/**************************温度值显示 **************************************************/
void tempdisp()
{
unsigned int temp;
unsigned int TempValue;
unsigned int testD2;
unsigned int xiaoshu;
TempValue=ReadMAX6675();//读取MAX6675 转换后的温度数值;
TempValue=TempValue<<1; //去掉第15位
TempValue=TempValue>>3;//去掉第0~2位 注意:实物MAX6675,这里要要右移4位,即TempValue=TempValue>>3;
xiaoshu=TempValue*10;
TempValue=TempValue/4; //MAX6675最大数值为1023。75,而AD精度为12位,即2的12次方为40
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1154 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\header.htm
文件 388352 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.htm
文件 11726 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.LST
文件 14048 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.LST
文件 7064 2013-05-05 13:05 基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.c
....... 56188 2012-12-15 20:35 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602_uvopt.bak
....... 13392 2012-04-25 00:18 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602_uvproj.bak
文件 11800 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\16.OBJ
文件 749 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.OBJ
文件 11094 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602
文件 6376 2009-05-07 14:37 基于热电偶的测温系统设计\基于热电偶的测温系统设计\STARTUP.A51
文件 97441 2013-05-02 22:40 基于热电偶的测温系统设计\基于热电偶的测温系统设计\Last Loaded 1602.DBK
文件 97441 2013-05-02 22:54 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.DSN
文件 2236 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.hex
文件 39 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.lnp
文件 13860 2013-05-05 13:06 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.M51
文件 20480 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\oledata.mso
文件 361018 2005-03-10 21:27 基于热电偶的测温系统设计\IC说明书\at89S52中文手册.pdf
文件 142080 2012-05-26 11:39 基于热电偶的测温系统设计\IC说明书\MAX6675ISA.pdf
文件 261120 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\SMC1602A.pdf
文件 516 2013-05-05 13:07 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.plg
文件 768 2013-05-05 10:41 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.PWI
....... 56184 2013-05-05 13:07 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.uvopt
....... 13391 2012-09-01 08:41 基于热电偶的测温系统设计\基于热电偶的测温系统设计\1602.uvproj
文件 150848 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image060.wmz
文件 1855 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image062.wmz
文件 1772 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image064.wmz
文件 2358 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\filelist.xm
文件 84 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image001.gif
文件 84 2006-03-01 12:00 基于热电偶的测温系统设计\IC说明书\字符型液晶使用手册.files\image002.gif
............此处省略69个文件信息
- 上一篇:8086交通灯设计原理图和代码
- 下一篇:干扰对齐PPT
相关资源
- TMS320F28027 自带温度传感ADC的一个小程
- django+ajaxfileupload文件上传demo
- 消防稳压泵一用一备控制原理图
- 2018最新padsVX2.4完整版安装包破解文件
- AD7768_sai源代码
- 将cad块内实体的颜色更改为随层
- ADXL335加速度传感器
- s7-200系列cad图
- ads8320 源程序c
- ADS添加pdk教程
- transcad交通规划
- CAD中画螺孔快捷键
-
ST-li
nk Upgrade Firmware V2.J20.S4 - shaderX1-7和GPU Pro1-5
- CAD文字提取工具
- QT5.9.2+OpenGL,使用最新的QOpenGLWidget框
- ADF4350单片机MSP430控制程序
- stm32f4xxADS1256驱动
- 凸轮ADAMS仿真
- 基于Verilog的SPI总线写数据
- TLV3501封装(AD封装/Altium Designer封装)
- TPS767D301封装(AD封装/Altium Designer封装
- 离合器CAD图纸
- googleearth与cad格式相互转换工具
- AD元器件库封装库
- 微带线带通滤波器的ADS辅助设计
- 基于Vivado的精简指令CPU设计
- PSCAD 新型 故障限流器FCL仿真短路电流
- hadoop+lucene几种结合形式
- DBGrid 单行修改、单列修改、选中一行
评论
共有 条评论