實驗內容:
編寫程式,使用dma通道進行ram——ram的通道傳送。將6264中0000:8000h—0000:80ff單元的資料傳送至0000:8200h—0000:82ffh單元中。
本實驗中8237實驗位址從x20h—x2fh
實驗**:
code segment
assume
;在 0000:8000h——0000:80ffh間迴圈儲存a——z,以便驗證結果
mov ax,0000h
mov es,ax
mov bx,8000h
mov cx,100h
mov dl,40h
rep1:
inc dl
mov es:[bx],dl
inc bx
cmp dl,5ah
jnz ss1
mov dl,40h
ss1:
loop rep1
;dma配置部分
mov al,04h
out 28h,al ;禁止8237a工作
out 2dh,al ;復位命令,使先後觸發器清0
mov al,0ch ;送遮蔽字——00001100充許通道0,1
out 2ah,al
mov al,00h ;通道0起始位址——8000h,先送低8位後送高8位
out 20h,al
mov al,80h
out 20h,al
mov ax,0ffh ;通道0計數——00ffh,同樣先送低8位後送高8位
out 21h,al
mov al,00h
out 21h,al
mov al,88h ;通道0工作方式——10001000,資料塊讀傳送
out 2bh,al
mov al,00h ;通道1起始位址8200h——依然先送低8位後送高8位
out 22h,al
mov al,82h
out 22h,al
mov ax,0ffh ;通道1計數——00ffh,先送低8位後送高8位
out 23h,al
mov al,00h
out 23h,al
mov al,85h ;通道1工作方式——10000101,資料塊寫操作
out 2bh,al
mov al,01h ;寫命令字——00000001,允許dma控制,,允許mem-to-mem
out 28h,al
mov al,100b ;寫請求字,啟動通道0
out 29h,al
code ends
end start
嵌入式實驗 之 DMA控制器實驗
實驗環境 實驗步驟 思考題 附錄 dma 庫函式 dma direct memory access 直接儲存器訪問,是一種可以大大減輕cpu 工作量的資料訪問方式,因而被廣泛地使用。外設工作的時候,除了轉移資料,實質上是不需要核心進行干預的,而如果資料轉移的工作現在也交給了另乙個外設,那麼在該外設進...
ThinkPHP 控制器(四)
thinkphp 提供了一組常量來判斷當前請求是否是 get post 等。通過判斷請求處理不同的業務邏輯。常量 含義 is get 判斷是否 get 提交請求 is post 判斷是否 post 提交請求 is put 判斷是否 put 提交請求 is delte 判斷是否 delete 提交請求...
ARM PL330 DMA控制器開發(二)
四 s5pc100 pl330測試例子 下面的 目標要實現記憶體間的資料拷貝。對於s5pc100,有3個dma控制器。要實現記憶體間的dma訪問,需要使用dma mem。如下圖所示為dmac控制流程。圖dmac控制流程 配合上面的流程圖,可以編寫 如下。1 相關的巨集定義。define max 10...