在打开串口文件之前,我们要对串口进行相应的设置,具体步骤有以下几步:串口属性的设置,保存原先串口配置,激活选项,设置波特率,设置字符大小,设置校验,设置停止位,设置最少字符与等待时间,清楚串口缓冲,激活配置。设置由以下结构体实现:
成功打开驱动文件后,需要做的就是使用read()函数来读出读卡器发送的信号,以判别货品的类型,将其信息准确的存入到数据库。Read()函数的函数原型为read(int fd,void*huf,size_t count),read()实现的功能是从参数fd所指的文件传送count个字节到buf指针所指的内存中。读出的数据将存入buf中,作为识别RFID标签的依据。
2.3 SQLite对数据的管理
在嵌入式设备上使用的数据库有很多,比如MySQL。本设计选择的是更为简便的数据库SQLite。本设计中建立的是一个物流商品信息的数据库系统,包含的信息有:商品的名字(char型),商品的ID号(char型)以及商品的价格(int型)。这些信息都将被存放在table merchan dise中。
当代表商品的RFID标签第一次刷写读卡器的时候,系统将根据它的标签标号,唯一确定它的商品名、商品ID号以及价格,并把这些消息一次性写入到表merchandise中。已经存入库中的商品RFID标签再次刷写读卡器的时候,将作为该商品的出库操作,系统将自动的删除该商品在数据库中的信息。
存数据的管理部分,充分利用SQLite提供的便捷有效的API函数:sqlite3_open(),sqlite3_exec()和sqlite3_close()等,打开和操作数据库文件。
在商品的整个入库、出库的操作中,数据的录入和删除将是由系统自动完成,免去了人为的操作,大大提高了仓库管理的效率,减少了人力资源。