《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 設計應用 > 基于Linux的嵌入式POS的GUI及數據庫研究
基于Linux的嵌入式POS的GUI及數據庫研究
來源:維庫開發網
摘要: 目前使用最廣泛的POS機接入方式是有線接入方式,而有線接入方式主要有兩種:一是基于電話網的點到點撥號接入方式和基于DDN的專線接入方式。無線POS機是目前POS機行業的一項新技術,移動性強,平均交易時間短,并能隨身攜帶。目前在全國各大商場和超市內隨處可見POS刷卡機,但它們大多都是通過電話線聯網進行通信,移動性差,不靈活,限制了業務發展。無線POS機成功的解決了這一難題,它通過一個POS和無線調制解調器的一體機在GPRS/CDMA網上聯網傳輸信息。
Abstract:
Key words :

    POS(PointofSale)是目前各商場、飯店、加油站等廣泛提供的刷卡消費業務的輔助工具,位于商場、加油站等地的POS機將獲得的用戶*的數據(卡號、業務資料等)通過通信線路傳給*服務處理系統上,經過處理的信息返回到POS機,從而完成用戶的刷卡消費業務。為了實現上述數據交換過程,在POS機與銀行主機之間必須進行數據通信。
    目前使用最廣泛的POS機接入方式是有線接入方式,而有線接入方式主要有兩種:一是基于電話網的點到點撥號接入方式和基于DDN的專線接入方式。無線POS機是目前POS機行業的一項新技術,移動性強,平均交易時間短,并能隨身攜帶。目前在全國各大商場和超市內隨處可見POS刷卡機,但它們大多都是通過電話線聯網進行通信,移動性差,不靈活,限制了業務發展。無線POS機成功的解決了這一難題,它通過一個POS和無線調制解調器的一體機在GPRS/CDMA網上聯網傳輸信息。
     1 Linux下的圖形用戶開發工具Q t
    Qt是Trolltech(挪威)公司的產品。Qt是一個多平臺的C++圖形用戶界面應用程序框架,它能給用戶提供精美的圖形用戶界面所需要的所有元素,而且它是基于一種面向對象的思想,所以用戶對其對象的擴展是相當容易的,并且它還支持真正的組件編程。
    在一臺裝有Linux操作系統的機器上建立Qt/Embeded開發環境:首先需要擁有三個軟件安裝包: tmake工具安裝包,Qt/Embeded安裝包,Qt的X11版安裝包。Qt包含了許多支持嵌入式系統開發的工具,其中兩個最實用的工具是qmake和Qtdesigner(圖形設計器)。Qt中有三個主要的基類:QObject、QapplicaTIon和QW
idget。
    在Qt中編程,利用Signal和Slot進行對象之間的通信是Qt的主要特征。它與Windows中的消息機制非常類似,但是Signal和Slot機制真正實現了一種消息的封裝。當對象的狀態改變時,發出Signa,l通知所有的Slot接受Signa,l盡管它不知道哪些函數是Slot。一個Signal可以發給多個Slo,tSlot也可以接收多個Signal。Slot除了可以接收Signal以外,與其他的成員函數沒有區別。這種機制比使用回調函數要靈活,但是會減慢程序的運行速度。不過在現在高速CPU的面前,這種損失是無足輕重的,而且它還能保證程序的簡明性和靈活性,非常便利。
    QT支持包括Unix、Linux、Windows在內的多種操作系統平臺。Linux下常用的KDE桌面環境就是基于QT編寫的。QT使用了Unicode作為內部編碼,可以同時支持多種編碼。目前的版本對國際化標準支持非常完備,這就為本地化提供了可能[4]。
    2 小型嵌入式數據庫M ySQL /SQLite
    SQLite作為一個嵌入式的數據庫,主要的是程序小(200多K),速度快,支持ANSISQL-92的大部分標準功能。SQLite使用文件作為數據庫,查詢出的所有記錄都放在內存中,它的sql句法比較簡單易用,支持的類型也比較全。字符串和blob類型可以支持4GB的長度。它還支持事務處理。在單用戶情況下,它的速度是最快的。多用戶下,速度不及別的數據庫。
    特點:①支持符合acid(原子性,一致性,隔離性,持久性)特性的事務處理;②0配置,不需要任何安裝和管理;③符合SQL92的絕大多數標準;④完整的數據庫只存儲在單個磁盤文件當中;⑤數據庫文件可以被不同的機器共享,并與字節序無關;⑥string和BLOB的大小只受到可用內存的限制;⑦總共不到30000行代碼。代碼空間不到250K;⑧比現在的C/S結構的大部分數據庫要快;⑨不依賴于任何其他的庫;⑩支持數據庫大小可以達到2的41次方,即2個TB。
    SQLite的弱點:①沒有專有的安全措施,數據庫是一個文件;②沒有內嵌的壓縮、解壓機制,數據庫文件看上去太大。MySQL是SQL數據庫管理系統,MySQL是開源的,開源意味著任何人都可以使用和修改該軟件,任何人都可以從Internet上下載和使用MySQL而不需要支付任何費用。MySQL服務器工作在客戶/服務器或嵌入系統中,MySQL數據庫服務器是一個客戶/服務器系統,它由多線程SQL服務器組成,支持不同的后端、多個不同的客戶程序和庫、管理工具和廣泛的應用程序接口(APIs)。

   3 POS系統的硬件配置
    POS系統硬件配置,見圖1所示。

  4 本POS系統介紹
    由于我們使用的是Red  hat9自帶的Qtdesigner,由于是處于研究階段,而且是免費的,所以暫時采用此軟件.此軟件沒有集成開發環境(IDE),我們采用Qt的Qt designer畫出基本的功能,然后由KDevelop修改添加源代碼,通過Qt自帶的uic(user inteRFace compiler)工具將. ui編譯成. cpp和. h文件,最后通過修改makefile,達到我們編譯此界面的目的。
    (1)需要配置unixODBC,把unixODBC放到/usr/local下,解壓縮,然后運行. /configure,其中需要一些環境變量參數的設置,系統生成一些makefile文件,運行make將unixODBC編譯,然后make  install安裝unix-ODBC,即unixODBC安裝好了。
    (2)配置ODBC,選擇數據庫及其驅動。
    (3)將Qt連接上數據庫,完成連接。
 5 開發流程
    系統開發流程見圖2所示。
   6 具體介紹
    本系統針對商場或專賣店而設計,系統的核心功能模塊是主控模塊,主要是系統初始化,與通信模塊,數據庫,條碼掃描,鍵盤,RFID接口,顯示器及打印機等模塊的連接。另外系統預留,與銀聯卡及會員卡端口,以備系統擴展之用。
    系統采用消息隊列機制,系統始終維持兩個數據庫的運行,主服務器的中央數據庫和本地單機的小型數據庫。
     (1)通信模塊:上傳:主控模塊的響應信息,出錯信息,日志信息,交易信息,數據庫響應,刪除日志響應。下發:控制信息,查詢日志,刪除日志,查詢,修改,刪除數據庫信息。
     其中的主要消息有:①上傳交易信息成功,上傳交易信息失敗;②本地數據庫中無該商品;③鍵盤消息的處理,主要是按鍵處理;④寫日志成功,寫日志失敗;⑤來自服務器的控制消息:刪除日志,查詢當前機器的工作狀態,日志打包發送至服務器,本地pos機重啟,關機等;⑥接受條碼信息;⑦如果本地數據庫無該商品,向服務器數據庫發送查詢信息。
    (2)數據庫SQLite說明:①SQLite編譯、安裝;②SQLiteODBC編譯、安裝。這個要配置SQLite源代碼的目錄。如果出現找不到SQLite的情況,在Makefile文件中加上路徑;③建立SQLite中的一個數據庫。SQLite文件夾下有個demo文件,或者參照Readme直接使用SQL語言生成;④系統ODBC配置。在Linux中將剛剛做好的數據庫配置為系統數據源,即讓QT能找到;⑤QT中使用數據顯示組件,選擇上述的數據源,然后組件就可以自動顯示數據庫中的數據了。Server端采用MSQL/SQLite+Linux; Client端采用MSQL/SQLite+uCLinux;顯示通過串口實現。
     (3)數據庫設計:
                  Server:
                  ①product
                  PNo  Name  DescripTIon  InstockPrice
                  TotalNumLeftNum
                  ②sale
                  ONo Total Date
                  ③order
                  ONo PNo Saleprice Number
                  Client:①product
                  PNo Name Saleprice
                  ②sale
                  ONo Total Date
                  ③order
   ONo PNo Saleprice Number使用jdbc測定了sqlite3插入數據的效率,使用整體事務與不使用整體事務,差別明顯。cpu: 1G,內存:512MB使用整體事務: 1000000條記錄,需要93s。使用逐個插入提交事務: 1 min只能處理20條記錄。
此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 久久精品爱国产免费久久 | 成年女人免费又黄又爽视频 | 国产热久久精 | 毛片96视频免费观看 | 步兵社区 | 在线成人精品国产区免费 | 精品国产呦系列在线看 | 亚洲天堂2016 | 精品久久香蕉国产线看观看亚洲 | 欧美巨大video粗暴 | 国产精品青草久久福利不卡 | 美女舒服好紧太爽了视频 | 国产精品久久久久久一区二区三区 | 国产精品成人一区二区三区 | 国产精品亚洲专区一区 | 91热久久免费频精品动漫99 | 波多野结衣在线视频免费观看 | 精品小视频在线观看 | 亚洲一区二区三 | 中文在线com| 亚洲国产精品线播放 | 在线欧美日韩精品一区二区 | 99久久亚洲综合精品网站 | 国产图片亚洲精品一区 | 亚洲专区欧美专区 | 特级淫片欧美高清视频蜜桃 | 欧美一级毛片免费播放器 | 国产综合在线播放 | 久久精品国产亚洲麻豆 | 自拍偷自拍亚洲精品10p | 日韩欧美在线视频一区二区 | 欧美在线一级毛片观看 | 亚洲欧美不卡中文字幕 | 99re久久精品国产首页2020 | 国产亚洲精品自在久久77 | 免费看a毛片| 欧美日韩一区在线观看 | 午夜精品亚洲 | 亚洲精品一区二区三区美女 | 普通话对白国产精品一级毛片 | 成人黄色免费观看 |