發布日期:2022-10-09 點擊率:140
濾波器、中斷使能寄存器、總線定時器和輸出控制器。完成這些寄存器的配置后,就要退出復位模式,進入工作模式。它的初始化流程圖如圖2所示。
2 報文的收發處理
對SJA1000的操作通常有2種方案,一種是時序模擬模式;另一種便是用擴展RAM的模式來完成。該控制器通常有2種讀寫模式,一種是Intel模式;另一種是Motorola模式,由于它的管腳設置和普通的RAM管腳設置相似,因此文中采用擴展RAM 的模式來實現總線的報文收發。總線繼電器的報文的處理包括2部分,即數據的接收處理,報文的發送處理。
2.1 報文的接收
報文的接收是由該控制器自動完成,文中要做的就是要把信息從接收緩存中讀出來,然后將讀出來的信息存放在數據存儲器中。一條數據報文能否被成功地接收由驗收濾波器模式控制位、驗收代碼寄存器、驗收代碼屏蔽寄存器、報文標識符共同決定。只有通過驗收濾波器的過濾的報文才能被接收,否則是不能送到控制器接收緩沖區的。當報文成功通過驗收濾波器并被送入接收緩沖中后,會置位接收緩沖區狀態位,如果這個時候使能接收中斷RIE,就會產生接收中斷,使得控制器的INT的電平發生變化,此時中斷微控制器。接下來微處理器的任務大致由下面三步分組成,首先要監視控制器的狀態,確定一下是否有需要讀取的報文;其次便是將接收緩沖區中的數據讀出來存放到數據存儲器中并需要置位接收處理標志;最后便是處理接收到的報文。需要注意的是處理接收報文的目的主要是為驅動繼電器做準備。
2.2 報文的發送
報文的發送負責將待發數據發到總線上。第一屏蔽相關中斷,避免收到的數據對發送的影響;第二要對和報文發送相關的數據寄存器進行設置,確定通信的目標節點,同時準備好要發送的數據;第三在發送之前要對SJA1000發送緩沖區是否有待發送的數據進行檢查,如果沒有待發送的數據或者正在發送的數據,則可以將準備好的數據發送到控制器發送緩沖區做好發送準備,否則新的報文是不能寫入發送緩沖區的;第四就是把要發送的報文寫入控制器發送緩沖區,準備發送;第五就是置位發送請求標志位,之后控制器會自動完成報文的發送。信息的發送流程圖如圖4所示。
3 電流信號的數據采集
系統電流信號的采集,文中采用的是美國國家半導體生產的8位分辨率、雙通道A/D轉換芯片。文中之所以使用該款芯片,主要是考慮到它的體積較小、兼容性強、性價比高,更為重要的是它的數據是串行輸出,節約了單片機的管腳資源。
一般情況下,和單片通信的管腳由以下4個:片選端CS、時鐘輸入端CLK、數據輸出端DO、模式選擇輸入端DI。通過對時序圖的分析發現,DI和DO不是始終同時有效,因此在設計電路時,可以將此二管腳并接到一起作為一個管腳連接到單片機上。ADC轉換流程大致如下。首先是使能選中芯片,即要拉低片選CS,并且要保持該電平到轉換完畢,因為當CS置位的時候,該芯片是不能使用的;其次是要發送一個起始信號,這就需要在第一個時鐘的下降沿到來之前拉高DI;再次是要輸入通道選擇控制字進行轉換通道選擇,通道控制的選擇需要在接下來第2、3個脈沖下降沿來臨之前輸入兩位數據文中先后對DI輸入1,0;最后是從DO端輸出AD轉換結果,即在先在第4時鐘下降沿到第11個時鐘下降沿之間的每一個下降沿都會輸出 A/D轉換結果,高位在前,共8位,接下來在從第11個時鐘下降沿到第19個時鐘下降沿的每個時鐘下降沿又一次
輸出和之前相反的數據,也是8位,只是這個時候是低位在前;最后便是拉高CS,禁止使能A/D轉換,對該2個8位數據進行比對,將轉換結果送到數據寄存器中。圖5是ADC轉換的流程圖。
4 看門狗MAX813L
在單片機構成的系統當中,單片機的工作往往會受到來自外界干擾,導致程序陷入死循環,進而使得單片機無法正常工作,單片機的手動復位又有其局限性,為此文中采用專門監測單片機運行狀態的芯片MAX813L。該芯片不僅能實現系統復位,還可以監測電源狀態,當出現掉電或者低壓等情況時保護重要數據。
4.1 系統復位
當系統受到某些干擾的影響,使得系統程序跑飛,當該芯片的看門狗信號輸入端WDI在超過1.6 s時間內得不到清除定時器的脈沖時,看門狗輸出管腳WDO將由高電平變為低電平,根據圖6會發現,復位輸入端MR會被拉低成低電平,當這個低電平保持時間在140 ms以上時,復位信號輸出端RST會復位信號,從而復位CPU。根據前面分析,系統的正常運行需要最多以1.6 s的時間間隔給看門狗輸入端輸入脈沖。文中使用定時器0的工作方式1每隔50 ms給看門狗芯片一個清定時器脈沖。喂狗的實現代碼如圖7所示。
4.2 電源監視
當電源故障輸入管腳的電位低于1.25 V時,電源故障輸出端的電平會由高變低,導致微處理器P32管腳的電平發生變化,進而觸發外部中斷0,執行中斷服務程序,即凍結寄存器的內容,保存RAM 中的數據,激活掉電模式,進入掉電工作狀態。要想退出掉電模式,系統必須復位。
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV