数衡软件电子秤
2022-03-26 19:34:15 922KB 数衡软件电子秤
1
比赛设计的电子称是以单片机为主要部件,用C语言进行软件设计。通过传感器测量信号,经过A/D转换系统转换信号输送给CPU控制系统,通过诺基亚5110屏幕显示系统数据,键盘输入系统用来输入操作指令,阀值报警系统可以防止超量程损坏电子称。 系统采用32位的M051芯片作为单片机的主控芯片,外围以称重电路,显示电路,报警电路,键盘电路等构成系统电路板,从而实现了自动称重的各种控制功能。 最终视频演示:https://v.youku.com/v_show/id_XMTQyNjY1Mzg0NA==.html 硬件框图 软件框图: 调试过程 调试工具:逻辑分析仪 示波器 信号发生器 万用表 串口调试助手 调试步骤: 1:压力传感器 淘宝链接: https://item.taobao.com/item.htm?spm=2013.1.0.127.C... 以上是压力传感器在淘宝的网址 将压力传感器用10伏电压供电,当传感器上放1千克的物体,绿线和白线之间的差分电压为0.5毫伏。说明传感器良好。 2:AD转换模块 用的是HX71124位AD转换模块 淘宝链接: https://item.taobao.com/item.htm?spm=a230r.1.10.168... AD的时序 24位AD,用信号发生器给1mv的信号,用串口调试助手对应的十进制输出为48到64,0到20mv的线性关系较好,20mv对应的十进制输出为1100到1241之间。然后改用压力传感器给信号,当压力传感器上不放物体时,对应的十进制输出为1912000,低三位数据的浮动较大,在处理数据时取高4位,结果得到最低位数据每增加1,表示重量增加2.12g。 调试进程: 能用键盘输入小数,与单价相乘,并显示浮点型总价,重量的精确度为2g,当重量超过40千克时,led灯会闪,发出警报。不足之处:每次上电时,在不放重物的情况下,初始值有变化,从0~6不等,用软件改初始值后能维持一段时间,但下次开机时初始值仍不为0. 软件部分遇到的问题及解决过程 1:显示频点不亮 出现的原因 :I/O口接错。 2:显示不清楚: 解决方法:在显示后面加延时,或者是利用其它程序的延时,将显示部分写在其它程序的后面,或者是将一直显示的字写在主函数里面,只执行一遍,这种方法显示效果很好,但 是无法进行刷新,高位显示的数据一旦出现,便不会再消失 3:按键检测不到 出现的原因,局部变量与全局变量命名相同,导致出现错误 还有是因为,延时过长。 4:数据浮动较大 解决方法:用去大去小取平均的数字滤波,但有时会在10个数据中出现几次最大值,于是又进行了中位值滤波和限幅滤波。 5:读取不到数据 出现的原因,P-DOUT不能给其他变量赋值。 解决方法:赋值时将P-DOUT换成PIN 硬件部分遇到的问题及解决过程 M051电子称PCB中的一些错误总结 1. AD模块中的两根差分信号线 中间要用一根地线隔开,线宽应加粗点, 差分信号走线:走线长度,宽度相等。(共模分量减小) 间距相同(差分阻抗一致,反射减小)。 (解决办法:割断PCB上面的这两根线,反面加两根飞线) 2. 电源模块中:变压器出来12V有效值,最高值接近17v,所以用击穿电压为16V的滤波电容 不行。 (解决办法,换个击穿电压为35V的电容。) 3. 蓝牙模块位置放反了,天线旁边不能有其他的线,所以天线一般放在板子的边缘。(以后画此模块要注意了) 4. 诺基亚5110屏的封装 四个固定孔间距大了一点点,板子厚度要用1.0cm的。 5. 画pcb时没预留正负极接口,之后硬件调试不方便。 6. 焊接元器件时,要先焊接电源模块,再测试此模块的工作情况。 再依次焊接其他模块。 7. 拼版时,两个板子之间的距离稍微要留大点,方便回来切割。 8. 画完PCB后,把最后画好的要存好档,不要以后调试时把以前错误的图拿出来调试 9. 5110屏幕布局时放倒了,以后画板时要和搭档多交流。 10:电压过高,导致显示频黑屏,蜂鸣器不受软件控制,一直响。 解决方法:将220转12的变压器换成220转6伏的变压器。 11:AD接反 解决方法:将排针反过来焊接 12:AD采集数据浮动很大 出现的原因:由于布线时两根输入信号线平行,也有可能是因为信号线太细,造成干扰 解决方法:将两根信号线隔断,再接线。 画M051电子称PCB的规范总结 1,布局时:每个模块电路里的元器件尽量放在一起,(遵循布线最短原则) 晶振电路元器件电容晶振的摆放,且下面不能走其他线,此电路离芯片对应的IO口要靠近。 最小系统vcc旁的电容也要靠近mcu 2.布线时: 1. 线宽:最小用10mil,主电源线,电源线要更宽,这个根据电流大小判断。 每个模块的电源线也要适当加粗。 2.先
2022-03-25 18:41:35 3.7MB 电子秤 hx711 电子秤电路 电路方案
1
赛多利斯集团成立于1870年,总部位于德国哥廷根,在全球已拥有5,000多名员工。赛多利斯集团是一家国际***的实验室仪器、生物制药技术和设备的供应商,提供生物工艺过程、实验室产品与服务、工业称重产品。
2022-03-14 13:24:37 5.8MB 赛多利斯
1
概述: 该电子秤硬件设计电路主要是基于单片机STC89S52为核心的控制单元实现数据的处理,采用压力传感器对数据进行采集,电子秤专用24位AD转换芯片HX711对传感器采集到的模拟量进行AD转换,转换后的数据送到单片机进行处理显示,数据显示由LCD1602液晶实现,液晶显示效果稳定无闪烁。 电子秤实物展示: 有键盘输入及液晶显示的结构简图: HX711传感器电子秤程序源码:
2022-03-10 13:35:13 9.37MB 电子秤 hx711 电路方案
1
本论文为本人所原创!论文里含有所有程序代码!只能用于借鉴学习,不可用于商业用途!版权所有,盗版必究!转载请声明原作者小小新!
2022-03-08 22:55:55 3.66MB 单片机
1
c# winform串口电子秤集成代码,自己写的,有需要的可以拿去
2022-03-07 12:33:06 227KB C#
1
/// /// 执行AT指令并返回 成功失败 /// /// AT指令 /// AT指令标准结束标识 /// private void ATCommand3(string ATCmd, string StCmd) { string response = ""; response = ATCommand(ATCmd, StCmd); } /// /// 执行AT指令并返回结果字符 /// /// AT指令 /// AT指令标准结束标识 /// private string ATCommand(string ATCmd, string StCmd) { string response = ""; int i; if (!ATCmd.EndsWith("\x01a")) { if (!(ATCmd.EndsWith("\r") || ATCmd.EndsWith("\r\n"))) { ATCmd = ATCmd + "\r"; } } Sp.WriteLine(ATCmd); //第一次读响应数据 if (Sp.BytesToRead > 0) { response = Sp.ReadExisting(); //去除前端多可能多读取的字符 if (response.IndexOf(ATCmd) > 0) { response = response.Substring(response.IndexOf(ATCmd)); } else { } if (response == "" || response.IndexOf(StCmd) = 0) { string[] cols = new string[100]; cols = response.Split(';'); if (cols.Length > 1) { string errorCode = cols[1]; } } } } } //读第一次没有读完的响应数据,直到读到特征数据或超时 for (i = 0; i = 0) { break; } } return response; }
2022-03-07 12:26:11 49KB C# .NET 电子秤 串口
1
最全串口读取地磅电子秤数据
2022-02-25 09:04:57 87KB stm32 arm 嵌入式硬件 单片机
1
技展电子秤链接电脑读取数据,usb链接电脑,包里自带驱动。
2022-02-24 11:01:07 526KB 子秤连接电脑
1
C# 串口读取地磅电子秤源码
2022-02-22 13:02:52 55KB 串口通信
1