标题:
电子秤仿真+单片机代码
[打印本页]
作者:
兔兔与
时间:
2018-12-9 17:13
标题:
电子秤仿真+单片机代码
电子秤仿真原理图如下(proteus仿真工程文件可到本帖附件中下载)
0.png
(23.56 KB, 下载次数: 38)
下载附件
2018-12-10 03:15 上传
单片机源程序如下:
/**********************************************************************************
注:质量计算函数:位于adc0804.c文件
价格计算函数:位于key.c文件
仿真:使用方法———键盘输入一个数,再输入+ - * /,最后输入等号,得到结果
eg:4*=
**********************************************************************************/
#include <reg52.h>
#include "function.h"
#include "setting.h"
#include "lcd.h"
#include "key.h"
#include "adc0804.h"
uchar quantity_analog=0; //存放物体质量数据_ADC读取的模拟量
float quantity_digital=0; //存放物体质量数据_ADC转换后的数字量
float price=0; //存放价格参数
void main(void)
{
// char *string = "Total:"; //字符
lcd_init(); //初始化lcd
init_interrupt(); //中断打开、选择函数
write_com(0x80); //数据指针定位到第一行第一个字处
write_com(0x80+8); //将光标移到 距离数字的位置
delay_ms(100);
// print_string_location(0,2,string); //显示Price 字符串
print_string_location(0,2,"Total:"); //显示Price 字符串
while(1)
{
key_scan(); //扫描按键函数
quantity_digital=quantity_count(); //获取物体质量———————————————浮点型(float)
price =price_count(); //获取键盘输入,计算后的价格——浮点型(float)
print_weight(0,1); //显示质量
if(price>0) //大于0时显示价格
{
print_price(0,2); //显示价格
while(1) //计算结束,等待清零键按下
{
key_scan();
if(key == ' ')
{
system_init(); //系统复位函数
break;
}
}
}
if(key == ' ')
system_init(); //系统复位函数
}
}
/*******************************************************************************/
/*
//外部中断 P3^3 ,用于识别键盘输入
void temer1() interrupt 3
{
EX1=0;
Matrix_key_num=key_scan();
EX1=1;
}
*/
复制代码
0.png
(38.37 KB, 下载次数: 46)
下载附件
2018-12-10 03:16 上传
所有资料51hei提供下载:
电子秤.zip
(237.68 KB, 下载次数: 92)
2018-12-9 17:13 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
我叫电烙铁
时间:
2018-12-10 15:54
做的好棒 点赞
作者:
1499049056
时间:
2020-3-11 14:17
这个仿真可以啊 不错
作者:
xst
时间:
2020-6-10 11:11
这键盘运算不对啊
作者:
18727305772
时间:
2020-6-10 20:23
做的很好,很棒,点个赞
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1