电子称编程
❶ 珠宝天平电子秤的串口编程之自动连续获取重量
当前已实际测试支持电子秤型号:
梅特勒 Mettler-Toledo: JE203GE/02
赛多利斯 sartorius:BSA系列、SQP系列电子天平
新光 shinko:GS423
遇到赛多利斯需要自动获取重量问题,排查发现,赛多利斯与梅特勒不同,梅特勒可以稳定后可以自动输出一次,赛多利斯就只能设置为一直输出,一直连续收到串口传来的数据处理是新情况,于是准备给软件增加获取连续重量的功能,以达到自动化使用电子秤的目的。
梅特勒电子秤连续输出状态下 (host设置为snd.cont状态),电子秤连续输出重量到串口,处理思路如下:
1、连续观察电子秤输出的重量值,梅特勒有不稳定状态和稳定状态区分,不稳定是 SD 字符开头,稳定是 SS 开头;
2、用ss做分隔符,获取单个重量值加入重量函数,当函数内连续获取的稳定重量为20个,并且一致时,输出重量一次;
3、再增加一个判断函数,每次获取不稳定标识符 SD 时,作为再次称重标识符号,以达到,每次获取一次稳定重量后不重复输出的目的;
4、顺带增加自动判断如果是梅特勒电子秤,自动选择电子秤型号为梅特勒功能,减少人工选择判断;
❷ 电子秤怎么调
电子秤的使用方法如下:
1、将电子秤放置在一个水平的台面上,摆放稳定即可。
2、开启电源,电源开关位置通常位于电子秤右下角,不要将物品放在秤盘上,等显示屏自动清零。
3、如果刚打开电源的重量不是零,请稍等一会儿,或者重新打开电源使其为零。
4、输入物品的单价,将商品放置在电子秤上就能计算出价格。
❸ VB编程,通过串口读取电子秤数据
Private Sub Command1.Click()
MSComm1.Output = Chr$(&H1B)+Chr$(&H70)
sleep(200) ;加一延时,该函数需在开头声明,自己搜网络
Text1.Text = MSComm1.Input
End Sub
;要求不高无需用MSComm1_OnComm()。
❹ 顺展电子秤编程我想知道改店名怎么改
你可以去顺展电子程设置里面找出编程,在把自己喜欢名改上去,改名跟手机一样比喻改自己网名一样设置改法的
❺ 电子秤显示char
通过它能找到以它为地址的内存单元。Char是计算机编程语言(c、c++、java、VFP等)中可容纳单个字符的一种基本数据类型,电子秤显示char是指通过它能找到以它为地址的内存单元。
❻ 接PLC的电子秤是如何来连接的
接PLC的电子秤是如何来连接的
电子秤是我们如今应用的非常广泛的一种称量工具了,在电子秤之前,提到秤我们*想到的就是木杆秤和天平了,然而电子秤出来之后因为其方便快捷的优点,所以使得它迅速的占领了我们心中对于秤的形象。随着时代和科技的发展,越来越多的高新技术被应用在了电子秤上,接PLC的电子秤就是很好的一个例子。
PLC,是可编程逻辑控制器,它是采用一类可编程的存储器用来存储内部的程序,然后来执行逻辑运算、顺序控制、定时、技术和算术操作等面向客户的置零,还可以通过数字或模拟式输入输出控制各种类型的机械或者生产过程,接PLC的电子秤可以通过电子秤称量物品重量时得出的数据输入PLC,然后PLC可以更具物体的重量来分类以及做出相应的动作,这对于工厂流水线的自动化有着很大的帮助,那么,接PLC的电子秤是如何来连接的呢。
通常PLC都会有一个模拟输入的端口,当电子秤称量物体得出数据后,便会通过电子秤本身带的RS232模块将重量数据传输到PLC上,这要求所使用的PLC有RS232数据接口,而且要连接成功的话还需要电子秤的通信协议和PLC的相同,不仅是通信协议,数据格式和椒盐方式也要一样,这样接PLC的电子秤才能和PLC链接成功。
❼ 麻烦谁能帮一下,我在制作电子秤是编程遇到了困难,怎样把A/D输入的二进制小数用数码管输出成十进制的啊!
如要显示0.12,0.12*10后取整后为1查询字模显示,然后0.12*100取整为2查询字模显示就可以了。
你可以试下。
❽ 关于给电子秤称重记录的编程
首先你的电子秤要有串口,然后你再买根连接用信号线和电脑主机串口连接,最后装一套称重软件就可以了
❾ 用labview通过串口读电子秤的数据,这样编程怎么读不出数据啊
这是直接用的“Basic Serial Write and Read.vi”这个例子……
还有就是这个延时后串口有多少字节就读多少字节的做法,范例中只是展示一下串口的各种操作,就把“串口字节数”这么用了,只在个别情况适用。
还有配置串口的那些接线端,如果使用默认值,可以不连。如果使用固定的其他值,用常量就行了,弄太多用不到的输入控件在界面上显得很乱,而且还可能因为没设置好控件默认值造成每次打开后需要填一遍那些数值,有默认值也可能不小心改动了,发生难以查出的错误。
如果是发一条取数的命令,电子秤发回一个数值,不妨改成这样:
停止按钮在另外一个事件分支,关闭串口函数也在其中。得到字符后,再用“扫描字符串”或“从字符串还原”函数得到数据。然后连接波形图表等控件。
❿ 谁能教教我怎么学做电子秤的程序啊 最好给我一个电子秤的程序看着学习
一、总线:我们知道,一个电路总是由元器件通过电线连接而成的,在模拟电路中,连线并不成为一个问题,因为各器件间一般是串行关系,各器件之间的连线并不很多,但计算机电路却不一样,它是以微处理器为核心,各器件都要与微处理器相连,各器件之间的工作必须相互协调,所以就需要的连线就很多了,如果仍如同模拟电路一样,在各微处理器和各器件间单独连线,则线的数量将多得惊人,所以在微处理机中引入了总线的概念,各个器件共同享用连线,所有器件的8根数据线全部接到8根公用的线上,即相当于各个器件并联起来,但仅这样还不行,如果有两个器件同时送出数据,一个为0,一个为1,那么,接收方接收到的究竟是什么呢?这种情况是不允许的,所以要通过控制线进行控制,使器件分时工作,任何时候只能有一个器件发送数据(可以有多个器件同时接收)。器件的数据线也就被称为数据总线,器件所有的控制线被称为控制总线。在单片机内部或者外部存储器及其它器件中有存储单元,这些存储单元要被分配地址,才能使用,分配地址当然也是以电信号的形式给出的,由于存储单元比较多,所以,用于地址分配的线也较多,这些线被称为地址总线。
二、数据、地址、指令:之所以将这三者放在一起,是因为这三者的本质都是一样的——数字,或者说都是一串‘0’和‘1’组成的序列。换言之,地址、指令也都是数据。指令:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:
1�6�1地址(如MOV DPTR,#1000H),即地址1000H送入DPTR。
2�6�1方式字或控制字(如MOV TMOD,#3),3即是控制字。
3�6�1常数(如MOV TH0,#10H)10H即定时常数。
4�6�1实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际输出的值。 理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了。
三、P0口、P2口和P3的第二功能用法:初学时往往对P0口、P2口和P3口的第二功能用法迷惑不解,认为第二功能和原功能之间要有一个切换的过程,或者说要有一条指令,事实上,各端口的第二功能完全是自动的,不需要用指令来转换。如P3.6、P3.7分别是WR、RD信号,当微片理机外接RAM或有外部I/O口时,它们被用作第二功能,不能作为通用I/O口使用,只要一微处理机一执行到MOVX指令,就会有相应的信号从P3.6或P3.7送出,不需要事先用指令说明。事实上‘不能作为通用I/O口使用’也并不是‘不能’而是(使用者)‘不会’将其作为通用I/O口使用。你完全可以在指令中按排一条SETB P3.7的指令,并且当单片机执行到这条指令时,也会使P3.7变为高电平,但使用者不会这么去做,因为这通常这会导致系统的崩溃。
四、程序的执行过程: 单片机在通电复位后8051内的程序计数器(PC)中的值为‘0000’,所以程序总是从‘0000’单元开始执行,也就是说:在系统的ROM中一定要存在‘0000’这个单元,并且在‘0000’单元中存放的一定是一条指令。
五、堆栈: 堆栈是一个区域,是用来存放数据的,这个区域本身没有任何特殊之处,就是内部RAM的一部份,特殊的是它存放和取用数据的方式,即所谓的‘先进后出,后进先出’,并且堆栈有特殊的数据传输指令,即‘PUSH’和‘POP’,有一个特殊的专为其服务的单元,即堆栈指针SP,每当执一次PUSH指令时,SP就(在原来值的基础上)自动加1,每当执行一次POP指令,SP就(在原来值的基础上)自动减1。由于SP中的值可以用指令加以改变,所以只要在程序开始阶段更改了SP的值,就可以把堆栈设置在规定的内存单元中,如在程序开始时,用一条MOV SP,#5FH指令,就时把堆栈设置在从内存单元60H开始的单元中。一般程序的开头总有这么一条设置堆栈指针的指令,因为开机时,SP的初始值为07H,这样就使堆栈从08H单元开始往后,而08H到1FH这个区域正是8031的第二、三、四工作寄存器区,经常要被使用,这会造成数据的浑乱。不同作者编写程序时,初始化堆栈指令也不完全相同,这是作者的习惯问题。当设置好堆栈区后,并不意味着该区域成为一种专用内存,它还是可以象普通内存区域一样使用,只是一般情况下编程者不会把它当成普通内存用了。
六、单片机的开发过程: 这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编辑器(如EDIT、CCED等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明: ORG 0000H LJMP START ORG 040H START: MOV SP,#5FH ;设堆栈 LOOP: NOP LJMP LOOP ;循环 END ;结束 最后祝你学的愉快!字难打,望能采纳!!O(∩_∩)O谢谢!