<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í)間:2009-04-02 來(lái)源:網(wǎng)絡(luò ) 收藏

  2 、下位機軟件流程圖

3、子程序部分

 ?。?)鍵盤(pán)輸入及顯示部分

  在該系統中,我們選用了8279芯片,在程序中查詢(xún)鍵值,送入固定單元,如果無(wú)鍵按下,則送#0FFH入固定單元,然后查詢(xún)此單元,如果為#0FFH,則返回,否則根據單元的鍵值內容轉入相應的功能子程序;而顯示部分主要把待顯示的數據經(jīng)過(guò)拆分成7位(本系統采用7位數碼管顯示),分別送給顯示緩沖區,由查表的方式從表中取出7個(gè)相應的字型,送到8279數據口實(shí)現動(dòng)態(tài)顯示,8279的鍵盤(pán)掃描及顯示方式是通過(guò)初始化編程來(lái)實(shí)現的,8279初始化部分程序如下:

  MOV DPTR, #7FF0H; 8279芯片的狀態(tài)地址

  MOV A, #0D1H; 清除命令

  MOV @DPTR, A; 命令字送入

  LL: MOV A, @DPTR; 讀8279狀態(tài)字

  JB ACC.7, LL ; 清除等待

  MOV A, #08H; 顯示器左邊輸入外部譯碼,雙鍵互鎖方式

  MOV @DPTR, A; 命令字送入

  MOV A, #2AH; 時(shí)鐘編程命令

  MOV @DPTR,A; 命令字送入

  RET; 返回

 ?。?)MC146818時(shí)鐘部分

  MC146818芯片是摩托羅拉公司生產(chǎn)的一種可編程的時(shí)鐘芯片,該系統中用它來(lái)讀寫(xiě)恒星時(shí),其中一些主要的操作就是芯片的初始化,讀時(shí)間操作,寫(xiě)時(shí)間操作幾大部分,在使用該芯片進(jìn)行執行讀/寫(xiě)時(shí)間操作時(shí),必須得注意,要首先查詢(xún)它的狀態(tài)看它是否正在刷新數據,如果是,必須等刷新數據動(dòng)作完成之后再對芯片進(jìn)行讀/寫(xiě)操作,否則容易出錯,MC146818的初始化部分程序如下:

  MOV DPTR,#0BFCAH; A寄存器口地址

  MOV A,#26H; 命令字

  MOVX @DPTR,A

  INC DPL; B寄存器口地址

  MOV A,#1AH; 命令字

  MOVX @DPTR,A

  RET; 返回

  讀時(shí)間子程序:

  MOV DPTR, #0BFCAH

  AA: MOVX A, @DPTR; 讀取狀態(tài)字

  ANL A, #80H

  JNZ AA; 芯片是否正在刷新?否,讀取數據

  MOV DPTR, #0BFC0H;讀秒單元

  MOVX A, @DPTR

  MOV @R1, A

  INC R1

  MOV DPL, #0C2H; 讀分單元

  MOVX A, @DPTR

  MOV @R1,A

  INC R1

  MOV DPL, #0C4H; 讀時(shí)單元

  MOVX A, @DPTR

  MOV @R1, A

  RET; 返回

  寫(xiě)時(shí)間的子程序同上類(lèi)似,不再多述。

 ?。?)串行通信子程序

  W77E58實(shí)現雙串口通信,初始化完畢后進(jìn)入主流程,逐個(gè)查詢(xún)串口是否有通信數據請求,如果有則進(jìn)入通信子程序執行并返回,否則程序直接往下執行,把下位機的數據分別發(fā)送給把手盒和工控機,等待接收控制命令。具體的初始化程序如下:



評論


相關(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>