当前位置:文档之家› 基于单片机多功能电子计价秤系统设计(程序)

基于单片机多功能电子计价秤系统设计(程序)

基于单片机多功能电子计价秤系统设计(程序)
基于单片机多功能电子计价秤系统设计(程序)

基于单片机多功能电子计价秤系统设计

主程序TEST.c:

#include

u8 table8[]="THANK YOU!";

u8 Hshi=4,Hge=0,Lshi=1,Lge=0,pshi,pge,pxiao; 温度的上下限设置的参数和价格的上下限设置的参数;

u8 clear_up; 清屏的标志位

int main()

{

u8 i,weight[5],t,total1[6];

u32 weightval,Lheight;

float Tempheight,total;

short temp;

Stm32_Clock_Init(9); stm32时钟的初始化

delay_init(72); 延时程序的初始化

uart_init(72,9600); 串口的初始化

io_init(); 对液晶所接的IO口的初始化

lcd_init(); 液晶的初始化

Adc_Init(); AD模块的初始化

Init_Display(); 电子秤开始界面的初始化

DS18B20_Init(); ds18b20温度传感器的初始化

KEY_Init(); 功能键、加键和减键三个独立按键的初始化LED_Init(); LED灯的初始化

PWM_Init(18000,0);

while(1)

{

t=KEY_Scan();

temp=DS18B20_Get_Temp();

if(temp>(Hshi*10+Hge)*10)

{

LED1=1;

delay_ms(300);

LED1=0;

}

else if(temp<(Lshi*10+Lge)*10)

{

LED0=1;

delay_ms(300);

LED0=0;

}

else

{

1

LED0=0;

LED1=0;

}

switch(t)

{

*为回到主界面进行清屏*

case 0:

write_com(0x01);

break;

*显示设置单价的值和温度的上、下限*

case 1:

pshi=0; 初始化单价的十、个和小数

pge=0;

pxiao=0;

if(clear_up==0)

{

write_com(0x01); 清屏

clear_up=1; 已经清屏的标志位

}

write_com(0x80); 显示PRICES字样

for(i=0;i<6;i++)

{

write_date(table2[i]);

delay_ms(5);

}

write_com(0x80+10); 显示HT字样

for(i=0;i<2;i++)

{

write_date(table5[i]);

}

write_com(0x80+13); 显示LT字样

for(i=0;i<2;i++)

{

write_date(table6[i]);

}

*显示购买物品的单价*

write_com(0x80+0x40);

write_date(0x5c); 显示钱的标志

for(i=0;i<4;i++)

{

if(i==2)

write_date(0x2E);

else

write_date(0x30);

}

*显示温度值的上下限的设定值*

write_com(0x80+0x40+10);

write_date(0x30+Hshi);

write_date(0x30+Hge);

write_com(0x80+0x40+13);

write_date(0x30+Lshi);

write_date(0x30+Lge);

break;

*单价的十位进行加1*

case 2:

write_com(0x80+0x40+1);

pshi++;

if(pshi==10)

pshi=0;

write_date(0x30+pshi);

break;

*单价的十位进行减1*

case 3:

write_com(0x80+0x40+1);

pshi--;

if(pshi>10)

pshi=9;

write_date(0x30+pshi);

break;

*单价的个位进行加1*

case 4:

write_com(0x80+0x40+2);

pge++;

if(pge==10)

pge=0;

write_date(0x30+pge);

break;

*单价的个位进行减1*

case 5:

write_com(0x80+0x40+2);

pge--;

if(pge>10)

pge=9;

write_date(0x30+pge);

break;

*单价的小数位进行加1*

case 6:

write_com(0x80+0x40+4);

if(pxiao==10)

pxiao=0;

write_date(0x30+pxiao);

break;

*单价的小数位进行减1*

case 7:

write_com(0x80+0x40+4);

pxiao--;

if(pxiao>10)

pxiao=9;

write_date(0x30+pxiao);

break;

*温度上限的十位进行加1*

case 8:

write_com(0x80+0x40+10);

Hshi++;

if(Hshi==10)

Hshi=0;

write_date(0x30+Hshi);

break;

*温度上限的十位进行减1*

case 9:

write_com(0x80+0x40+10);

Hshi--;

if(Hshi>10)

Hshi=9;

write_date(0x30+Hshi);

break;

*温度上限的个位进行加1*

case 10:

write_com(0x80+0x40+11);

Hge++;

if(Hge==10)

Hge=0;

write_date(0x30+Hge);

break;

*温度上限的个位进行减1*

case 11:

write_com(0x80+0x40+11);

Hge--;

if(Hge>10)

Hge=9;

write_date(0x30+Hge);

*温度下限的十位进行加1*

case 12:

write_com(0x80+0x40+13);

Lshi++;

if(Lshi==10)

Lshi=0;

write_date(0x30+Lshi);

break;

*温度下限的十位进行减1*

case 13:

write_com(0x80+0x40+13);

Lshi--;

if(Lshi>10)

Lshi=9;

write_date(0x30+Lshi);

break;

*温度下限的个位进行加1*

case 14:

write_com(0x80+0x40+14);

Lge++;

if(Lge==10)

Lge=0;

write_date(0x30+Lge);

break;

*温度下限的个位进行减1*

case 15:

write_com(0x80+0x40+14);

Lge--;

if(Lge>10)

Lge=9;

write_date(0x30+Lge);

break;

*在这个界面上显示温度值和称重的值*

case 16:

weightval=ReadCount(); 读出AD转化之后的值

*减去电子秤台的重量*

if(weightval<183)

Lheight=0;

else

Lheight = weightval-183;

Tempheight=(float)(Lheight0.44); 对读出的AD的值转化为单位为g的值

Lheight=(u16)(Tempheight);

*取出每一位的值并存入到一个数组当中* weight[4]=Lheight%10;

weight[3]=(Lheight%100)10;

weight[2]=(Lheight%1000)100;

weight[1]=(Lheight%10000)1000;

weight[0]=(Lheight%100000)10000;

*在1602上显示WEIGHT字符*

write_com(0x81);

for(i=0;i<6;i++)

{

write_date(table1[i]);

delay_ms(5);

}

*在1602上显示所测出的质量的大小值*

write_com(0x80+0x40); 显示前两位for(i=0;i<2;i++)

{

write_date(weight[i]+0x30);

delay_ms(5);

}

write_date(0x2e); 显示小数点

for(i=2;i<5;i++) 显示后三位

{

write_date(weight[i]+0x30);

delay_ms(5);

}

write_date(0x6B); 显示k

write_date(0x67); 显示g

write_com(0x80+11); 显示字符TEMP

for(i=0;i<4;i++)

{

write_date(table4[i]);

delay_ms(5);

}

temp=DS18B20_Get_Temp();

if(temp<0) 单温度值为负数的时候{

temp=-temp;

write_com(0x80+0x40+9);

write_date(0xb0);

}

*在1602上显示温度值*

write_com(0x80+0x40+10);

write_date(0x30+temp100);

write_date(0x30+temp%10010);

write_date(0x2E);

write_date(0x30+temp%100%10);

write_date(0xDF);

write_date(0x43);

break;

case 17:

break;

*在设置的单价上的十位光标闪烁*

case 18:

write_com(0x80+0x40+1);

write_com(0x0f);

break;

*在设置的单价上的个位光标闪烁*

case 19:

write_com(0x80+0x40+2);

write_com(0x0f);

break;

*在设置的单价上的小数个位光标闪烁* case 20:

write_com(0x80+0x40+4);

write_com(0x0f);

break;

*在设置的上限温度的十位光标闪烁* case 21:

write_com(0x80+0x40+10);

write_com(0x0f);

break;

*在设置的上限温度的个位光标闪烁* case 22:

write_com(0x80+0x40+11);

write_com(0x0f);

break;

*在设置的下限温度的十位光标闪烁* case 23:

write_com(0x80+0x40+13);

write_com(0x0f);

break;

*在设置的下限温度的个位光标闪烁* case 24:

write_com(0x80+0x40+14);

write_com(0x0f);

break;

*显示计算的总价格*

if(clear_up==1) 清屏显示

{

write_com(0x01);

clear_up=0;

}

write_com(0x0c);

write_com(0x80+3); 显示THANK YOU字样

for(i=0;i<10;i++)

{

write_date(table8[i]);

}

write_com(0x80+0x40); 显示TOTAL字样

for(i=0;i<5;i++)

{

write_date(table3[i]);

}

write_date(0x3a);

write_date(0x5c);

total=Lheight*(pshi*10+pge+0.1*pxiao)*0.001*2; Lheight=(u32)(total*100);

total1[5]=Lheight%10;

total1[4]=(Lheight%100)10;

total1[3]=(Lheight%1000)100;

total1[2]=(Lheight%10000)1000;

total1[1]=(Lheight%100000)10000;

total1[0]=(Lheight%1000000)100000;

write_com(0x80+0x40+7); 显示最后计算的总价的值for(i=0;i<6;i++)

{

if(i>3)

{

if(i==4)

{

write_date(0x2e);

write_date(0x30+total1[i]);

}

else

{

write_date(0x30+total1[i]);

}

}

else

write_date(0x30+total1[i]);

break;

}

}

}

key.c程序:

#include

{

static u8 count=0,key_up=1;

if(key_up&&(KEY0==0||KEY1==0||KEY2==0))

{

delay_ms(10);

key_up=0;

if(KEY0==0) 当按下功能键时

{

count++;

if(count==1)

return 1;

if(count==2)

return 18;

if(count==3)

return 19;

if(count==4)

return 20;

if(count==5)

return 21;

if(count==6)

return 22;

if(count==7)

return 23;

if(count==8)

return 24;

if(count==9)

return 25;

if(count==10)

{

count=0;

return 0;

}

}

else if(KEY1==0) 当按下加键

{

if(count==2)

return 2;

if(count==3)

return 4;

if(count==4)

return 6;

if(count==5)

return 8;

if(count==6)

return 10;

if(count==7)

return 12;

if(count==8)

return 14;

}

else if(KEY2==0) 当按下减键

{

if(count==2)

return 3;

if(count==3)

return 5;

if(count==4)

return 7;

if(count==5)

return 9;

if(count==6)

return 11;

if(count==7)

return 13;

if(count==8)

return 15;

}

}

else if(KEY0==1&&KEY1==1&&KEY2==1)

{

key_up=1;

}

if(count==0)

return 16; 电子秤刚开始无按键按下else

return 17; 电子秤之后一直无按键按下

}

Key.(15) PA15 功能键

#define KEY1 PBin(0) PB0 +键

#define KEY2 PBin(1) PB1 -键

#define KEY3 PAin(12) PB3

void KEY_Init(void);IO初始化

u8 KEY_Scan(void); 按键扫描函数

#endif

Led.c程序:

#include

delay_ms(5);

lcden=0;

}

****对液晶写数据的函数****

void write_date(u16 date)

{

GPIOA->ODR|=0X03FC;

rs=1;

GPIOA->ODR&=(date<<2)|0xFC03;

delay_ms(5);

lcden=1;

delay_ms(5);

lcden=0;

}

****对1602液晶的初始化****

void lcd_init(void)

{

lcden=0;

write_com(0x38);

write_com(0x0c);

write_com(0x07);

write_com(0x01);

}

****对液晶所接的IO口进行初始化****

void io_init(void)

{

RCC->APB2ENR|=1<<2; 使能PORTA时钟

GPIOA->CRL&=0X00000000;

GPIOA->CRH&=0XFFFFFF00;

GPIOA->CRL|=0X33333333;PA.0~PA.9 推挽输出

GPIOA->CRH|=0X00000033;

GPIOA->ODR|=0X000003FF; PA.0~PA.9 输出高}

Led. PAout(1)

void write_date(u16 date);

void write_com(u16 com);

void lcd_init(void);

void io_init(void);

#endif

Adc.c程序:

#include"adc.(ADval);

}

****对所得到的采样的值进行10次求平均值****

u32 Sampling(void)

{

u16 Sam[12],tmpmax,tmpmin,sum=0,Average;

u8 i;

for(i=0;i<12;i++)

{

Sam[i]=ReadCount();

if(i==0)

{

tmpmax=Sam[0];

tmpmin=Sam[0];

}

if(i>0)

{

if(Sam[i]>tmpmax)tmpmax=Sam[i];

if(Sam[i]

}

}

for(i=0;i<12;i++)

{

if(!(Sam[i]==tmpmax||Sam[i]==tmpmin))

{

sum=sum+Sam[i];

}

}

Average=sum10;

return(Average);

}

****AD模块的初始化****

void Adc_Init(void)

{

RCC->APB2ENR|=1<<2; 使能PORTA时钟

RCC->APB2ENR|=1<<3; 使能PORTB时钟

GPIOA->CRH&=0XFFFFF0FF;PA10设置成输入

GPIOA->CRH|=0X00000800;

GPIOB->CRL&=0XFF0FFFFF;PB5设置成输出

GPIOB->CRL|=0X00700000;

GPIOB->ODR|=1<<5; PB5上拉

}

adc.(10)

#define ADSK PBout(5)

u16 ReadCount(void);

u32 Sampling(void);

void Adc_Init(void);

#endif

Display.c程序:

#include"display. 1;

else retry=0;

while (!DS18B20_DQ_IN&&retry<240)

{

retry++;

delay_us(1);

};

if(retry>=240)return 1;

return 0;

}

从DS18B20读取一个位

返回值:10

u8 DS18B20_Read_Bit(void) read one bit {

u8 data;

DS18B20_IO_OUT();SET PA0 OUTPUT

DS18B20_DQ_OUT=0;

delay_us(2);

DS18B20_DQ_OUT=1;

DS18B20_IO_IN();SET PA0 INPUT

delay_us(12);

if(DS18B20_DQ_IN)data=1;

else data=0;

delay_us(50);

return data;

}

从DS18B20读取一个字节

返回值:读到的数据

u8 DS18B20_Read_Byte(void) read one byte

{

u8 i,j,dat;

dat=0;

for (i=1;i<=8;i++)

{

j=DS18B20_Read_Bit();

dat=(j<<7)|(dat>>1);

}

return dat;

}

写一个字节到DS18B20

dat:要写入的字节

void DS18B20_Write_Byte(u8 dat)

{

u8 j;

u8 testb;

DS18B20_IO_OUT();SET PA0 OUTPUT;

for (j=1;j<=8;j++)

{

testb=dat&0x01;

dat=dat>>1;

if (testb)

{

DS18B20_DQ_OUT=0; Write 1

delay_us(2); DS18B20_DQ_OUT=1;

delay_us(60);

}

else

{

DS18B20_DQ_OUT=0; Write 0

delay_us(60);

DS18B20_DQ_OUT=1;

delay_us(2); }

}

}

开始温度转换

void DS18B20_Start(void) ds1820 start convert

{

DS18B20_Rst();

DS18B20_Check();

DS18B20_Write_Byte(0xcc); skip rom

DS18B20_Write_Byte(0x44); convert

}

初始化DS18B20的IO口 DQ 同时检测DS的存在

返回1:不存在

返回0:存在

u8 DS18B20_Init(void)

{

RCC->APB2ENR|=1<<4;

GPIOC->CRL&=0XFFFFFFF0;

GPIOC->CRL|=0X00000003;

GPIOC->ODR|=1<<0;

DS18B20_Rst();

return DS18B20_Check();

}

从ds18b20得到温度值

精度:0.1C

返回值:温度值(-550~1250)

short DS18B20_Get_Temp(void)

{

u8 temp;

u8 TL,TH;

short tem;

DS18B20_Start (); ds1820 start convert DS18B20_Rst();

DS18B20_Check();

DS18B20_Write_Byte(0xcc); skip rom

DS18B20_Write_Byte(0xbe); convert

TL=DS18B20_Read_Byte(); LSB

TH=DS18B20_Read_Byte(); MSB

if(TH>7)

{

TH=~TH;

TL=~TL;

temp=0;温度为负

}

else

temp=1;温度为正

tem=TH; 获得高八位

tem<<=8;

tem+=TL;获得底八位

tem=(float)tem*0.625;转换

if(temp)

return tem; 返回温度值

else

return -tem;

}

ds18b20.(0) 数据端口PC0

u8 DS18B20_Init(void);初始化DS18B20

short DS18B20_Get_Temp(void);获取温度

void DS18B20_Start(void);开始温度转换

void DS18B20_Write_Byte(u8 dat);写入一个字节u8 DS18B20_Read_Byte(void);读出一个字节

u8 DS18B20_Read_Bit(void);读出一个位

u8 DS18B20_Check(void);检测是否存在DS18B20 void DS18B20_Rst(void);复位DS18B20

#endif

6 实现结果图

图16 电子秤系统设计整体实物图

图17 1602液晶上显示测量重物的大小和温度值的大小

图18 进入设置单价和温度值上线限的界面

图19 显示最后的价格

毕业设计(论文)原创性声明和使用授权说明

原创性声明

本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。

作者签名:日期:

指导教师签名:日期:

使用授权说明

本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。

作者签名:日期:

基于单片机的电子计价秤设计

一、国内外电子称发展情况 随着称重传感器各项性能的不断突破,为电子称的发展奠定了基础,国外如美国、西欧等一些国家在20世纪60年代就出现了0.1%称量准确度的电子称,并在70年代中期约对75%的机械称进行了机电结合式改造。 80年代以来,我国通过自行研究引进消化吸收和技术改造。已由传统的机械式衡器步入集传感器、微电子技术、计算机技术与一体化的电子衡器发展阶段。 二、设计方案 本电子秤系统由以下几个部分组成。传感器,放大电路,A/D 转换电路,单片机主控模块。 2.放大电路采用仪表放大器,用以将小的模拟信号放大。 3.A/D 转换将模拟信号转化成数字信号,单片机接收后可以对其进行处理。 三、硬件电路设计 1.电阻应变式传感器电路 电阻应变式传感器是将被测量的力,通过它产生的金属弹性变形转换成电阻变化的元件。由电阻应变片和测量线路两部分组成,其主要参数如附录1所示。电阻应变片产生的误差,主要来源于温度的影响,本设计主要在实

验室内进行,温度的影响可不考虑。内部丝绕式应变片结构图如下图2所示。 当贴有电阻应变片的弹性平衡梁受到载荷F作用时,电阻应变片R1和R3受到拉伸作用,阻值增加;R2和R4受到压缩作用,阻值减小,电桥失去平衡,产生的不平衡电压 U 的大小与所受作用力F成正比。电桥的输出电压反映了电阻应变片相应的受力状态。 电桥电路如图3所示。电桥电路是最常用的非电量电测电路中的一种,当电桥平衡时,桥路对臂电阻乘积相等,电桥输出为零,在桥臂四个电阻R1、R2、R3、R4 中,电阻的相对变化率分别为△R1/ R1、△R2/ R2、△R3/ R3、△R4/ R4 ,当使用一个应变片时,R R R ?= Σ;当二个应变片组成差动状态工作,则有R R 2R ?= Σ;用四个应变片组成二个差动对工作,且R1= R2= R3= R4=R ,R R 4R ?=Σ。 当电桥后面接放大器时,放大器的输入阻抗都很高,比电桥的输出电阻大很 多,因此可以把电桥输出端看成是开路。应变电桥电路如下图4所示: 图4 电桥应变电路原理图 若电桥不平衡时,即R 1R 3≠R 2R 4时,电桥输出: U R R R R R R R R U ) )((432142310++-= 恰好选择各桥臂电阻,可消除电桥的恒定输出,使输出电压只与应变片输出有关。 令R1=R2,R3=R4,在应变片工作时,其电阻R1变化△R,此时电桥的灵敏度为:k u =U/4 电压输出为: U O =(U/4)(△R1/R1)。

单片机课程设计报告书----电子秤

一、设计任务及要求: 设计任务: 完成一个简单的使用数字电子秤的硬件与软件部分的设计。 设计要求: 1.利用单片机实现对所设计的电子秤的各项功能的控制。 2.电子秤能够LCD液晶显示出商品的名称、价格,重量、总价等信息。 3.电子秤具有储存几种简单商品价格的功能。 4.电子秤的测量范围要求达到5KG,测量精度要求达到0.001。 5.电子秤能够自动完成商品的价格计算。 指导教师签名: 2010 年6月16 日二、指导教师评语: 指导教师签名: 2010 年7月3日三、成绩 验收盖章 2010 年7 月日

基于单片机的实用电子秤的设计 1 设计目的 单片机以其功能强,体积小,功耗低,易开发等很多优势被广泛应用。本 次数字电子秤的设计就是需要通过选择合适的单片机来进行主控,再结合A/D 转换、键盘、液晶显示、复位电路和蜂鸣器报警驱动电路的知识,同时在软件 的设计过程中用到键盘扫描、液晶显示驱动、模数转换程序及汉字库的的设计, 做到对我们所学数电、模电、单片机等知识的综合应用,最终实现所设计数字 电子秤的各项功能,达到“巩固知识,培养技能,学而用之”的实践目的。通过这次课程设计,不但要提高我们在工作中的学习能力、探究能力、应用能力和动 手能力,还要历练我们不畏艰难、不懂便学、有漏必补的认真严谨的工作态度,强化我们的社会适应力和社会竞争力,为走向社会提前试水,完善自我。 2 设计的主要内容及要求 本设计主要完成一个简单实用数字电子秤的硬件电路部分和软件部分的设计。硬件部分包括数据采集、最小系统板、人机交互界面三大部分。其中,数 据采集部分由压力传感器和A/D 转换部分组成;人机界面部分为键盘输入、 液晶显示。软件部分应用单片机 C 语言实现了本设计的全部控制功能。本设 计的数字电子秤要求能够显示商品的名称、价格、总量、总价等;能够自动完 成商品的价格计算;能够储存几种简单商品的价格;能够具有超重提醒功能, 一旦重量超出了自身重量的测量的范围,发出警报;同时对数字电子秤的测量 范围要达到5KG,测量精度要求达到0.001。 3 整体设计方案 整个数字电子秤电路由压力传感电路(ADC0832采样)、模数转换系统、单 片机主控制电路、LM4229显示电路、蜂鸣器报警电路和4*4键盘电路6 个部

电子秤标定方法大全

电子秤标定方法 佰仕利:268.97 79去皮-市斤 268.97 78去皮-公斤 三、上海耀华 (1)XK3190-A12 XK3190-A10 开机初始过程中按(#)进入标定状态(去皮)选择(#)确认 1.(d xx)选择分度值 2. (p xx)小数点 3. (full )最大称量 4. (noload )空秤确认 5.(ad load)放砝码(000000)输入砝码值(置零)增加1,去皮右移光标 (#)确认 6.(end) (2.)xk3190-A1+ 将大屏幕接口指针少的一端朝上,右手两端短接,屏幕出现提示, 按输入直到出现 noload 空秤确认,adload 加砝码输砝码值,确认。(3)XK3190-A7 1. 正常称重状态,仪表后端打开标定开关,显示(n xxxx) 清除进入下一步切换选择去皮确认 2.(e xx )设分度值 3. (d 0.0)设小数点 4. 按去皮,直到显示(CAL)空秤确认 5. (000.000)加码,(累计)右循环,(切换)加1 去皮确认。 6. 关开关。 (4)XK3190-C2 将大屏幕接口短接(14 15脚) (输入) 确认 1.称重状态下,按功能显示 PASS 2.输密码 920728 按输入 3. (DC ) 小数点位数 4. (E )分度值 5.(F )最大称量 6. (r )保存原有零位 7. (NO LAOD)零位确认 8. (AD LOAD)加码,(00000)输码值,按输入 (5)耀华YH-T3校正资料 开机归零后同时按一次“清除”和“F”键进入参数设置 “保持“键为确认键,“回零”键是输入键,“扣皮”键是移位键 菜单一为分度值设置 菜单二为小数点设置 菜单三为满量程设置:注,每次校正都必须重新输入满量程,输入后按“保持”键屏幕显示零点校正,按“保持”键,此时屏幕显示空载内码,稳定后会自动跳

单片机电子秤设计报告

基于单片机的电子秤 单片机电子秤设计报告 秤是一种在实际工作和生活中经常用到的测量器具。随着计量技术和电子技术的发展,传统纯机械结构的杆秤、台秤、磅秤等称量装置逐步被淘汰,电子称量装置电子秤、电子天平等以其准确、快速、方便、显示直观等诸多优点而受到人们的青睐。 和传统秤相比较,电子秤利用新型传感器、高精度AD转换器件、单片 机设计实现,具有精度高、功能强等特点。本课题设计的电子秤具有基本称重、键盘输入、计算价格、显示、超重报警功能。该电子秤的测量范围为 0-10Kg,测量精度达到 5g,有高精度,低成本,易携带的特点。电子秤采用液晶显示汉字和测量记过,比传统秤具有更高的准确性和直观性。另外,该电子秤电路简单,使用寿命长,应用范围广,可以应用于商场、超市、家庭等场所,成为人们日常生活中不可少的必需品。 一、功能描述 1、采用高精度电阻应变式压力传感器,测量量程 0-10kg ,测量精度可 达 5g 。 2、采用电子秤专用模拟 / 数字( A/D)转换器芯片 hx711 对传感器信号进行调理转换, HX711 采用了海芯科技集成电路专利技术,是一款专为高精度电子秤而设计的 24 位 A/D 转换器芯片

3、采用 STC89C52单片机作为主控芯片,实现称重、计算价格等主控功 4、采用 128*64 汉字液晶屏显示称重重量、单价、总价等信息。 5、采用 4*4 矩阵键盘进行人机交互,键盘容量大,操作便捷。 6、具有超量程报警功能,可以通过蜂鸣器和 LED灯报警。 7、系统通过 USB电源供电,单片机程序也可通过 USB线串行下载。 二、硬件设计 1、硬件方案 单片机电子秤硬件方案如图 1 所示: 图 1 单片机电子秤硬件方案称重传感器感应被测重力,输出微弱的毫伏级电压信号。该电压信号经过电子秤专用模拟 /数字(A/D)转换器芯片hx711 对传感器信号进行调理转换。 HX711 采用了海芯科技集成电路专利技术,是一款专为高精度电子秤而设计的 24 位 A/D 转换器芯片,内置增益控制,精度高,性能稳定。 HX711芯片通过 2 线串行方式与单片机通信。单片机读取被测数据,进行计算转换,再液晶屏上显示出

基于单片机的电子称传感器课程设计

测控技术与仪器专业 《传感器技术》课程设计任务书 淮阴工学院电子与电气工程学院 2014年06月

专业方向课程设计 课题:电阻应变式电子称 班级测控1111 学生姓名金梦磊学号 1111203115 指导教师张青春 淮阴工学院电子与电气工程学院

目录1.系统方案设计 1.1 概述 1.2 检测原理 1.3 系统原理框图 2.系统硬件设计 2.1 传感器选择及其特性 2.2 测量电路 2.3 信号采集电路 2.4 单片机及外围电路 2.5 总体电路图 3.系统软件设计 3.1 软件设计方法 3.2 软件流程图 3.3 软件清单及说明 4.系统调试与验证 4.1 调试过程 4.2调试结果(仿真结果)截图4.3 误差分析 5.课程设计体会与总结 附录:1、参考资料 2、元器件表

基于电阻式应变片式传感器的电子称设计 ` 1.系统方案设计 1.1概述 随着时代的进步和科技的发展,电子称已经成为现代生活中不可或缺的一部分。无论是做生意确定货物的重量,还是菜市场买菜看斤看两,还是没事减肥看看自己体重有没有减少,我们都需要使用称量道具,电子称以其便携,准确等优点占据着市场。 早期的电子称是通过模拟电路实现的,其抗干扰能力不足,准确也比较低。现在的电子称都是通过微控制器,采用数字信号的方式,这样就克服了以前的缺点,还可以实现键盘控制以及超额报警等更能。在学习了传感器,单片机,测控电路几门课程之后,我们可以自己设计出一个电子称了。 在我的设计中,我将采用电阻式应变片传感器进行测量,并采用放大器对传感器转换出的电压信号进行放大、达到A/D转换器输入电压的要求,采用8位A/D转换器将放大器产生的模拟信号转换成数字信号,单片机将接收到的数字处理后显示在4个数码管上(量程为0-1.999kg,所以只需要4个数码管),还需要蜂鸣器进行超量程报警,led灯显示电源的通断,两个拨位开关实现电源通断的控制,以及单片机的复位功能。 1.2检测原理 电阻式应变片传感器是通过电阻的应变效应进行测量。

电子秤指导书

智能电子秤实验指导书

一设计要求 1.1设计任务 本题目最好采用广州周立功单片机发展有限公司赞助提供EasyARM2103主机板为主 控器,设计并制作一个多功能电子计价秤。 图1.1 系统框图 1.2制作要求 1.2.1基本部分: (1)能用键盘设置单价,称重后能同时显示重量、单价和总额; 电子计价秤:最大称重为15.000公斤,重量误差不大于±0.1%; (2)具有数码显示,显示重量、单价、总额等信息。 a.重量显示为5位数码,单位为公斤,最大重量显示值为99.999公斤; b.单价金额显示为5位数码,单位为元,最大单价金额显示值值为999.99元; c.总价金额显示为6位数码,单位为元,最大总价金额显示值值为9999.99元,总 价金额误差不大于0.01元; (3)具有去皮功能和总额累加计算功能; (4)能预存10种商品的单价;可以随意调出使用; (5)测量并显示环境温度,温度测量误差不大于1℃; (6)自制可以连续可调高稳定度0-2V直流电源,用于模拟称重传感器输出的称重信号源。采用0-2V模拟0-20kg称重;

(7)制作工艺。 二 系统设计 根据题目要求,该多功能电子计价秤,包括控制模块、键盘模块、、显示模块、打印模块、实时时钟模块、温度测量报警模块和存储模块、AD 转换模块。系统的总体结构框图如图 2.1所示。 图2.1 系统总体布局框图 系统的各模块中,除了微控制器模块已经确定用周立功公司赞助的PHILIPSLPC2103外其余模块还需要我们论证比较不同的设计方案。 2.1称重传感器的原理及选用 题目要求称重范围15.000Kg ,重量误差不大于0.015Kg ,考虑到秤台自重、振动和冲击分量,还要避免超重损坏传感器,所以传感器量程必须大于额定称重—15Kg 。我们选择的是L-PSIII 型传感器,量程20Kg ,精度为%01.0,满量程时误差 0.002Kg 。可以满足本系统的精度要求。其原理如图2.2所示:

单片机电子秤设计报告完整版样本

单片机电子秤设计报告 秤是一种在实际工作和生活中经常见到的测量器具。随着计量技术和电子技术的发展, 传统纯机械结构的杆秤、台秤、磅秤等称量装置逐步被淘汰, 电子称量装置电子秤、电子天平等以其准确、快速、方便、显示直观等诸多优点而受到人们的青睐。 和传统秤相比较, 电子秤利用新型传感器、高精度AD转换器件、单片机设计实现, 具有精度高、功能强等特点。本课题设计的电子秤具有基本称重、键盘输入、计算价格、显示、超重报警功能。该电子秤的测量范围为0-10Kg, 测量精度达到5g, 有高精度, 低成本, 易携带的特点。电子秤采用液晶显示汉字和测量记过, 比传统秤具有更高的准确性和直观性。另外, 该电子秤电路简单, 使用寿命长, 应用范围广, 能够应用于商场、超市、家庭等场所, 成为人们日常生活中不可少的必须品。 一、功能描述 1、采用高精度电阻应变式压力传感器, 测量量程0-10kg, 测量精度可达5g。 2、采用电子秤专用模拟/数字( A/D) 转换器芯片hx711对传感器信号进行调理转换, HX711 采用了海芯科技集成电路专利技术, 是一款专为高精度电子秤而设计的24 位A/D 转换器芯片。 3、采用STC89C52单片机作为主控芯片, 实现称重、计算

价格等主控功能。 4、采用128*64汉字液晶屏显示称重重量、单价、总价等信息。 5、采用4*4矩阵键盘进行人机交互, 键盘容量大, 操作便捷。 6、具有超量程报警功能, 能够经过蜂鸣器和LED灯报警。 7、系统经过USB电源供电, 单片机程序也可经过USB线串行下载。 二、硬件设计 1、硬件方案 单片机电子秤硬件方案如图1所示: 图1 单片机电子秤硬件方案

各款电子秤标定方法

各款电子秤标定方法 超人电子磅标定说明(新款):先短路,去皮----3----去皮----放砝码(59kg)---去皮---输入砝码重量(50.00)---去皮---输入总秤量---去皮. 超人电子磅标定说明(新款):658---去皮----3----去皮----放砝码(59kg)---去皮---输入砝码重量(50.00)---去皮---输入总秤量---去皮. 耀华电子磅标定说明: 先短路,功能----放砝码(59kg)---功能---输入砝码重量(50.00)---输入总秤量---功能---分度值---功能. 友声电子计价磅标定:先短路,开机归零---总计---0---累积---累清---总计 ---7---放砝码----总计---输入砝码重量----累清---总计----9. 超人计价秤/健牌秤标定(1): 16699—去皮—16699—去皮---放砝码---去皮---输入砝码重量---去皮—输入总秤量—去皮.

超人计价秤标定说明(2): 储存—8.918—储存---放砝码---输入砝码重量—储存---输入总秤量—储存. 超人计价秤标定说明(3): 16699—去皮—321---去皮—放砝码—去皮—输入砝码重量—去皮---输入总秤量—去皮. 超人计价秤标定说明(4): 166.99---去皮—放半量程砝码---置零---去皮. 永州计价秤标定说明(1): 储存—3.278---储存---放砝码---储存---输入砝码重量---储存---输入重秤量---储存. 永州计价秤标定说明(2): 8818—去皮---1—去皮---放砝码—去皮---输入砝码重量---去皮---输入重秤量---去皮. 永州计价秤标定说明(3): 储存---0.567---储存---放砝码---输入砝码重量---储存---输入重秤量---储存.

基于单片机的电子秤的设计样本

四川信息职业技术学院 毕业设计阐明书(论文) 设计(论文)题目: 基于单片机电子秤设计 专业:应用电子技术 班级:应电12-3 学号: 1111111 姓名:某某某 指引教师:某某某

二〇一四年十一月二十五日

四川信息职业技术学院毕业设计(论文)任务书

目录 摘要................................................................................................... 错误!未定义书签。绪论................................................................................................... 错误!未定义书签。第一章方案设计与论证................................................................... 错误!未定义书签。 1.1方案选取 ............................................................................ 错误!未定义书签。 1.2方案论证 ............................................................................ 错误!未定义书签。第二章硬件设计与分析................................................................... 错误!未定义书签。 2.1单片机最小系统 ................................................................ 错误!未定义书签。 2.1.1 芯片简介.............................................................. 错误!未定义书签。 2.1.2 时钟电路设计...................................................... 错误!未定义书签。 2.1.3 复位电路设计...................................................... 错误!未定义书签。 2.2信号采集模块 .................................................................... 错误!未定义书签。 2.2.1 传感器选取.......................................................... 错误!未定义书签。 2.2.2 传感器选取.......................................................... 错误!未定义书签。 2.3数据转换电路 .................................................................... 错误!未定义书签。 2.3.1 A/D转换器选取................................................... 错误!未定义书签。 2.3.2 ADC0832简介 ..................................................... 错误!未定义书签。 2.3.3单片机对ADC0832控制原理 ............................ 错误!未定义书签。 2.4声光报警电路 .................................................................... 错误!未定义书签。 2.5显示电路 ............................................................................ 错误!未定义书签。 2.6整机电路 ............................................................................ 错误!未定义书签。

佰伦斯电子计价秤标定说明书文件详细

BPS(贴片省电)系列内部设置,标定说明 一:内部设置 1;按住[1],[9]键不放开机, 显示888888 888888 888888 2;放开[1],[9]键,当电子秤自检的同时按住[去皮]键一秒后, 显示—CAL— 3;按[3]键,进入显示速度设置, 显示SP=0 SP=0显示速度快 SP=1显示速度 SP=2显示速度稍慢 SP=3显示速度慢 按[累计]键循环选择 4;按[去皮]键进入零点跟踪设置, 显示AO=1 AO=0无零点跟踪 AO=1零点跟踪1 AO=2零点跟踪2 AO=3零点跟踪3 按[累计]键可循环选择 5;按[去皮]键进入背光设置(仅限示BPS液晶显示), 显示BL=3 BL=0无背光 BL=1一直背光 BL=2自动背光 BL=3按背光键背光 按[累计]键可循环选择 6;按[去皮]键进入强制回零设置, 显示CT=1 CT=0无强制回零 CT=1有强制回零 按[累计]键可循环选择 7;按[去皮]键进入输入方式设置, 显示DJ=0 DJ=0输入单价时以元位起显示 DJ=1输入单价时以分位起显示 按[累计]键可循环选择 8;按[去皮]键进入省电速度设置(仅限于BPSR灯管显示), 显示SH=1 SH=0省电时 0.000 0.00 0.00 SH=1省电时 0 SH=2省电时 0 0 SH=3省电时 0 0 0 按[累计]键可循环选择

按[去皮]键进入LED亮度设置,(仅限于BPSR灯管显示), 显示LD=2 LD=1 LED亮度较暗 LD=2 LED亮度较亮 LD=3 LED亮度亮 按[累计]键可循环选择 9,按[去皮]键 显示—CAL— 10内部设置完华,重新开机。 二:标定说明 1,按住[1],[9]键不放同时开机, 显示888888 888888 888888 2,放开[1],[9]键,当电子秤自检的同时按住[去皮]键一钞后 显示—CAL— 3,依次按[7],[8],[9],[4]键,电子秤自动搜索内码,并伴有“哗”“哗”声,且显示14068 14068 --------- 重量栏,单价栏数字在跳动, 4,当搜索完毕后,“哗”“哗”声止, 显示14068 14068 ----------- 5,按[置零]键,显示 0 14068 ----------- 6,此时放上欲标定的标准砝码于秤盘的中央 7,待稳定后,在数字键上输入与放在秤盘中央的标定砝码相符的数字,如:5KG 则输入“5”“0”“0”“0” 8,待稳定后,按[去皮]键,显示5.000 0.00 0.00 9,标定完毕

基于51单片机的电子秤的设计

学号: 毕业设计 G RADUATE T HESIS 论文题目:基于51单片机的电子秤的设计 学生姓名: 专业班级: 学院: 指导教师: 2017年06月12日

第一章功能说明 本设计系统以单片机AT89S52为控制核心,实现电子秤的基本控制功能。在设计系统时,为了更好地采用模块化设计法,分步设计了各个单元功能模块。 系统的硬件部分包括最小系统部分、数据采集部分、人机交互界面和系统电源四大部分。最小系统部分主要包括AT89S52和扩展的外部数据存储器;数据采集部分由称重传感器,信号的前期处理和A/D转换部分组成,包括运算放大器AD620和A/D转换器ICL7135;人机界面部分为键盘输入,四位LED数码显示器,可以直观的显示重量的具体数字以及方便的输入数据,使用方便;系统电源以LM317和LM337为核心设计电路以提供系统正常工作电源。 系统的软件部分应用单片机C语言进行编程,实现了该设计的全部控制功能。该电子秤可以实现基本的称重功能(称重范围为0~9.999Kg,重量误差不大于±0.005Kg),并发挥部分的显示购物清单的功能,可以设置日期和设定十种商品的单价,还具有超量程和欠量程的报警功能。 本系统设计结构简单,使用方便,功能齐全,精度高,具有一定的开发价值。称重传感器原理 即由非电量(质量或重量)转换成电量的转换元件,它是把支承力变换成电的或其它形式的适合于计量求值的信号所用的一种辅助手段。 按照称重传感器的结构型式不同,可以分直接位移传感器(电容式、电感式、电位计式、振弦式、空腔谐振器式等)和应变传感器(电阻应变式、声表面谐振式)或是利用磁弹性、压电和压阻等物理效应的传感器。 对称重传感器的基本要求是:输出电量与输入重量保持单值对应,并有良好的线性关系;有较高的灵敏度;对被称物体的状态的影响要小;能在较差的工作条件下工作;有较好的频响特性;稳定可靠。 传感器下的定义是:“能感受规定的被测量并按照一定的规律转换成可用信号的器件或装置,通常由敏感元件和转换元件组成”。其中敏感元件指传感器中能直接感受被测量的部分,转换元件指传感器中能将敏感元件输出量转换为适于传输和测量的电信号部分。此外传感器是一种检测装置,能感受到被测量的信息,并能将检测感受到的信息,按一定规律变换成为电信号或其他所需形式的信息输出,以满足信息的传输、处理、存储、显示、记录和控制等要求。它是实现自动检测和自动控制的首要环节。 称重传感器在电子秤中占有十分重要的位置,被喻为电子秤的心脏部件,它的性能好坏很大程度上决定了电子秤的精确度和稳定性。通常称重传感器产生的误差约占电子秤整机误差的50%~70%。若在环境恶劣的条件下(如高低温、湿热),传感器所占的误差比例就更大,因此,在人们设计电子秤时,正确地选用称重传感器非常重要。 称重传感器的种类很多,根据工作原理来分常用的有以下几种:电阻应变式、电容式、压磁式、压电式、谐振式等。(本设计采用的是电阻应变式)电阻应变式称重传感器包括两个主要部分,一个是弹性敏感元件:利用它将被测的重量转换为弹性体的应变值;另一个是电阻应变计:它作为传感元件将弹性体的应变,同步地转换为电阻值的变化。电阻应变片所感受的机械应变量一般

电子称课程设计

1.前言 电子称重技术是现代称重计量和控制系统工程的重要基础之一,电子衡器经过40年的不断改进和完善,从60年代的机电结合型发展到现在的全电子型和数字化智能型。由于它具有称量准确、快速,读取方便,环境适应性强,便于与电子计算机结合而实现称重计量与过程控制自动化等特点,在工商贸易、能源交通、轻工食品、医药卫生、航空航天等部门得到了广泛的应用。本课题本着电子秤向高精度、高可靠方向研究,讲述了用单片机控制A/D转换、键盘输入和数据显示,对如何实现键盘中断、A/D采样进行研究。设计特别适用于测量精度要求较高的场合, 具有较高的实用价值和推广价值。本文中第一章讲述了电子秤的发展情况及其工作原理,第二章讲述了电子秤的硬件电路组成部分,第三章介绍了电子秤各部分功能实现的软件设计。 1.1研究本文的意义 物料计量是工业生产和贸易流通中的重要环节。称重装置或衡器是不可缺少的计量工具。随着工农业生产的发展和商品流通的扩大,衡器的需求也日益增多,过去沿用的机械杠杆秤己不能适应生产自动化和管理现代化的要求。自六十年代以来,由于传感器技术和电子技术的迅速发展,电子称重技术日趋成熟,并逐步取代机械秤。尤其是七十年代初期,微处理机的出现使电子称重技术得到了进一步的发展。快速、准确、操作方便、消除人为误差、功能多样化等方面已成为现代称重技术的主要特点。称重装置不仅是提供重量数据的单体仪表,而且作为工业控制系统和商业管理系统的一个组成部分,推进了工业生产的自动化和管理的现代化,它起到了缩短作业时间、改善操作条件、降低能源和材料的消耗、提高产品质量以及加强企业管理、改善经营管理等多方面的作用。称重装置的应用已遍及到国民经济各领域,取得了显著的经济效益。同时对称重仪表的要求也越来越高,要求仪表有更高抗干扰能力、更高的精度。 基于电子秤的现状,本文拟研究一种用单片机控制的高精度数字电子秤设计方案。这种高精度数字电子秤计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。 1.2 电子秤的发展 1.电子技术渗入衡器制造业 随着第二次世界大战后的经济繁荣,为了把称重技术引入生产工艺过程中去,对称重技术提出了新的要求,希望称重过程自动化,为此电子技术不断渗入衡器制造业。在1954年使用了带新式打印机的倾斜杠杆式秤,其输出信号能控制商用结算器,并且用电磁铁机构与代替人工操作的按键与办公机器联用。在1960年开发出了与衡器相联的专

电子秤的检定方法

电子秤的检定方法 为了保证秤量准确和使用性能,对新制造的电子计价秤,除了 出厂检验和检定外,用户在购到该秤后,必须在使用地区申请进行计量性能的检定,检定合格后,才能使用。若检定与使用不在同一地区,应根据使用地重力加速度进行修正。检定地点、使用地点不同,只限于产品定型鉴定、仲裁、产品质量评比。其他情况只允许在使用地点检定。此外,在使用过程中还要进行周期检定;若有损坏,在修理后也要进行修理后的检定,合格之后可投入使用。 1 技术要求 1.1 电子秤应按照该产品的有关技术标准制造,修配件应符合 有关技术文件的要求。 1.2 电子秤应标志型号、生产厂、出厂编号、最大称量、最小称 量、检定分度值、准确度等级符号。 1.3 电子称应有水平指示器。 1.4 电子称在下述环境条件下应能正常工作:①温度范围为- 10℃-+40℃,达不到这一要求的电子秤应在其标志牌上标明使用温度范围。②相对湿度不大于90%。③电源电压变化为-15%~+10%;频率变化为±2%。 1.5 电子秤应具有一定的抗干扰能力。在具有机电干扰场合使 用的电子秤,应满足本规程全部要求。 1.6 当环境温度相差5℃时,电子秤空秤示值的变化不得大于 1e。

1.7 在秤盘上加减砝码后,重量与金额显示器应在5s 内有稳定 的数字显示。 1.8 首次检定时,在秤盘上施加最大秤量砝码并保持30min,其 示值在30min 前后的变化不得超过称量允许误差的绝对值。 1.9 符合检定规程要求的标准器具。电子计价秤计量性能检定 时应具备:①与被检电子计价秤最大秤量相对应的M1 级(原四等) 公斤组砝码或高于电子计价秤准确度3 倍以上的标准砝码;②分度值不大于0.5℃的温度计,用于测量环境温度;③测量允许误差用的 M1 级(原四等)克组砝码应与所检定的电子计价秤的检定分度值相适应。通常采用0.1~1.4 倍检定分度值的组合砝码。 1.10 符合规程要求的检定环境。检定工作时,要求环境状态满 足规程要求。电子计价秤在环境温度范围为-10~+40℃、相对湿度不大于90%、电源电压变化为-15%~+10%、频率变化范围为±2%等条件下,应能正常工作。 2 一般技术状态的检查 电子计价秤使用前或进行计量性能检定前,应进行一般技术状 态的检查。通常检查以下几项:①外观完好,无明显破损;②各零部件装配良好,连接螺丝无松动;③水平指示器工作正常;④调节脚能调节自如;⑤电源线完好无损,接插件连接牢固、接触良好;⑥电源接通后显示器显示的数字和符号清晰、完整、无断线、无缺损;⑦数字键、功能键动作正常,操作灵活,安全可靠;⑧配有打印机的电子

基于51单片机电子秤设计

摘要 电子秤是日常生活中常用的称重设备,广泛应用于超市、大中型商场、物流配送中心。电子秤在结构和原理上取代了以杠杆平衡为原理的传统机械式称量工具。相比传统的机械式称量工具,电子秤具有称量精度高、装机体积小、应用范围广、易于操作使用等优点,在外形布局、工作原理、结构和材料上都是全新的计量衡器。 微电子技术的发展为电子秤提出了改进的空间。电子秤向着简单、便宜发展,智能化、精确的电子秤成为了人们的追求。本简易电子秤以常见的AT89C51为核心,以电阻应变片采集应变数据,通过HX711放大并进行AD转换供单片机处理,用LCD1602显示所测量的重量,同时本电子秤系统还提供单价设置进行求价格的计算以及去皮功能,通过一些简单低成本的元器件就完成了一个功能齐全的电子秤的制作,将传统电子秤的成本进行了缩减。 关键词:电阻应变片 AT89C51 HX711 电子秤

第一章方案与论证 一、方案类型 (一)方案一 通过单片机为主控芯片,用应变片采集应变数据,通过专用仪表放大器INA128对采集到的信号进行放大,在配上模数转换芯片对放大了的模拟信号转化为数字信号,传入单片机中进行数据处理,找出函数关系并转化关系。通过数字信号转化为重量值显示在LDC1602上,同时通过键盘进行数据输入,输入单价、去皮等功能。通过蜂鸣器和二极管实现超额报警功能。 (二)方案二 以单片机为主控芯片,应变片采集应变数据,将放大和模数转换用HX711芯片来同时进行实现,将模拟量传入主控芯片单片机中进行数据转换,通过函数关系转换为重量显示到LED 上或者LCD1602上,同时通过键盘按键进行数据输入,输入单价、去皮等功能,并通过蜂鸣器进行数据处理。 (三)方案三 运用PLC作为主控制器,PLC运用广泛,它具有接线简单,通用性好,编程简单,使用方便,可连接为控制网络系统,易于安装,便于维护等优点。 二、方案论证与选定 运用51单片机作为主控芯片,AT89C51是一种高效微控制器。它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。但方案一中,放大和AD转换模块为独立模块,它们的独立设计费事费力且还会存在误差较大的情况。相比于方案一,方案二一HX711作为放大和AD 转换芯片,简化了电路结构。HX711是一款专为高精度电子秤设计的24位AD转换器芯片。与同类型其他芯片相比,该芯片集成了包括文雅电源、片内时钟振荡器等其它同类型芯片所需要的外围电路,具有集成度高、响应速度快、抗干扰性强等优点。精度方面很好的满足了题目中的要求,相比于方案一,方案二根据可行性。 方案三采用PLC作为主控芯片,但其价格昂贵,违背了我们制作电子秤的简单、便捷、便宜的原则,所以我们并没考虑选用PLC作为主控芯片。 综合考虑后,我们决定选择方案二来进行本简易电子秤系统的设计与制作。通过精度、价格、简单程度出发考虑,方案二是最合适的。

单片机课程设计报告 基于单片机的电子秤设计

基于单片机的电子秤设计 一、【设计题目】 基于单片机的电子秤设计 二、【设计要求】 设计要求如下: (1)设计一款电子秤,用LCD液晶显示器显示被称物体的质量 (2)可以设定该秤所称的上限 (3)当物体超重时,能自动报警。 三、【设计过程】 1.【方案设计】 微控制器技术、传感器技术的发展和计算机技术的广泛应用,电子产品的更新速度达到了日新月异的地步。本系统在设计过程中,除了能实现系统的基本功能外,还增加了打印和通讯功能,可以实现和其他机器或设备(包括上位PC机和数据存储设备)交换数据.除此之外,系统的微控制器部分选择了兼容性比较好的AT89系列单片机,在系统更新换代的时候,只需要增加很少的硬件电路,甚至仅仅删改系统控制程序就能够实现。 另外由于实际应用当中,称可以有一定量的过载,但不能超出要求的范围,为此本设计提供了过载提示和声光报警功能。 综上所述,本课题的主要设计方案是:利用压力传感器采集因压力变化产生的电压信号,经过电压放大电路放大,然后再经过模数转换器转换为数字信号,最后把数字信号送入单片机。单片机经过相应的处理后,得出当前所称物品的重量及总额,然后再显示出来。此外,还可通过键盘设定所称物品的价格。主要技术指标为:称量范围0~5kg;分度值0.01kg;精度等级Ⅲ级;电源DC1.5V(一节5号电池供电)。其设计框图如图3.1所示。 这种高精度智能电子秤体积小、计量准确、携带方便,集质量称量功能与价格计算功能于一体,能够满足商业贸易和居民家庭的使用需求。

图3.1 系统设计框图 2.【器件选择】 2.1单片机选择 本设计由于要求必须使用单片机作为系统的主控制器,而且以单片机为主控制器的设计,可以容易地将计算机技术和测量控制技术结合在一起,组成新型的只需要改变软件程序就可以更新换代的“智能化测量控制系统”。考虑到本设计中程序部分比较大,根据总体方案设计的分析,设计这样一个简单的的系统,可以选用带EPROM 的单片机,由于应用程序不大,应用程序直接存储在片内,不用在外部扩展存储器,这样电路也可简化。INTEL 公司的8051和8751都可使用,在这里选用ATMENL 生产的AT89SXX 系列单片机。AT89SXX 系列与MCS-51相比有两大优势:第一,片内存储器采用闪速存储器,使程序写入更加方便;第二,提供了更小尺寸的芯片,使整个硬件电路体积更小[1]。此外价格低廉、性能比较稳定的MCPU ,具有8K×8ROM 、256×8RAM 、2个16位定时计数器、4个8位I/O 接口。这些配置能够很好地实现本仪器的测量和控制要求 最后我们选择了AT89S52这个比较常用的单片机来实现系统的功能要求。AT89S52内部带有8KB 的程序存储器,基本上已经能够满足我们的需要。 2.2压力传感器的选择 在本设计中,传感器是个十分重要的元件,因此对传感器的选择也显得十分重要。不仅要注意其量程和参数,还要考虑与其相配置的各种电路的设计的难易程度键盘设定 阀值报警 LCD 显示器 AT89S52单片机 压力传感器 放大电路 A/D 转换器

ACS电子计价秤说明书

ACS-A系列交直流两用电子计价秤使用说明书 技术指标: 内置可充电蓄电池,充电时可以开机使用。2.开机自动置零。3.零点自动跟踪。4.累计次数1~30次。 5.电源:交流220V(±10%)/ 50Hz直流4V/4Ah(内置可充电蓄电池) 6.工作温度范围:0℃~+40℃。 7.相对湿度: ≤85% RH。 型号称量范围检定分度数检定分度值(e)准确度等级 ACS---3A 3 kg3000 1 gⅢ ACS---6A6 kg30002 gⅢ ACS---15A15 kg30005 gⅢ ACS---30A30 kg300010 gⅢ 操作方法: 电子秤应置于稳定平整的台面上;调整四个底脚螺钉使秤处于水平位置,然后开机(如果需要则应先放上专用秤盘)。电子秤不能长期在去皮状态下使用,否则零位自动跟踪功能消失,零位会产生漂移。 键盘操作说明 1.开机:按开关机键2-3秒即可开机或关机。 2.【置零】键:重量显示置零。(置零范围:≤2%FS,去皮状态下无效)。 3.【去皮】键:(去皮范围:小于等于1/3满量程)(1)按此键,重量显示为零, “去皮”标志出现。 (2)称重物取下,重量显示为负值,再按【去皮】键,称重复零,“去皮”标志消失。 4.【0】~【9】键,从右到左循环输入单价,隔3秒后再按任何数字键均可清除原单价,同时输入该数字。 5.【累计】键:称重状态时,按此键累计金额,“累计”标志出现,重量窗显示“Add”,单价窗显示累计的次数,金额窗显示为总计金额。若金额为零,则不进行累计,按此键无效。按任何数字键均可退出本次累计(记忆的累计数据仍保留),恢复称重状态,等待下一次累计。 6.【总计】键:用来查询累计金额,按此键,重量窗显示为“TOTAL”,单价窗显示为已累计的次数,金额窗显示为总计金额。按任何数字键均可退出此状态(记忆的累计数据仍保留),恢复称重状态, 7.【累清】键:按此键,清除内存的累计数据,退出累计状态,“累计”标志消失。 8.【清除】键:在称重状态下,按此键清除单价。 9.背光功能:按住【背光】键2---3秒,可以设定背光工作模式,共有常开,常关,自动3种模式。 24键计价秤键盘操作补充说明 1.【·】小数点键,长按小数点键2-3秒,可以选择是否使用小数输入功能。若使用该功能,按此键前,输入单价的整数部分,按此键后,输入小数部分。否则直接输入单价。 2.【累清/设定】键:“累计”标志出现时,按此键,清除内存的累计数据,退出累计状态,“累计”标志消失;“累计”标志没有出现时,按此键进入单价设定功能。 3. 【找钱】键:按此键进入找钱功能(金额显示为零或者金额显示“--OF--”时无效),重量窗显示“-CHA-”金额窗显示“------”提示输入收钱金额。此时可以按“0-9”数字键在单价窗输入收钱金额,按“清除”键可以清除输入的收钱金额,同时单价窗和金额窗恢复显示“------”,当输入金额大于原计价金额时,金额窗显示当前的找钱金额。再按一次【找钱】键,则退出找钱功能,恢复称重状态。 4. 【单价1】~【单价8】:用来提取已设定的单价; 5. 单价设定方法:

【精品毕设】基于51单片机的电子秤设计

毕业设计(论文) (2015届) 题目:基于51单片机的电子秤设计专业名称:应用电子技术 姓名:谢玉夏 学号:1210401038 班级:2012级应用电子技术 指导教师:刘志芳 2014年 12 月 30 日

摘要 称重技术是人类生活中不可缺少的部分,自古以来就被人们所重视。作为一种计量手段,被广泛应用于工业、农业、贸易等各个领域。随着现代文明和科学技术的不断进步,人们对称重技术的准确度要求也越来越高,电子秤产品技术水平的高低,直接影响各行各业的现代化水平和社会经济效益的提高。近年来,电子称重技术取得了突飞猛进的发展,电子秤在称重计量领域中也占有越来越重要的地位,其应用领域也在不断地扩大。尤其是商用电子秤,由于其具有准确度高、反应灵敏、结构简单等优点,被广泛应用于工商贸易、轻工食品、医药卫生等领域。目前,机械秤正在逐步被电子秤取代,这就促使电子秤的研究需要进一步的深入。 本设计是以AT89S51为核心的一种高精度电子秤,系统采用模块化设计法,其硬件结构主要包括:数据采集模块、最小系统模块、电源模块、键盘和显示模块。其中,数据采集模块包括称重传感器和A/D转换电路;最小系统部分主要包括AT89S51和扩展的外部数据存储器;键盘由4×4位矩阵键盘组成;显示部分LM4229液晶显示。软件部分由C语言编程,实现对各部分的控制。该电子秤可以能够显示商品的名称、价格、总量、总价等;能够自动完成商品的价格计算;能够储存几种简单商品的价格;能够具有超重提醒功能。其称重范围为0~5Kg,分度值为0.001g。整个系统结构简单,使用方便。 关键词:电子秤;AT89S51单片机;称重传感器;A/D转换电路;液晶显示 II

基于单片机的电子秤毕业设计报告

传感器文献综述 设计题目:传感器的前程与挑战姓名: 班级:测控111班 指导老师:汪斌/谢东福/陈如清日期:2014.10.8~ 10.17

目录 第一章课程设计任务书 (1) 1.1设计题目:电子秤硬件电路设计 (1) 1.2设计目的 (1) 1.3设计任务及主要技术指标 (1) 1.3.1课程设计的任务 (1) 第二章总体方案设计 (2) 2.1 电子秤工作原理 (2) 2.2 基于AT89C51单片机的主控电路 (3) 2.2.1 单片机硬件接口 (3) 2.3 电阻应变式传感器 (4) 2.4 前级放大器部分 (5) 2.5 A/D转换器 (8) 2.6 显示模块 (8) 2.7 键盘输入 (9) 第三章硬件设计 (10) 3.1 显示模块 (10) 3.2 测量电路 (10) 3.3 模数转换电路 (11) 3.4 键盘及报警模块 (12) 第四章软件设计 (13) 4.1 程序运行框图 (13) 4.2 ADC0832采样子程序 (14) 4.3 显示子程序设计 (14) 4.4 键盘控制子程序设计 (15) 4.5 报警子程序 (16) 第五章仿真结果 (17) 5.1 电子秤硬件电路仿真图 (17) 5.2 仿真结果 (17) 第六章结束语 (19) 参考文献 (19) 附录1 c程序源代码 (20)

第一章课程设计任务书 1.1设计题目:电子秤硬件电路设计 1.2设计目的 称重技术自古以来就被人们所重视,作为一种计量手段,广泛应用于各个领域,但是随着微电子技术的应用,传统的机械称重工具已经满足不了人们的要求。电子称量装置、电子秤、电子天平等以其准确、快速、方便、显示直观等诸多优点而受到人们的青睐,所以电子称替代机械称是发展的趋势。 1.3设计任务及主要技术指标 1.3.1课程设计的任务 设计任务要求: 电子秤硬件电路设计并用Proteus软件进行仿真调试。 设计硬件电路要求: 1、根据电路的要求选择电阻应变式传感器 2、可液晶显示所称物体重量、设置商品单价(元/Kg)及商品总价输出; 3、电子秤称重范围:0~9.999㎏;重量误差不大于 0.005㎏; 4、性能稳定、计数要精确,具有校准旋钮,简化电子称的校准操作; 5、具有溢出声光报警,提示用户纠正操作功能。

相关主题
文本预览
相关文档 最新文档