资源简介
027 简易电子秤 LCD1602显示 超重报警 proteus仿真 51单片机

代码片段和文件信息
#include
#include
#include
#include
#include
#include “LCD1602.h“ //LCD1602液晶头文件
#define uint unsigned int
#define uchar unsigned char
/************端口定义********************/
sbit CS=P1^0; //ADC0832片选
sbit CLK=P1^1; //ADC0832时钟
sbit DIO=P1^2; //ADC0832输入输出
sbit K1=P3^0; //加
sbit K2=P3^1; //减
sbit LED=P3^2; //灯
sbit BEEP=P3^3; //灯
void delay(uint t) //延时Xms
{
uchar ttt;
while(t--)
{
for(ttt=125;ttt<0;ttt++);
}
}
/*****************************************/
/********ADC0832的A/D转换程序************************/
uchar Get_AD_Result(uchar ch)
{
uchar idat1=0dat2=0;
CS = 0; _nop_(); _nop_(); //片选使能,低电平有效
CLK = 0; _nop_(); _nop_(); //芯片时钟输入
DIO = 1; _nop_(); _nop_();
CLK = 1; _nop_(); _nop_();
//第1个下降沿之前,设DI=1/0
//选择单端/差分(SGL/DIF)模式中的单端输入模式
CLK = 0;DIO = 1; _nop_(); _nop_();
CLK = 1; _nop_(); _nop_();
//第2个下降沿之前设置DI=0/1选择CHO/CH1
CLK = 0;
if(ch==0)
DIO = 0; //通道0 内部电压测试
else DIO = 1; //通道1
_nop_(); _nop_();
CLK = 1; _nop_(); _nop_();
//第3个下降沿之前设置DI=1
CLK = 0;DIO = 1; _nop_(); _nop_();
//第4-11个下降沿读数据(MSB->LSB)
for(i=0;i<8;i++)
{
CLK = 1; _nop_(); _nop_();
CLK = 0; _nop_(); _nop_();
dat1 = dat1 << 1 | DIO;
}
//第11-18个下降沿读数据(LSB->MSB)
for(i=0;i<8;i++)
{
CLK = 1; _nop_(); _nop_();
CLK = 0; _nop_(); _nop_();
dat2 = dat2 << ((uchar)(DIO)< }
CS = 1;//取消片选一个周期结束
//如果MSB->LSB和LSB->MSB读取的结果相同则返回读取的结果否则返回0
return dat1;
// return (dat1 == dat2) ? dat1:0;//取消校验
}
/*****************************************/
/**********主程序*************************/
void main()
{
char adc5adc6adc7;
unsigned long adcdata=0;
unsigned long maxweight=400;
LCD1602_init();
LCD1602_Print(00“WEIGHT: kg“);
LCD1602_Print(01“MAX: kg“);
LED=1;
BEEP=1;
while(1)
{
/////////////获取 adc 单位0.01kg
adcdata=(unsigned long)(Get_AD_Result(0)*1.9608-1);
/////////////转换数据
adc5=adcdata%1000/100;
adc6=adcdata%100/10 ;
adc7=adcdata%10/1;
/////////////显示数据
GotoXY(70);
LCD1602_Write(1adc5+0x30);
LCD1602_Write(1‘.‘);
LCD1602_Write(1adc6+0x30);
LCD1602_Write(1adc7+0x30);
/////////////转换数据
adc5=maxweight%1000/100;
adc6=maxweight%100/10 ;
adc7=maxweight%10/1;
/////////////显示数据
GotoXY(71);
LCD1602_Write(1adc5+0x30);
LCD1602_Write(1‘.‘);
LCD1602_Write(1adc6+0x30);
LCD1602_Write(1adc7+0x30);
///////////////开关处理
if(K1==0)
{
while(K1==0);
maxweight+=10;
}
if(K2==0)
{
while(K2==0);
maxweight-=10;
}
///////////////报警处理
if(adcdata>maxweight)
{
LED=0;
BEEP=0;
}else
{
LED=1;
BEEP=1;
}
delay(100);
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-04-24 16:34 027 简易电子秤\
文件 93782 2018-06-19 19:58 027 简易电子秤\QQ图片20180619195841.jpg
目录 0 2019-04-24 16:34 027 简易电子秤\电子秤仿真\
文件 22397 2018-06-19 20:38 027 简易电子秤\电子秤仿真\Backup Of dainzic.pdsbak
文件 22457 2018-06-22 15:21 027 简易电子秤\电子秤仿真\dainzic.pdsprj
文件 2244 2019-04-24 16:34 027 简易电子秤\电子秤仿真\dainzic.pdsprj.ANOOP.PC1.workspace
文件 22420 2018-06-21 20:18 027 简易电子秤\电子秤仿真\Last Loaded dainzic.pdsbak
文件 5025 2018-03-24 20:56 027 简易电子秤\电子秤仿真\LCD1602.h
文件 3071 2018-06-21 20:25 027 简易电子秤\电子秤仿真\main.c
文件 7533 2018-06-21 20:27 027 简易电子秤\电子秤仿真\main.LST
文件 17163 2018-06-21 20:27 027 简易电子秤\电子秤仿真\main.OBJ
文件 16205 2018-06-21 20:27 027 简易电子秤\电子秤仿真\PWM_MOTOS
文件 5405 2018-06-21 20:27 027 简易电子秤\电子秤仿真\PWM_MOTOS.hex
文件 45 2018-06-21 20:27 027 简易电子秤\电子秤仿真\PWM_MOTOS.lnp
文件 15609 2018-06-21 20:27 027 简易电子秤\电子秤仿真\PWM_MOTOS.M51
文件 2176 2018-06-21 20:27 027 简易电子秤\电子秤仿真\PWM_MOTOS.plg
文件 71192 2019-04-24 16:34 027 简易电子秤\电子秤仿真\PWM_MOTOS.uvgui.PC1
文件 4953 2019-04-24 16:34 027 简易电子秤\电子秤仿真\PWM_MOTOS.uvopt
文件 13776 2019-04-24 16:34 027 简易电子秤\电子秤仿真\PWM_MOTOS.uvproj
文件 56052 2018-06-21 19:02 027 简易电子秤\电子秤仿真\PWM_MOTOS_uvopt.bak
文件 0 2018-05-13 17:17 027 简易电子秤\电子秤仿真\PWM_MOTOS_uvproj.bak
文件 15453 2018-06-22 11:31 027 简易电子秤\电子秤仿真\新建 Microsoft Word 文档.docx
文件 8615 2018-06-22 11:27 027 简易电子秤\电子秤仿真\新建文本文档.txt
文件 274617 2018-11-21 20:51 如何运行仿真.docx
文件 691 2019-04-24 15:13 说明书.txt
- 上一篇:全国各地邮政编码大全
- 下一篇:Socket实现qq聊天
相关资源
- SpringBoot+H2+mybatis-plus59130
- Navicat Premium 15汉化包.zip55438
- res10_300x300_ssd_iter_140000.caffemodel与dep
- 《Visual Prolog 集成开发环境(下)》
- 《Visual Prolog 基础类》 中文参考.chm
- 我的界面(visual foxpro)源码
- Apolipoprotein E4 Impairs in vivo Hippocampal
- 周立功开发板ProASIC3实验-syn_FIFO代码
- Zprotect专业版(无限制) 一机一码E
- 51单片机PWM程序,占空比、周期可调整
- 信号估计DOAmusicespritcapon
- PIC单片机完成的电子密码锁
- BCG帮助手册,完整版_修正
- proteus仿真 AT89C51输出各种波形
- 00
- DXperienceUniversal 10.1.6(2010年8月13日版
- 51单片机基于protues的几个仿真实例
- DOS播放器 QuickViewPro破解版
- VPC3_DPV1源代码,Profibus
- 关联分析Apriori算法实现
- GPRS(MC35型号)的发送短信程序
- 步进电机protues仿真
- 51单片机读取温度数据存储到SD卡中并
- 【单片机】51单片机数码管显示万年历
- 现代谱估计算法 music ESPRIT 谐波分解
- proteus_24C08—有注释(proteus里面使用的
- DevExpress之TreeList使用示例
- 毕业设计 单片机 对讲机 protues仿真
- 数据采集系统——ADC0808的应用,单片
- WinForm属性编辑 propertyGrid示例 仿wind
评论
共有 条评论