ARM CPU S3C44B0X在水表智能抄表系統(tǒng)中應(yīng)用
摘 要: 介紹水表智能抄表系統(tǒng)的核心部分--抄表手機(jī),以及如何用32位機(jī)s3c44b0x來(lái)實(shí)現(xiàn)抄表手機(jī)的功能。
關(guān)鍵詞: 智能抄表系統(tǒng) 抄表手機(jī) s3c44b0x cpu arm7tdmi核 usb總線1 水表智能抄表系統(tǒng)簡(jiǎn)介
目前,自來(lái)水表都是機(jī)械式的,而且多數(shù)自來(lái)水表都裝在戶內(nèi),這給水表抄表員帶來(lái)了很大的麻煩。當(dāng)抄表員抄表時(shí),必須挨家挨戶用肉眼讀取水表的讀數(shù),然后登記在隨身攜帶的小本子上?;厝ヒ院?,還要由專門的電腦輸入員把水表讀數(shù)輸入到計(jì)算機(jī)中的數(shù)據(jù)庫(kù)里,計(jì)算出本月的用水量,再打印出本月各用戶應(yīng)交的水費(fèi)。這一過(guò)程不但工作量大,而且很容易出錯(cuò)?,F(xiàn)在得理上海電子有限公司開(kāi)發(fā)出了智能水表,對(duì)機(jī)械水表中的指針轉(zhuǎn)過(guò)的圈數(shù)進(jìn)行計(jì)數(shù),通過(guò)串口 rs422 發(fā)送水表讀數(shù)。這給自來(lái)水表的智能抄表系統(tǒng)奠定了基礎(chǔ)。
自來(lái)水表的智能抄表系統(tǒng)框圖如圖1所示。用戶的機(jī)械式水表改裝成智能水表后,連接到裝在樓底下的匯集器上。匯集器每隔一定的時(shí)間(具體時(shí)間可以設(shè)置)對(duì)智能水表采集一次數(shù)據(jù),保存在存儲(chǔ)器里。如果該樓梯的用戶數(shù)大于16個(gè)或連線超過(guò)500m時(shí),需在智能水表與匯集器之間加中繼器,以增加驅(qū)動(dòng)能力。智能抄表系統(tǒng)中的核心部分是便攜式抄表手機(jī)。它的主要任務(wù)是用自己的指令解釋并運(yùn)行上位機(jī)所編的foxpro程序;采集匯集器或者智能水表的數(shù)據(jù),更新數(shù)據(jù)庫(kù)中的內(nèi)容;并與上個(gè)月數(shù)據(jù)相比較,計(jì)算出用水量并當(dāng)場(chǎng)打印賬單,由抄表員將各用戶的賬單放到樓梯口的用戶信箱中;通過(guò)手機(jī)上的usb接口可以將數(shù)據(jù)傳輸給計(jì)算機(jī),由計(jì)算機(jī)進(jìn)行處理、存檔。從而實(shí)現(xiàn)了水表到計(jì)算機(jī)的數(shù)據(jù)自動(dòng)采集、傳輸、處理、打印等工作,免去了大量的手工勞動(dòng),極大地提高勞動(dòng)效率。
抄表手機(jī)是連接上位機(jī)與匯集器、智能水表的核心部分。它有鍵盤輸入,可以手動(dòng)查詢、更新數(shù)據(jù)庫(kù)中的數(shù)據(jù);大屏幕lcd點(diǎn)陣顯示,良好的人機(jī)對(duì)話界面;16mb flash ram,用于存放系統(tǒng)配置文件、程序及數(shù)據(jù)庫(kù)文件;2個(gè)rs232接口,一個(gè)usb接口。其中一個(gè)rs232接口連接紅外轉(zhuǎn)發(fā)器,實(shí)現(xiàn)同智能水表、匯集器的有線或紅外通訊,完成對(duì)每個(gè)水表的數(shù)據(jù)采集工作,并可通過(guò)該接口對(duì)匯集器或智能水表進(jìn)行設(shè)置、修改。另一個(gè)rs232接口作為與微型串口打印機(jī)的通訊口。usb接口完成同計(jì)算機(jī)的通訊,可以將抄表手機(jī)中的數(shù)據(jù)傳送給計(jì)算機(jī),也可以接收計(jì)算機(jī)下傳的dbf和prg文件及其他系統(tǒng)配置文件。2 32位機(jī)s3c44b0x在智能抄表系統(tǒng)中的應(yīng)用
s3c44b0x cpu是samsung公司推出的基于arm7tdmi核的精簡(jiǎn)指令系統(tǒng)的32位高速處理器。它的工作電壓為3.3v,內(nèi)核arm7tdmi的工作電壓僅為2.5v,大大降低了芯片的功耗。s3c44b0x帶有:①8個(gè) memory banks?用于管理外部存儲(chǔ)器,最大存儲(chǔ)容量達(dá)到256mb。可外擴(kuò)eprom sdram flash ram usb lcd。每個(gè)bank支持8/18/32位的數(shù)據(jù)格式,可尋址32mb(除bank0,其后4mb保留給內(nèi)部寄存器使用)。其中bank0專用于系統(tǒng)啟動(dòng),因此它的存儲(chǔ)器必須是線性尋址并且有記憶功能;bank8、7專用于sram、fp/edo/sdram等;②lcd控制器支持單色、4、16級(jí)灰度的lcd模塊;支持4位的單雙行掃描、8位的單行掃描形式的顯示類型;支持的主要顯示點(diǎn)陣為:640×480? 320×240 160×160等;③兩路uart口,最高波特率為115200baud,支持irda 1.0,可用于紅外通訊;④5路pwm調(diào)制輸出,可用于控制蜂鳴器輸出不同聲音,提示系統(tǒng)各類信息;⑤71個(gè)i/o口,包括8個(gè)外部中斷源,可用于鍵盤、lcd背光、照明控制等;⑥8路10位a/d轉(zhuǎn)換器,可用于系統(tǒng)電池檢測(cè);⑦帶日歷功能的系統(tǒng)實(shí)時(shí)時(shí)鐘,可用于紀(jì)錄抄表時(shí)間;⑧內(nèi)置的pll鎖相環(huán)可以設(shè)置系統(tǒng)工作頻率,最高達(dá)73mhz;⑨4種系統(tǒng)工作模式:正常、慢速、閑置和停止模式。根據(jù)需要設(shè)置不同的工作方式,可以降低系統(tǒng)功耗。
用s3c44b0x實(shí)現(xiàn)智能抄表手機(jī)功能的硬件連接圖如圖2所示。2.1 s3c44b0x與sdram hy57v161610d的連接
在抄表手機(jī)中運(yùn)行的是一個(gè)自己編寫(xiě)的小型操作系統(tǒng)。它擁有自己的文件系統(tǒng),能夠解釋并運(yùn)行上位機(jī)所編寫(xiě)的foxpro程序。由于牽涉到對(duì)數(shù)據(jù)庫(kù)的操作,系統(tǒng)所需的內(nèi)存較大。本系統(tǒng)選擇了hyundai公司的sdram-hy57v161610d。它的數(shù)據(jù)寬度為16位,由兩個(gè)bank組成,共2mb的存儲(chǔ)容量。由于s3c44b0x的bank6、7支持sdram?因此它與hy57v161610d的連接相當(dāng)簡(jiǎn)單?不需要軟件驅(qū)動(dòng)程序,只要設(shè)置兩個(gè)寄存器即可。在bwscon寄存器中設(shè)置bank6的數(shù)據(jù)寬度為16位,在bankcon6寄存器中設(shè)置mt=0x3,trcd=0x0,scan=0x0。
2.