<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 模擬技術(shù) > 設計應用 > 嵌入式數字存儲示波器

嵌入式數字存儲示波器

作者: 時(shí)間:2011-11-30 來(lái)源:網(wǎng)絡(luò ) 收藏
介紹基于uCLinux操作系統,使用SamsungS3C 44BOXCPU,設計并實(shí)現的一種。在uCLinux平臺上實(shí)現多任務(wù)程序運行,用 中斷方式實(shí)現觸摸屏控制。系統具有采集、、顯示和分析的功能。
  關(guān)鍵詞:系統;uCLinux;;FIFO;多任 務(wù)
Changsha 410083, China)
  Samsung S3C44BOX是三星公司專(zhuān)為手持設備和一般應用提供的高性?xún)r(jià)比和高性能的微處理器 ,它使用ARM7TDMI核,工作在66MHz。為了降低系統總成本和減少外圍器件,這款芯片中還 集成了下列部件:8KB Cache、外部存儲器控制器、LCD控制器、4個(gè)DMA通道、2通道UART、1 個(gè)多主IIC總線(xiàn)控制器、1個(gè)IIS(Inter?IC Sound)總線(xiàn)控制器,5通道PWM定時(shí)器及1個(gè)內部 定時(shí)器、71個(gè)通用I/O口、8個(gè)外部中斷源、實(shí)時(shí)時(shí)鐘、8通道12位ADC等。
1.2A/D轉換采集系統
  由于存儲工作在40MHz,而S3C44BOX處理器內帶ADC的工作頻率最高只能達到50kH z,所以必須單獨設計一個(gè)A/D轉換采集系統,其組成如圖2所示。

  根據數字存儲示波器的隨機采樣原理得知:示波器每次觸發(fā)以后,A/D轉換器完成一組采樣 序列,并將其存入高速RAM中;稍后,由微處理器進(jìn)行處理,顯示在液晶屏幕上,這就是一 次數據獲得過(guò)程。系統接口具體方案如圖3所示。使用微處理器S3C44BOX的I/O端口來(lái)讀取數 據并發(fā)出控制信號。其中“FIFO RAM”為先進(jìn)先出存儲器,采用IDT公司的IDT72V02型號, 最高轉換速率為15ns,1024×9bit存儲空間。
  系統利用S3C44BOX微處理器I/O端口中的F端口實(shí)現數據的輸入輸出,利用D端口和G端口來(lái)進(jìn) 行控制。采集的信號經(jīng)過(guò)A/D變換后首先進(jìn)入FIFO存儲器,當從FIFO中每讀出一個(gè)數據后需 要再向其發(fā)送一個(gè)讀數脈沖信號,這樣才能保證讀出下一個(gè)單元內存儲的數據,讀數脈沖由 G端口的第四位PG4給出。數據從FIFO存儲器中被讀出后經(jīng)過(guò)數字鎖存器進(jìn)入端口F的數據寄 存器PFDATA中,數字鎖存信號由D端口的第四位PD4給出。當處理器讀周期到來(lái)時(shí),數據由端 口被讀入內存。每當數據采滿(mǎn)1K時(shí),FIFO存儲器會(huì )產(chǎn)生一個(gè)中斷信號,該中斷信號由D端口 的PD6輸入給微處理器。
2.1數據采集和存儲模塊
  數據采集存儲模塊的流程如圖4所示。
2.2波形顯示和刷新模塊
  系統使用一塊大小為240×320像素的256彩色液晶顯示屏,其平面尺寸為93mm×75mm(長(cháng) ×寬)。微處理器S3C44BOX為L(cháng)CD的控制提供了良好的支持,其實(shí)現主要通過(guò)微處理器中的LC D控制器來(lái)完成。波形的顯示主要通過(guò)將數字量轉換成液晶顯示屏上點(diǎn)的坐標來(lái)實(shí)現,存放 在內存中的數據經(jīng)過(guò)坐標變換就可以在LCD上進(jìn)行顯示。因為L(cháng)CD的坐標系與顯示波形 時(shí)所用的坐標系y軸方向相反,且需要將波形顯示在屏幕的特定區域內,所以在顯示之前要 對數據進(jìn)行歸一化處理。從端口讀入數據的范圍為0~0xff,0點(diǎn)對應于LCD上y軸坐標的190 ,0xff對應于LCD上y軸坐標的50,則0x7f對應于LCD上坐標為120的點(diǎn),即屏幕顯示的零點(diǎn), 相應的轉化公式為:Y=120-(data-0x7f)×0x7f,其中:data為從端口讀 入的數據;Y是data在LCD上顯示的y坐標。LCD一屏可以顯示300個(gè)數據點(diǎn) ,點(diǎn)與點(diǎn)之間用矢量法直線(xiàn)相連。
2.3觸摸屏控制模塊
  觸摸屏是附著(zhù)在LCD表面的一層透明薄膜,它將壓力轉換成模擬電信號,再經(jīng)過(guò)模 數轉換送給系統。本系統觸摸屏使用FM7843芯片控制。FM7843是4線(xiàn)電阻觸摸屏轉換接口芯 片。它是一款具有同步串行接口的12位取樣模數轉換器。在125kHz吞吐速率和2.7V電 壓下的功耗為750μW,而在關(guān)閉模式下的功耗僅為0.5μW。圖5為觸摸屏工作流程示 意圖。觸摸屏通過(guò)中斷方式完成其功能,從執行流程上來(lái)說(shuō),首先在Touch Panel?init() 中完成兩件事:注冊驅動(dòng)程序和注冊中斷。對于觸摸屏設備,主設備號為58,設備名為“FM 7843”,驅動(dòng)程序子函數集為T(mén)ouch Panel?fops。Touch Panel?fops中指定了read,sele ct,open,telease四個(gè)操作子函數的地址,依次為:Read Touch Panel,Touch Panel Sel ect,Open Touch Panel和Close Touch?Panel。當用戶(hù)進(jìn)程調用open()打開(kāi)/dev/FM7843時(shí) ,內核調用Open Touch Panel();用戶(hù)進(jìn)程調用read()讀該設備時(shí),內核調用Read Touch P anel()。request?irq()注冊中斷處理,中斷為T(mén)OUCHPANEL?IRQ?NUM,中斷處理程序為T(mén)o uch Panel Interrupt(),說(shuō)明為“Touch?Panel”。當觸摸屏被觸摸有數據來(lái)到時(shí),中斷 被觸發(fā),調用中斷處理程序,準備處理數據。
  該系統中觸摸屏主要用于獲取用戶(hù)的控制信息, 在LCD的上方顯示有若干個(gè)觸摸屏按鈕,例 如其中有幅值增加、幅值減小、頻率增加和頻率減小等。幅值和頻率的選定值存放在指定內 存單元中,當檢測到觸摸點(diǎn)的坐標在相應區域中后,系統就會(huì )根據程序預先設定來(lái)設定采樣 頻率和幅值,這些在前、后臺任務(wù)之間進(jìn)行同步和通信。任務(wù)之間的通信是通過(guò)共享指定的 物理內存單元來(lái)實(shí)現的,不同任務(wù)之間對共享內存單元的訪(fǎng)問(wèn)是互斥的。uCLinux的設計針 對沒(méi)有MMU(內存管理單元模塊)的處理器,不能使用虛擬內存管理技術(shù)。uCLinux系統對于內 存的訪(fǎng)問(wèn)是直接的,所有程序中訪(fǎng)問(wèn)的地址都是實(shí)際的物理地址,操作系統對內存空間沒(méi)有 保護。當觸摸屏檢測到有改變幅值或頻率的信號發(fā)生時(shí),就去修改指定單元中存儲的數據, 這樣的內存單元對于兩個(gè)任務(wù)來(lái)說(shuō)屬于臨界資源,在觸摸屏修改內存期間需要禁止其他程序 對該內存進(jìn)行任何操作。同樣,采集程序每次在發(fā)送幅值和頻率信號之前要對該內存單元進(jìn) 行讀操作,若在此時(shí)有觸摸屏信號對內存提出寫(xiě)操作要求,程序就應該進(jìn)行等待,直到采集 部分的讀操作執行完畢,釋放內存的訪(fǎng)問(wèn)權。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


關(guān)鍵詞: 嵌入式 數字 存儲 示波器

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>