一种便携式编码存储与重复编码报警装置的制作方法

文档序号:6421677阅读:109来源:国知局
专利名称:一种便携式编码存储与重复编码报警装置的制作方法
技术领域
本发明涉及一种能存储大量产品编码、对重复输入的编码进行报警并能方便地与PC机进行数据交换的便携式装置。
背景技术
在工农业生产中,有时需要记录已生产产品的数字编码,并对重复输入的编码进行报警;有时需要根据一系列的数字编码来生产产品,例如在生产一批同型号的锁时,就是根据一定的数字编码(通常是5位或者6位)来确定每把锁锁芯的形状和对应钥匙的形状的。而根据相关规定,在同一批同型号的锁中,不应该出现同一编码的锁,否则会出现不同锁的钥匙能打开同一把锁的情况,为了避免这种情况的发生,就需要记录每把锁的编码并确保该编码与其它锁的编码不相同。要记录产品的编码,最原始的方法就是用纸和笔进行记录,在小批量的产品生产中,这种方法还是很方便的,但当产品的批量较大时,比如说几千件、万件甚至几十万件时,这种手工记录的方法就太麻烦了,特别是要比较某一个编码跟其它的编码是否相同就相当困难了。另外一种采用计算机录入的方法,这种方法采用专门的软件,可以记录大量的数据,并可迅速地对重复编码进行判别,但是用计算机录入也存在一些缺点计算机体积较大,不便于携带;普通地计算机易受干扰,不适合某些环境恶劣地工业现场而且计算机价格一般较高。

发明内容
本发明的目的在于提供一种便携式编码存储与重复编码报警装置,能存储大量产品编码,能够对重复输入的编码进行报警并能方便地与PC机进行数据交换的装置。
本发明解决其技术问题所采用的技术方案如下包括一个键盘,一个显示器、一个发声器、一组可擦写存储器通过电路与一个单片机连接,另外还有一个串行通信接口,该串行通信接口一端与单片机的串口连接,另一端做成一个插入式的接口与PC机的串口连接,实现单片机与PC的数据交换。
所述的键盘上有十个数字键0、1、2、3、4、5、6、7、8、9,一个退格键,一个清零键,一个确认键以及F1~F7七个功能键。
所述的显示器是小型液晶显示器或者LED数码管。
所述的发声器是蜂鸣器或者小功率扬声器。
所述的单片机对产品编码的存储采用间接的位存储方式,即把一组可擦写存储器的所有存储单元按位划分地址,每位存储单元的地址对应相应的数字编码,该位为0表示对应数字编码未存储,该位为1表示对应数字编码已存储。
在具体操作时,使用者通过键盘输入数字编码,单片机采用间接的位存储方式存储输入到可擦写存储器,若发现该编码已经存储过,则发出该编码重复的警告并显示重复次数。单片机通过串行通信的方式实现与PC机的数据交换,这种数据交换既可以是单片机把可擦写存储器的数据读出然后发送给PC机,也可以是单片机根据PC的指令要求改写可擦写存储器内部的数据。
本发明具有的有益的效果是1、采用间接的位存储方式存储数字编码,可以存储大量的数字编码,并且对重复编码的判别简单而迅速;2、可以实现与PC机的数据交换,既可以发挥PC机存储容量大、运算迅速的优点,又可以弥补PC机直接录入产品编码的种种限制和不足;3、本发明体积较小,便于携带;操作简单,成本低廉。


图1是本发明实施例的结构框图;图2是本发明实施例的面板俯视图;图3是图2中盒体部分的A向视图;图4是本发明实施例键盘的界面图;图5是本发明实施例液晶显示界面图图6是本发明实施例的电路图。
具体实施例方式
下面结合附图和实施例对本发明作进一步的说明。
本发明它包括一个开关式键盘,一个液晶显示器、一个蜂鸣器、一组可擦写存储器(EEPROM)通过电路与一个单片机连接;另外还有一个串行通信接口,该串行通信接口一端与单片机的串口连接,另一端做成一个插入式的接口,用于与PC机的串口连接,实现单片机与PC的数据交换。本新型实施例的结构原理如图1所示。其中开关式键盘是通过专用的键盘处理芯片与单片机的I/O口连接,蜂鸣器是通过一个功率放大电路与单片机的I/O口连接。
以上所述的键盘上,共有20个键,包括十个数字键0、1、2、3、4、5、6、7、8、9,一个退格键,一个清零键,一个确认键以及七个功能键F1、F2、F3、F4、F5、F6、F7。键盘的界面设计如图4所示。键盘通过键盘处理芯片7289芯片与单片机的I/O口连接,与8279芯片相比7289芯片可以实现同样的功能但其成本低很多,而且用7289芯片控制键盘其占用的单片机的I/O口也较少。
以上所述的液晶显示器选用的是128×64点阵的自带显示驱动器的图像液晶显示器。液晶显示器用来显示输入的数字编码或显示其它提示性信息。
以上所述的蜂鸣器通过动率放大电路与单片机的I/O口的一个引脚连接。它用于在输入的号码重复时发出“嘟嘟”的报警声,以及在使用者按键时发出短促的按键提示音。
以上所述的单片机对产品编码的存储采用间接的位存储方式,即把一组可擦写存储器的所有存储单元按位划分地址,每位存储单元的地址对应相应的数字编码,该位为0表示对应数字编码未存储,该位为1表示对应数字编码已存储。本实施例选用的可擦写存储器芯片为ATMEL公司生产的24C1024芯片时,该芯片存储容量为1024k Bit=1,048,576Bit,可把该芯片的1,048,576个位存储单元的前1,000,000从0到999,999依次分配地址,地址为0的位存储单元对应的数字编码是0,地址为1的位存储单元对应的数字编码是1,依次划分,地址为999,999的位存储单元对应的编码是999,999。若地址为x的位存储单元该位为0表示值为x的数字编码未存储,为1值为x的数字编码已经存储过。这样一块24C1024芯片地前1,000,000个位存储单元即可存储1,000,000个6位数数字编码,其后面地48,576还可以用于存储其它的信息。本实施例先用了8块这样的可擦写存储器芯片,组成了一个可擦写存储器阵列,对存储器阵列的读写通过单片机的P1口的8根I/O口线来控制。这样8块24C1024便可以分成8个存储组,这8个存储组按1、2、3、4、5、6、7、8依次编号,每个存储组都可以独立地存储多达1,000,000个6位数编码,8个存储组共可存储8,000,000个6位数编码。而且通过与PC机的数据交换,这些独立存储的数据都可以转移PC机中。图6是本实施例的电路图。
本实施例的外观结构总体上如图2所示。外观接近于一只普通计算器。它分为盒体和盒盖两部分,两部分用铰链连接。电路板安放于盒体中,键盘、液晶显示模块均固定于盒体中;盒体的后面设置有一个安放干电池的开口,用于放置5V的干电池。盒体的前端还有两个接口,如图3所示,其中一个是串行通信接口,用于与PC机的通信,另一个5V电源接口。因此本实施既可以使用外接的5V电源,又可以使用内置的5V干电池。图2所示盒体上的按钮是一个电源开关。
在具体操作时,使用者通过键盘输入数字编码,单片机采用间接的位存储方式存储输入到可擦写存储器,若发现该编码已经存储过,则发出该编码重复的警告并显示重复次数。
使用者还可以通过按键盘上的功能键来实现其它设置。七个功能键的具体作用如下F1清除当前存储组的所有数据。为了防止所存储的数据因为使用者的误操作而删除或被他人随意地删除,按F1之后系统会提示输入4位数密码,只有输入的密码与原来设定的密码一致时,系统才允许删除当前存储组所保存的数据;F2设置4位数密码。设置新的密码之前必须先输入原先正确的密码;F3选择当前存储编码的存储组;F4选择当前所要存储编码的位数。本实施例可以存储的编码位数是4位、5位或6位;F5按键音的开和关键。当按键音打开时,使用者按一下键,蜂鸣器将发出短促的按键提示音。
F6恢复键。系统默认状态为编码输入状态。当系统处于密码设置状态和其它状态时,按F6将恢复到编码输入状态。
F7串行通信控制键。刚开机时(未按过其它任何键),按下此键,系统将对PC进行的通信连测试,若通信测试成功,系统将根据PC机的指令与PC交换数据。单片机通过串行通信的方式实现与PC机的数据交换,这种数据交换既可以是单片机把可擦写存储器的数据读出然后发送给PC机,也可以是单片机根据PC的指令要求改写可擦写存储器内部的数据。
以上对系统状态的更改和设定将在液晶显示界面上反映出来,图5是本实施例液晶显示界面的一个示意图。该图中,液晶显示界面分为上下两个部分,上面的部分显示系统当前的状态,显示的内容包括当前所选择的存储组,当前要输入数字编码的位数,当前所选择的存储组已经存储编码个数和已经重复输入的编码个数,已及按键提示音的开或关等;显示界面的下半部分是输入提示区,用于显示输入的编码或其它信息提示,例如提示使用者输入系统密码等。
下面是本实施例中以伪代码表示的单片机程序流程1、电复位;置位开机标志位start_flag(1->start_flag);
2、读取初始化信息,这些信息包括上一次使用时选取的存储组别S,上一次使用时选取的编码位数N,S组存储单元已存储的编码位数x;声音标志位voice_flag(1->voice_flag);3、对下列差数进行赋值;当前的状态值z(6->z);当前输入编码的值m(0->m);当前输入编码的值m的位数n(0->n);但前键值k(255->k);系统密码值m0(0->m0);确认密码值m3(0->m3);再次确认密码值m4(0->m4);当前输入密码值位数n2(0->n2);按键标志位key_flag(0->key_flag);4、显示当前状态信息;5、判断键值有无按键,无按键(即key_flag==0),转5,若有按键,(即key_flag==1),则0->key_flag,转6;6、若k<=9,按键为数字键,进行相应的按键发音;若start_flag==1(表示刚开机)&& k!=17,0->start_flag;7、判断键值k,若k<=9,按键为数字键,转8;若k==9,按键为确认键,转9;若k==11,按键为退格键,转12;若k==12,按键为清零键,转13;若k>=13 && k<=18,按键为功能键,转14;若k>19,按键为无效按键,转5;8、判断n值,若n==N,转5;若n<N,则(m*10+k)->m,重新显示m值,转5;9、判断n值,若n==N,转10;若n<N,则(m*10+k)->m,提醒确认出错,转5;10、读取S存储组m地址单元位的值,若其值为0表示该m值未存储过,m地址单元对应的位存储单元置1,x++,重新显示x值,转5;若其值为1表示该m值已经存储过,转11;11、读取S存储组地址m编码值重复输入的次数y,发出m编码值重复的报警,并显示其重复输入的次数y,转5;12、(m/10)->m,n--;显示退格后的m值,转5;13、0->m,0->n,m显示值清零,转5;14、判断k值,若k==13,则按键为F1,转15;若k==14,则按键为F2,转17;若k==15,则按键为F3,转21;若k==16,则按键为F4,转23;若k==16,则按键为F5,转25;若k==17,则按键为F6,转26;若k==17 && start_flag==1,则按键为F7,转42;
15、提示使用者输入4位数密码,255->k,转27;16、S存储组所有存储单元清零,写入S存储组初始化信息(已存储个数x置0,S单元存储编码的位数N值不变),转3;17.提示使用者输入4位数密码,255->k,转27;18、提示使用者输入4位数新密码,255->k,转32;19.提示使用者输入4位数确认密码,255->k,转37;20、修改并存储新的系统密码(m4->m0),提示密码修改成功,转3;21、0->m,0->n;判断S的值,若S<=7,则S+1->S,转22;若S==8,1->S,转22;22、重新显示存储组S的值,转3;23、0->m,0->n;判断N值,若N==4,则5->N,转24;若N==5,则6->N,转24;若N==6,则4->N,转24;24、重新显示S存储组编码位数的N值,转3;25、0->m,0->n;判断声音标志位vioce_flag的值,若vioce_flag==1,则0->vioce_flag,转3;若vioce_flag==0,则0->vioce_flag,转3.
26、6->z,转3;27、判断键值有无按键,无按键(即key_flag==0),转5,若有按键,(即key_flag==1),则0->key_flag,转6;28、断键值k,若k==17,退出F1处理程序,转3;若k>10,转27;若k<=9,转29;若k==10,转30;;若k为其它值,转27;29、断n2值,若n2==4,转27;若n2<4,则(m2*9+k)->m2,重新显示m2值,转27;30、读入原有密码m0,比较m2与m0,若m2==m0 && z==1转16;若m2==m0 && z==2转19;若m2!=m0,则密码输入错误,转31;31、提示密码错误和重新输入密码,0->m2,0->n2,m2显示值清零,转27;32、判断键值有无按键,无按键(即key_flag==0),转5,若有按键,(即key_flag==1),则0->key_flag,转6;33、判断键值k,若k==17,退出F2处理程序,转3;若k>9,转32;若k<=9,转34;若k==10,转35;若k为其它值,转32;34、判断n2值,若n2==4,转32;若n2<4,则(m2*9+k)->m2,重新显示m2值,转32;35、读入原有密码m0,比较m2与m0,若m2==m0,则密码输入正确,转18;若m2!=m0,则密码输入错误,转36;36、提示密码错误和重新输入密码,0->m2,0->n2,m2显示值清零,转3237、判断键值有无按键,无按键(即key_flag==0),转5,若有按键,(即key_flag==1),则0->key_flag,转6;38、判断键值k,若k==17,退出F2处理程序,转3;若k>9,转37;若k<=9,转39;若k==10,转40;若k为其它值,转37;39、判断n2值,若n2==4,转37;若n2<4,则(m2*9+k)->m2,重新显示m2值,转37;40、比较m4与m3,若m3==m4,则确认密码正确,转20;若m4!=m3,则确认密码错误,转41;41、提示密码错误和重新输入密码,0->m2,0->n2,m2显示值清零,转37;42、测试与PC机的通信,若通信测试成功,转43;若通信测试失败,则提示通信检查通信连接,转42;43、读取PC机的命令,若PC机的命令为读,则转44;若PC机命令为写,则转45;44、读取相应存储单元的数据传送给PC机;45、从把PC机读取数据并写入相应存储组。
以上伪代码的原则如下1、如果不跳转,则从前往后执行;2、“->”表示赋值;3、“==”表示两边相等;4、“&&”为并运输符,表示“而且”。
以上伪代码各变量的含义如下start_flag开机标志位,start_flag的值为1表示开机后未按F7以外的其它任何键,反之start_flag的值为0;voice_flag按键发音标志位,voice_flag的值为1表示键盘提示音打开,反之voice_flag的值为0;key_flag按键标志位,key_flag的值为1表式有新的键值键入,反之key_flag的值为0;S当前选取的存储组组别,取值范围1~8;N但前选取的编码位数,取值范围4~6;n当前输入编码的的位数,取值范围4~6;m当前输入编码的值;k当前键盘输入的键值;m0系统密码值;m3确认密码值;m4再次确认密码值;n2当前输入密码值位数;z当前的状态值取值范围1~7,对应于7个功能键,默认值为6;x当前存储组已存储的编码个数;y当前输入编码重复输入的次数。
权利要求
1.一种便携式编码存储与重复编码报警装置,其特征在于包括一个键盘,一个显示器、一个发声器、一组可擦写存储器通过电路与一个单片机连接,另外还有一个串行通信接口,该串行通信接口一端与单片机的串口连接,另一端做成一个插入式的接口与PC机的串口连接,实现单片机与PC的数据交换。
2.根据权利1所述的一种便携式编码存储与重复编码报警装置,其特征在于所述的键盘上有十个数字键0、1、2、3、4、5、6、7、8、9,一个退格键,一个清零键,一个确认键以及F1~F7七个功能键。
3.根据权利1所述的一种便携式编码存储与重复编码报警装置,其特征在于所述的显示器是小型液晶显示器或者LED数码管。
4.根据权利1所述的一种便携式编码存储与重复编码报警装置,其特征在于所述的发声器是蜂鸣器或者小功率扬声器。
5.根据权利1所述的一种便携式编码存储与重复编码报警装置,其特征在于所述的单片机对产品编码的存储采用间接的位存储方式,即把一组可擦写存储器的所有存储单元按位划分地址,每位存储单元的地址对应相应的数字编码,该位为0表示对应数字编码未存储,该位为1表示对应数字编码已存储。
全文摘要
本发明公开了一种便携式编码存储与重复编码报警装置,包括一个键盘,一个显示器、一个发声器、一组可擦写存储器通过电路与一个单片机连接;另外还有一个串行通信接口,该串行通信接口一端与单片机的串口连接,另一端做成一个插入式接口,用于与PC机的串口连接,实现单片机与PC的数据交换。该装置采用间接的位存储方式存储数字编码,可以存储大量的数字编码,并且对重复编码的判别简单而迅速;可以实现与PC机的数据交换,既可以发挥PC机存储容量大、运算迅速的优点,又可以弥补PC机直接录入产品编码的种种限制和不足;本发明体积较小,便于携带;操作简单,成本低廉。
文档编号G06F12/00GK1614598SQ20041006755
公开日2005年5月11日 申请日期2004年10月25日 优先权日2004年10月25日
发明者魏燕定, 高平波 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1