一种基于IIC总线协议EEPROM读写功能的贩卖机的制作方法

文档序号:22947065发布日期:2020-11-19 19:31阅读:120来源:国知局
一种基于IIC总线协议EEPROM读写功能的贩卖机的制作方法

本实用新型涉及单片机控制技术领域以及iic总线技术领域。



背景技术:

随着单片机技术的发展,可以发现实际应用中经常会遇到单片机i/o接口资源不够用的情形,这使人们不得不采用一种新的简单便捷的连线方式。iic等总线的出现,大大的解决了这一问题,一定程度上,它可以简化电路的设计。在减小系统体积的同时也保证了系统的可靠性。利用iic总线协议方便了系统的更改和扩充。

良好的可移植性是iic总线协议具有的一大特点,在利用软件来模拟iic时序的同时,还可以解决处理器中iic控制器的引脚不够用的问题。但是,iic总线协议的方式增加了系统中软件处理的过程,因此也降低了系统中处理器的效率,在一定程度上存在着一些缺点,可能会影响到数据传输的传输,使数据在传输过程中改变甚至是丢失。为了保证iic总线上数据的准确性,iic总线系统被设置成为串行接口,这一设计不仅简单了结构,还保证了数据和信号传输的速度。一条iic总线上可以连接多个具有iic接口的设备。通过硬件外围电路即可确定各个器件的地址,再利用软件寻址即可方便地扩展多型设备。

iic总线的应用大大的方便了人们的生活,它减少了嵌入式系统的体积,使系统的封装更为简便,减少了i/o口,实现了更高的通讯速率,给嵌入式系统提供了更高质量的控制方式。iic总线最常见于服务器的管理,它很好的实现了各个组件之间的通信。通过这种总线的连接,我们可以像管理员一样更好的监测到各个组件的工作状态及系统参数。如若有紧急情况发生,可以及时的发现,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控保证了硬盘,内存,系统温度等多个参数的管理,更好的保障了单片机系统的安全。单性有效成为了单片机iic总线最主要的特点。外围电路的各个组件都是直接连在iic总线接口上的,所以该总线占用的空间很少,这也就大大的减少了i/o口管脚的数量和电路板上空间,缩小了成本。



技术实现要素:

本实用新型旨在提供一种基于iic总线协议eeprom读写功能的贩卖机,来解决传统商家贩卖机的控制系统结构复杂,传输速率慢,接口线少等缺点,以及器件封装形式小等缺点。让新型贩卖机去适用于更多、更广的人群与商家销售模式。

本实用新型为解决上述技术问题采取的技术方案是:

一种基于iic总线协议eeprom读写功能的贩卖机,所述贩卖机包括单片机最小系统,时钟电路模块,复位电路模块,显示模块,按键模块等重要模块;所述时钟电路模块使用stc59c52单片机、rc振荡器和外部晶体振荡器;所述复位电路模块需要手动复位电路;所述显示模块使用jm1602液晶;所述按键模块采用4*4的矩阵键盘通过i/o口的高低电平来判断按键按下。

进一步地,时钟电路模块使用stc59c52单片机、rc振荡器和外部晶体振荡器。stc89c52单片机根据电压可以分为5v(5.5v~3.3v)单片机和3v(3.8v~2.0v)。本次设计采用+5v的vcc外部稳压电路。将5v的电压接到单片机上,单片机vss引脚接到gnd,为单片机提供能量,保证其正常的工作。

进一步地,复位电路模块,所述复位电路模块需要手动复位电路。rst引脚为单片机的复位引脚。当rst上的高电平达到2个机器周期以上时,复位功能开启。此次设计在vcc和rst中间加一个10uf的电容,电容的另一端通过一个阻值为10k的电阻接地。连接方式如图所示。按键按下时电容被短路,电阻上的电压为vcc。当按键断开时,rst经电阻接地,电流降为0外加在电阻上的电压将变为0v。rst端为低电平,复位完成。

进一步地,显示模块,使用jm1602液晶。将液晶模块的d0~d7口与单片机p0口相连接。p0口接一个上拉电阻。vot端接一个变阻器再接至电源,通过改变变阻器的阻值来改变加在液晶上的电压,从而调节液晶显示的亮度,达到最好的显示效果。其中r/s端是数据命令选择端,该端接入高电平时选择数据,接低电平时选择命令。r/w端为读写选择端,该端接入高电平时是读操作,接低电平时是写操作。e端是使能端,bla是背光源的正极,blk是背光源的负极。

进一步地,按键模块,所述按键模块采用4*4的矩阵键盘通过i/o口的高低电平来判断按键按下。s6,s7,s8,s9分别代表价格7元,8元,9元,10元的按键k1、k2、k3、k4。s10代表的是操作错误时的撤销键k5,s12表示的是读取总收入的按键k6,s13代表的是将总金额清零的按键k7。利用按键扫描的方法来确定哪一个按键被按下。先将第一行线电平置低,再将p3口当前的状态值赋给变量temp,然后再将temp和0xf0做一个与运算,得出的结果再重新赋值给temp,如果得出的temp等于0xf0,则证明没有按键按下;如果不等于0xf0,则表示该行有按键被按下。用switchcase语句判断那一列按键被按下。

k1、k2、k3、k4按键分别处于按下状态时,把价格7元、8元、9元、10元存储在eeprom的第1位存储地址当中,实现了写eeprom的过程,同时将价格显示在液晶上,并记录价格按键按下的次数,作为商品的个数显示在液晶上。当价格按键松开时,把存储地址中的金额与液晶显示的价格相加,得出当前的收入并将其写入eeprom的第8位存储地址当中。当数据输错时,利用k5按键,将此时的价格清零,同时总收入减去输错的价格,相当于将错误的数据删除。当k6按键按下时,将此时第8位存储地址中的数据读出来,在液晶上显示出来。k7按键按下时,将总收入的显示清零。

本实用新型的有益效果是:

它可以记录商家每天卖出商品的数量和价格,并可以实时记录总的营业额。其中硬件电路主要包括按键电路、jm1602c显示电路等各种电路模块。在充分考虑了各种外界情况下,通过硬件电路设计和软件代码编写,实现了数据写入与读出的基本功能。与其他总线相比,iic总线具有控制方式简单,封装形式小,通信速率高等优点,是一种真正的多主机总线。利用iic总线的协议基本实现了对eeprom的读写进行系统地设计。在单片机iic总线系统,矩阵键盘和lcd液晶的辅助下,完成了商家交易的记录。代码编译完成后,将其刻录到mcu中,进行实物调试,可以发现,本次设计的系统能够实现利用iic总线协议对eeprom的读写操作,能够记录商品的总数量与总营业额,基本完成预期目标。简易商家贩卖器能够给人们带来方便,可以投入使用。

附图说明

图1是本实用新型所述基于iic总线协议eeprom读写功能的贩卖器框图;

图2是本实用新型所用单片机的引脚图;

图3是本实用新型时钟电路模块电路图;

图4是本实用新型复位电路模块电路图;

图5是本实用新型显示模块液晶电路连接图;

图6是本实用新型按键模块矩阵键盘连接图;

图7是本实用新型系统设计总流程图;

图8是本实用新型对eeprom的读写流程图;

图9是本实用新型按键模块中的按键消抖流程图;

图10是本实用新型按键模块中的按键抖动情况展示图;

具体实施方式

系统硬件设计

下面,将结合附图说明本实用新型硬件的连接方式。

本实用新型涉及的控制部分均为现有技术范畴。

本实施方式所述的基于iic总线协议eeprom读写功能的贩卖机,所述贩卖机包括单片机最小系统,时钟电路模块,复位电路模块,显示模块,按键模块等重要模;时钟电路模块使用stc59c52单片机、rc振荡器和外部晶体振荡器;复位电路模块需要手动复位电路;显示模块使用jm1602液晶;按键模块采用4*4的矩阵键盘通过i/o口的高低电平来判断按键按下。时钟电路模块使用stc59c52单片机、rc振荡器和外部晶体振荡器。stc89c52单片机根据电压可以分为5v(5.5v~3.3v)单片机和3v(3.8v~2.0v)。本次设计采用+5v的vcc外部稳压电路。将5v的电压接到单片机上,单片机vss引脚接到gnd,为单片机提供能量,保证其正常的工作如图3。复位电路模块,所述复位电路模块需要手动复位电路。rst引脚为单片机的复位引脚。当rst上的高电平达到2个机器周期以上时,复位功能开启。此次设计在vcc和rst中间加一个10uf的电容,电容的另一端通过一个阻值为10k的电阻接地。连接方式如图所示。按键按下时电容被短路,电阻上的电压为vcc。当按键断开时,rst经电阻接地,电流降为0外加在电阻上的电压将变为0v。rst端为低电平,复位完成如图4。显示模块,使用jm1602液晶。将液晶模块的d0~d7口与单片机p0口相连接。p0口接一个上拉电阻。vot端接一个变阻器再接至电源,通过改变变阻器的阻值来改变加在液晶上的电压,从而调节液晶显示的亮度,达到最好的显示效果。其中r/s端是数据命令选择端,该端接入高电平时选择数据,接低电平时选择命令。r/w端为读写选择端,该端接入高电平时是读操作,接低电平时是写操作。e端是使能端,bla是背光源的正极,blk是背光源的负极如图5。按键模块,所述按键模块采用4*4的矩阵键盘通过i/o口的高低电平来判断按键按下。s6,s7,s8,s9分别代表价格7元,8元,9元,10元的按键k1、k2、k3、k4。s10代表的是操作错误时的撤销键k5,s12表示的是读取总收入的按键k6,s13代表的是将总金额清零的按键k7。利用按键扫描的方法来确定哪一个按键被按下。先将第一行线电平置低,再将p3口当前的状态值赋给变量temp,然后再将temp和0xf0做一个与运算,得出的结果再重新赋值给temp,如果得出的temp等于0xf0,则证明没有按键按下;如果不等于0xf0,则表示该行有按键被按下。用switchcase语句判断那一列按键被按下。k1、k2、k3、k4按键分别处于按下状态时,把价格7元、8元、9元、10元存储在eeprom的第1位存储地址当中,实现了写eeprom的过程,同时将价格显示在液晶上,并记录价格按键按下的次数,作为商品的个数显示在液晶上。当价格按键松开时,把存储地址中的金额与液晶显示的价格相加,得出当前的收入并将其写入eeprom的第8位存储地址当中。当数据输错时,利用k5按键,将此时的价格清零,同时总收入减去输错的价格,相当于将错误的数据删除。当k6按键按下时,将此时第8位存储地址中的数据读出来,在液晶上显示出来。k7按键按下时,将总收入的显示清零如图6。

本实用新型的有益效果是:

它可以记录商家每天卖出商品的数量和价格,并可以实时记录总的营业额。其中硬件电路主要包括按键电路、jm1602c显示电路等各种电路模块。在充分考虑了各种外界情况下,通过硬件电路设计和软件代码编写,实现了数据写入与读出的基本功能。与其他总线相比,iic总线具有控制方式简单,封装形式小,通信速率高等优点,是一种真正的多主机总线。利用iic总线的协议基本实现了对eeprom的读写进行系统地设计。在单片机iic总线系统,矩阵键盘和lcd液晶的辅助下,完成了商家交易的记录。代码编译完成后,将其刻录到mcu中,进行实物调试,可以发现,本次设计的系统能够实现利用iic总线协议对eeprom的读写操作,能够记录商品的总数量与总营业额,基本完成预期目标。简易商家贩卖器能够给人们带来方便,可以投入使用。

系统软件设计

本实用新型软件开发的主要程序框图如附图7、8、9和10;

系统软件设计程序代码详见附录;

对程序进行下载烧录;

系统调试

1、价格数量调试

价格键有四个,我们先按价格键k2,可以看出在价格price后显示价格8,同时数量变为1。再按下价格键k4,价格显示为10元,同时数量变为2,方便观察,假设又卖出4份10元的商品,再按下四次k4价格键,可以看到价格为10,数量变为了6。

2、总金额调试

当k6按键按下时,在液晶上的总金额显示58,等于前六次卖出商品价格的总和。

数据写入错误调试

假设第七次卖出的价格为9元,操作时按错了价格键10,利用k5按键,将此时的价格清零,同时数量减1,再输入正确价格,再按下k3按键将9价格输入,可以看出此时数量为7,按下k6读取总金额,为67与实际相符。

当按下电源开关,系统中的硬件先进行初始化,开始工作判断哪个按键按下,当价格键按下时,price显示相应价格,同时数量num加一,按键松开,将显示价格与之前eeprom指定地址中的金额相加,并将结果写入该地址;显示金额键按下后,将eeprom指定地址中的金额读出来;撤销键按下后,将存储的总金额减去这次显示的价格,同时这次价格清零,最后液晶显示。

此附录删除。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1