0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于32位高速處理器S3C44B0X實現(xiàn)水表智能抄表系統(tǒng)的設(shè)計

電子設(shè)計 ? 來源:電子技術(shù)應(yīng)用 ? 作者:汪葉斌 , 趙繼敏 ? 2020-11-02 10:54 ? 次閱讀

1 水表智能抄表系統(tǒng)簡介

目前,自來水表都是機械式的,而且多數(shù)自來水表都裝在戶內(nèi),這給水表抄表員帶來了很大的麻煩。當抄表員抄表時,必須挨家挨戶用肉眼讀取水表的讀數(shù),然后登記在隨身攜帶的小本子上?;厝ヒ院?,還要由專門的電腦輸入員把水表讀數(shù)輸入到計算機中的數(shù)據(jù)庫里,計算出本月的用水量,再打印出本月各用戶應(yīng)交的水費。這一過程不但工作量大,而且很容易出錯?,F(xiàn)在得理上海電子有限公司開發(fā)出了智能水表,對機械水表中的指針轉(zhuǎn)過的圈數(shù)進行計數(shù),通過串口 RS422 發(fā)送水表讀數(shù)。這給自來水表的智能抄表系統(tǒng)奠定了基礎(chǔ)。

自來水表的智能抄表系統(tǒng)框圖如圖1所示。

基于32位高速處理器S3C44B0X實現(xiàn)水表智能抄表系統(tǒng)的設(shè)計

用戶的機械式水表改裝成智能水表后,連接到裝在樓底下的匯集器上。匯集器每隔一定的時間(具體時間可以設(shè)置)對智能水表采集一次數(shù)據(jù),保存在存儲器里。如果該樓梯的用戶數(shù)大于16個或連線超過500m時,需在智能水表與匯集器之間加中繼器,以增加驅(qū)動能力。智能抄表系統(tǒng)中的核心部分是便攜式抄表手機。它的主要任務(wù)是用自己的指令解釋并運行上位機所編的Foxpro程序;采集匯集器或者智能水表的數(shù)據(jù),更新數(shù)據(jù)庫中的內(nèi)容;并與上個月數(shù)據(jù)相比較,計算出用水量并當場打印賬單,由抄表員將各用戶的賬單放到樓梯口的用戶信箱中;通過手機上的USB接口可以將數(shù)據(jù)傳輸給計算機,由計算機進行處理、存檔。從而實現(xiàn)了水表到計算機的數(shù)據(jù)自動采集、傳輸、處理、打印等工作,免去了大量的手工勞動,極大地提高勞動效率。

抄表手機是連接上位機與匯集器、智能水表的核心部分。它有鍵盤輸入,可以手動查詢、更新數(shù)據(jù)庫中的數(shù)據(jù);大屏幕LCD點陣顯示,良好的人機對話界面;16MB FLASH RAM,用于存放系統(tǒng)配置文件、程序及數(shù)據(jù)庫文件;2個RS232接口,一個USB接口。其中一個RS232接口連接紅外轉(zhuǎn)發(fā)器,實現(xiàn)同智能水表、匯集器的有線或紅外通訊,完成對每個水表的數(shù)據(jù)采集工作,并可通過該接口對匯集器或智能水表進行設(shè)置、修改。另一個RS232接口作為與微型串口打印機的通訊口。USB接口完成同計算機的通訊,可以將抄表手機中的數(shù)據(jù)傳送給計算機,也可以接收計算機下傳的DBF和PRG文件及其他系統(tǒng)配置文件。

2 32位機S3C44B0X在智能抄表系統(tǒng)中的應(yīng)用

S3C44B0X CPU是SAMSUNG公司推出的基于ARM7TDMI核的精簡指令系統(tǒng)的32位高速處理器。它的工作電壓為3.3V,內(nèi)核ARM7TDMI的工作電壓僅為2.5V,大大降低了芯片的功耗。S3C44B0X帶有:①8個 MEMORY BANKS?用于管理外部存儲器,最大存儲容量達到256MB。可外擴EPROM SDRAM FLASH RAM USB LCD。每個Bank支持8/18/32位的數(shù)據(jù)格式,可尋址32MB(除BANK0,其后4MB保留給內(nèi)部寄存器使用)。其中BANK0專用于系統(tǒng)啟動,因此它的存儲器必須是線性尋址并且有記憶功能;BANK8、7專用于SRAM、FP/EDO/SDRAM等;②LCD控制器支持單色、4、16級灰度的LCD模塊;支持4位的單雙行掃描、8位的單行掃描形式的顯示類型;支持的主要顯示點陣為:640×480? 320×240 160×160等;③兩路UART口,最高波特率為115200baud,支持IrDA 1.0,可用于紅外通訊;④5路PWM調(diào)制輸出,可用于控制蜂鳴器輸出不同聲音,提示系統(tǒng)各類信息;⑤71個I/O口,包括8個外部中斷源,可用于鍵盤、LCD背光、照明控制等;⑥8路10位A/D轉(zhuǎn)換器,可用于系統(tǒng)電池檢測;⑦帶日歷功能的系統(tǒng)實時時鐘,可用于紀錄抄表時間;⑧內(nèi)置的PLL鎖相環(huán)可以設(shè)置系統(tǒng)工作頻率,最高達73MHz;⑨4種系統(tǒng)工作模式:正常、慢速、閑置和停止模式。根據(jù)需要設(shè)置不同的工作方式,可以降低系統(tǒng)功耗。

用S3C44B0X實現(xiàn)智能抄表手機功能的硬件連接圖如圖2所示。

基于32位高速處理器S3C44B0X實現(xiàn)水表智能抄表系統(tǒng)的設(shè)計

2.1 S3C44B0X與SDRAM HY57V161610D的連接

在抄表手機中運行的是一個自己編寫的小型操作系統(tǒng)。它擁有自己的文件系統(tǒng),能夠解釋并運行上位機所編寫的Foxpro程序。由于牽涉到對數(shù)據(jù)庫的操作,系統(tǒng)所需的內(nèi)存較大。本系統(tǒng)選擇了HYUNDAI公司的SDRAM-HY57V161610D。它的數(shù)據(jù)寬度為16位,由兩個BANK組成,共2MB的存儲容量。由于S3C44B0X的BANK6、7支持SDRAM?因此它與HY57V161610D的連接相當簡單?不需要軟件驅(qū)動程序,只要設(shè)置兩個寄存器即可。在BWSCON寄存器中設(shè)置BANK6的數(shù)據(jù)寬度為16位,在BANKCON6寄存器中設(shè)置MT=0X3,Trcd=0X0,SCAN=0X0。

2.2 S3C44B0X與FLASH KM29U128T的連接

抄表手機中保存抄表所得的數(shù)據(jù)庫。當用戶較多時,數(shù)據(jù)庫會占用較大的存儲空間。特別是當進行一個月用水報表分析時,匯集器每隔一小時(或者更短)就存儲一次數(shù)據(jù),抄表手機必須讀取這一個月的全部數(shù)據(jù)。此時的數(shù)據(jù)庫是相當龐大的。因此選擇了SAMSUNG公司的FLASH-KM29U128T,該FLASH存儲容量達16MB,足夠數(shù)據(jù)庫存儲使用。它的不足之處是:它不是線性尋址的,存儲速度較慢;讀寫比較麻煩,必須按頁為單位(512字節(jié))進行讀寫,每次寫之前必須對該頁所在的BLOCK進行一次擦除;而且它并不保證每個BLOCK(32PAGE為一個BLOCK)都是好的,壞率為1%,但它保證前兩個BLOCK肯定是好的。

利用前兩個BLOCK建立一個FAT表,用邏輯的BLOCK號對應(yīng)物理上的BLOCK,每次讀寫都對邏輯上的BLOCK進行操作。在每次寫操作時都進行一次讀操作,與所寫的內(nèi)容進行比較。如果發(fā)現(xiàn)有所不同,就再寫一次;若再錯就認為該BLOCK壞了,做好標記并找后面好的BLOCK來代替,這樣能保證邏輯上的BLOCK都是好的。

2.3 3C44B0X與LCD TCM-A0902的連接

3C44B0X自帶LCD控制模塊,但它并不支持所有點陣形式的LCD。為了充分利用該芯片,可以選它所支持的LCD。但如果一定要用其他的LCD,這也沒關(guān)系,因為對LCD的操作就象對其他的存儲器操作一樣簡單。

本系統(tǒng)選用的是EPSON公司的TCM-A0902、單色、320×200。直接使用3C44B0X的BANK4來控制。由于3C44B0X是高速處理器,因此在對LCD操作時加入了軟延時。

LCD顯示滿屏的程序如下:

#define LCDCMD volatile unsigned char 0x8000000

#define LCDDATA volatile unsigned char 0x8000001

void Lcd_Displayfull void //顯示滿屏

? int j;

U8 I k;

LCDCMD=PASET; //頁面設(shè)置,page0

LCDDATA=0x0;

LCDCMD=CASET; //列設(shè)置, column0

LCDDATA=0x0;

LCDDATA=0x0;

For i=0?i<25 I++ //從第0頁到24頁

? for j=0?j<320?j++ //從第0列到319列

? LCDCMD=MWRITE; //寫命令

LCDDATA =1cd_disp I j; //寫數(shù)據(jù)

For k=0?k<3?k++; //軟延時

?

LCDCMD=RETURN; //換頁

?

2.4 3C44B0X與USB9603的連接

由于抄表手機抄表所得的數(shù)據(jù)是以數(shù)據(jù)庫的形式傳送給上位機,當數(shù)據(jù)庫較大時不可能通過串口傳送。USB通訊時,最高理論傳輸速率可達到12MB/s,因此可以通過USB來傳送數(shù)據(jù)庫。由于3C44B0X不帶USB接口,因此必須外擴一個USB接口。

本系統(tǒng)選用NATIONAL公司的USBN9603。它是9602的改進型,對9602存在的一些缺陷作了改正,并減少了部分寄存器,使得對USB通訊的編程相對簡單了許多。由于牽涉到對FLASH的操作,USB的通訊速率并沒有想象的那樣高。下傳數(shù)據(jù)庫時,由于要對FLASH進行寫操作,USB的傳輸速率只有200KB/s?但是上傳時只對FLASH進行讀操作,USB的傳輸速率就明顯快多了,可以達到800KB/s。因此,選擇何種FLASH,如何對FLASH進行編程,對USB的傳輸速率有較大的影響。

2.5 抄表手機其他部分

抄表手機還包括鍵盤輸入、串口通訊、電池檢測等部分。這幾部分比較簡單。比如鍵盤輸入部分:如果想用鍵盤中斷,只要用外部中斷EINT4、5、6、7,因為這四個中斷源的中斷入口地址是同一個,再加上幾個普通的I/O口就可以組成一個中斷鍵盤。如果想改成掃描鍵盤,那也很簡單,只要把EINT4、5、6、7設(shè)置成I/O口功能就可以了,硬件上不需要作任何改動。串口通訊也很簡單,只要在S3C44B0X的UART口上外接一片MAX232電平轉(zhuǎn)換芯片就可以實現(xiàn)標準的RS232通訊功能。電池檢測部分只要把來自電池部分的電壓連接到某個A/D口就可以了。如果所用的電池電壓高于S3C44B0X的工作電壓(3.3V),通過電阻分壓后再接到A/D口。

由于FLASH KM29U128T不是線性尋址的?不能作為系統(tǒng)啟動之用。因此,需要一片線性尋址的EEPROM 如29EE010作為系統(tǒng)初始化使用。它的主要任務(wù)是初始化系統(tǒng),把存于FLASH中的操作系統(tǒng)調(diào)入SDRAM中運行。因此,EEPROM的容量不需很大。硬件連接時注意EEPROM的片選信號應(yīng)接S3C44B0X的BANK0?NGCS0。

自來水表的智能抄表系統(tǒng)是個比較大的系統(tǒng),本文只涉及到它的核心部分,而且是硬件部分。軟件部分的工作量也較大,要能夠用S3C44B0X的指令解釋并運行FOXPRO程序。以ARM7TDMI為內(nèi)核的S3C44B0X能夠在SDT2.5的調(diào)試平臺上用標準C語言進行編程調(diào)試、軟件仿真,大大縮短了軟件的開發(fā)周期。

責任編輯:gt

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19387

    瀏覽量

    230517
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10890

    瀏覽量

    212430
  • 數(shù)據(jù)采集
    +關(guān)注

    關(guān)注

    39

    文章

    6207

    瀏覽量

    113840
收藏 人收藏

    評論

    相關(guān)推薦

    學(xué)習(xí)ARM一定會用到的芯片S3C44B0X

    支持,和一個32 的硬件乘法器。S3C44B0X 通過提供全面的、通用的片上外設(shè),大大減少了系統(tǒng)電路中除處理器以外的元器件配置,從而最小化系統(tǒng)
    發(fā)表于 03-12 17:06

    S3C44B0X處理器進行智能家居系統(tǒng)的硬件設(shè)計介紹

    日常生活的各個領(lǐng)域,本文針對智能家居嵌入式系統(tǒng)的軟硬件設(shè)計需求,以S3C44B0X處理器進行智能家居
    發(fā)表于 07-25 07:39

    S3C44B0X pdf

    S3C44B0X p
    發(fā)表于 06-27 09:37 ?76次下載

    s3c44b0x中文資料,s3c44b0x中文數(shù)據(jù)手冊

    S3C44B0X 中文數(shù)據(jù)手冊...........................................................116 IIC 總線接口
    發(fā)表于 06-27 09:40 ?152次下載

    S3C44B0X的培訓(xùn)資料及源代碼程序

    S3C44B0X的培
    發(fā)表于 12-25 22:08 ?37次下載
    <b class='flag-5'>S3C44B0X</b>的培訓(xùn)資料及源代碼程序

    基于S3C44B0X處理器的JFFS2件系統(tǒng)實現(xiàn)

    基于S3C44B0X處理器的JFFS2件系統(tǒng)實現(xiàn)
    發(fā)表于 03-28 09:50 ?16次下載

    基于S3C44B0X 的uClinux的移植

    S3C44B0X 作為一款以ARM7TDMI 為內(nèi)核的微處理器,正日益受到廣泛的應(yīng)用;uClinux作為一種運行于沒有MMU 的嵌入式微處理器的Linux 衍生操作系統(tǒng),也廣泛應(yīng)用于嵌
    發(fā)表于 05-15 15:40 ?14次下載

    μC/OS-Ⅱ在S3C44B0X上的移植

    本文簡介了一種實時多任務(wù)內(nèi)核μC/OS-Ⅱ。并根據(jù)S3C44B0X 芯片的硬件特性,給出了一種把μC/OS-Ⅱ移植到S3C44B0X 上的方案。關(guān)鍵詞:實時多任務(wù)內(nèi)核;μ
    發(fā)表于 08-31 11:46 ?18次下載

    基于S3C44B0X處理器的VxWorks中斷設(shè)計

    通過基于立宇泰S3C44B0X 開發(fā)板的BSP 移植調(diào)試,闡述了VxWorks 的異常中斷處理機制,實現(xiàn)了VxWorks 基于S3C44B0X 處理
    發(fā)表于 09-03 11:25 ?17次下載

    ARM CPU S3C44BOX在水表智能系統(tǒng)中的應(yīng)用

    ARM CPU S3C44BOX在水表智能系統(tǒng)中的應(yīng)用 介紹
    發(fā)表于 10-01 21:53 ?45次下載

    S3C44B0X中文手冊 pdf

    S3C44B0X中文數(shù)據(jù) 三星的S3C44B0X 16/32RISC處理器被設(shè)計來為手持設(shè)
    發(fā)表于 02-10 12:07 ?254次下載

    S3C44B0X datasheet, RISC MICRO

    S3C44B0X d
    發(fā)表于 03-09 09:47 ?35次下載

    基于S3C44B0X的心電信號處理系統(tǒng)設(shè)計

    基于S3C44B0X的心電信號處理系統(tǒng)設(shè)計 本文設(shè)計了一個具有數(shù)字化、信息化特征的心電信號處理系統(tǒng)。該系統(tǒng)以 32
    發(fā)表于 10-06 08:22 ?889次閱讀
    基于<b class='flag-5'>S3C44B0X</b>的心電信號<b class='flag-5'>處理系統(tǒng)</b>設(shè)計

    處理器S3C44B0X音頻文件播放

    處理器S3C44B0X音頻文件播放 S3C44B0X是三星公司針對嵌入式系統(tǒng)推出高性價比微處理器,它是基于ARM7TDMI內(nèi)核的16/3
    發(fā)表于 03-16 11:46 ?777次閱讀
    微<b class='flag-5'>處理器</b><b class='flag-5'>S3C44B0X</b>音頻文件播放

    S3C44B0X原理圖

    S3C44B0X原理圖:
    發(fā)表于 09-14 15:28 ?167次下載
    <b class='flag-5'>S3C44B0X</b>原理圖