《電子技術應用》
您所在的位置:首頁 > 其他 > 設計應用 > dsPIC33FJ256MC710 疑難問題及解決方法
dsPIC33FJ256MC710 疑難問題及解決方法
摘要: 美國微芯公司推出的dsPIC33FJ256MC710高性能16位數字信號控制器,采用了改進型的哈佛架構、C編譯器優化的指令集、流水線取指令方式,具有實用、低價、指令集小、功耗低、速度高、體積小、功能強、抗干擾能力強等特點。dsPIC33FJ256MC710高性能16位數字信號控制器內含有 12位的A/D轉換器(500 ksps)、直接存儲器訪問(DMA)、比較輸出、捕捉輸入、I2C接口、SPI接口、CAN接口、USART接口、Flash程序存儲器自讀寫等強大的控制功能,內核又具有強大的數字信號處理能力,具有廣闊的應用前景,主要應用于電機控制等領域。
Abstract:
Key words :

引 言
    美國微芯公司推出的dsPIC33FJ256MC710高性能16位數字信號控制器,采用了改進型的哈佛架構、C編譯器優化的指令集、流水線取指令方式,具有實用、低價、指令集小、功耗低、速度高、體積小、功能強、抗干擾能力強等特點。dsPIC33FJ256MC710高性能16位數字信號控制器內含有 12位的A/D轉換器(500 ksps)、直接存儲器訪問(DMA)、比較輸出、捕捉輸入、I2C接口、SPI接口、CAN接口、USART接口、Flash程序存儲器自讀寫等強大的控制功能,內核又具有強大的數字信號處理能力,具有廣闊的應用前景,主要應用于電機控制等領域。
    我們在芯片的實際應用中遇到了一些預想不到的問題,有的是由于硬件設計造成,有的是由于外部干擾造成,還有的是軟件初始化造成的。這些問題的解決方法在微芯公司的應用文檔中未提供,我們花了較多的時間進行分析、測試,最后解決了問題。本文將這些解決方法介紹給大家,以避免大家在這個問題上花費太多的時間或因一些無法解決的問題而造成損失。

1 正交編碼器接口模塊的問題
    dsPIC33FJ256MC710的正交編碼器接口模塊(以下簡稱QEI模塊),在調試(Debug)模式下,能夠正常工作,可以得到光電編碼器的轉動信號,但是在程序下載(Pro-gram)后模塊不工作,不能得到光電編碼器的轉動信號。這個問題有些隱蔽,不易發現,在我們過去使用微芯公司芯片的過程中還從未遇到過。
    本文選用的光電編碼器為1024線,差分信號輸出。這種輸出方式在工業現場使用具備較高的抗干擾能力,可以連接的導線較長。由于光電編碼器的輸出為差分信號,而芯片接口要求為TTL電平信號,因此增加一片AM26LS32完成電平轉換,把差分信號轉換為TTL電平信號。光電編碼器輸出的A和/A、B和/B、z和/Z三組差分信號接入AM26LS32芯片,轉化為A、B、Z三路TTL電平信號與dsPIC33FJ256MC710的正交編碼器接口模塊 (QEI)連接。A、B為正交編碼信號,z為光電編碼器零位置信號。
    dsPIC33FJ系列芯片,具有智能化的QEI模塊。它由QEA、QEB和INDX三個輸入通道組成。QEA和QEB這兩個通道具有智能的正交解碼功能。把光電編碼器輸出的A、B兩相正交編碼信號接入這兩個通道,芯片通過解碼算法,自動判斷出光電編碼器的旋轉方向和旋轉相對位置。INDX通道稱為索引脈沖。該通道通過接入Z信號,根據絕對零位置和相對位置,就可以確定光電編碼器旋轉的絕對位置。硬件接口原理框圖如圖1所示。

    按照微芯公司的應用筆記,QEI初始化程序如下:

  

  在使用調試(Debug)模式運行程序時,用示波器可觀察到芯片53號引腳RF8上電平在每次編碼器位置過零時產生了翻轉。QEI模塊工作正常。而使用下載(Pro-gram)模式下載程序后,用示波器察到芯片53號引腳RF8上電平在每次編碼器位置過零時不發生變化,QEI模塊工作不正常。
    修改初始化程序,初始化復用引腳時增加對模數轉化模塊AD2PCFGL的配置,就解決了這個問題。程序修改如下:

 

  
    修改后的程序在下載(Program)模式的情況下,用示波器可以觀察到芯片53號引腳RF8上電平在每次編碼器位置過零時產生翻轉,QEI模塊正常工作。
    實際應用QEI模塊時,直接讀取POSCNT寄存器的值,就可知道所測量旋轉軸的絕對位置。本文選用1024線的光電編碼器,通過配置寄存器選擇X4模式,POSCNT寄存器的計數范圍為0~4 096。根據索引脈沖中斷和POSCNT寄存器的值,便可精確地知道旋轉軸的旋轉方向、旋轉速度、當前旋轉軸位置等,精度可以達到1/4 096。

2 RD15作為I/O輸出的問題
    通用I/O端口是最基本最常用的接口,單片機、數字信號處理器通過它實現最基本的高低電平邏輯控制。應用時,dsPIC33FJ256MC710的第48號引腳作為I/O輸出時,對應為RD15。RD15作為開關量輸出時,軟件設置為高電平,但引腳上不能建立高電平。通過大量的試驗檢測,發現芯片第48號引腳RD15作為I/O端口時不能正常工作。為了更清楚地說明該問題,引入47、53、54號引腳RD14、RF7、RF8與RD15作對比。相關驗證程序如下:


    運行上述程序,用示波器觀察dsPIC33FJ256MC710芯片的RD14、RF7、RF8對應的第47、53、54引腳上的電平均為規律的方波信號,而48引腳RD15上高電平不能正常建立,只有極小的尖峰脈沖,波形如圖2所示。

    圖2中上部波形為用作對比的RD14對應的第47號引腳上的電平信號,下部波形為RD15對應的第48號引腳上的電平信號。下部波形與上部波形的控制方式是一樣的(見上述程序),但是不能得到高電平信號。
    修改程序的方法是在改變寄存器PORTDbits.RD15之后添加一個空操作指令asm("nop")。修改后程序如下:


    運行修改后的程序,RD15對應的第48號引腳上也出現規律的方波信號,解決了上述問題。這個問題在應用中也是不易發現的,查了微芯公司的應用筆記也無相關說明,因此詳細寫出來以饋讀者。

結 語
    本文介紹了Microchip公司的高性能16位數字信號控制器dsPIC33FJ系列芯片的內部資源,在應用dsPIC33FJ256MC710芯片時遇到的兩個疑難問題。這些問題可能是由于硬件設計造成,也可能是外部干擾或軟件初始化造成的,往往是預想不到的問題。本文利用相關程序和波形具體闡述了這兩個問題的現象和解決方法,并附上了相應的程序,希望對讀者能有所幫助。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 国产成人免费高清激情明星| 在线观看中文字幕国产| 久久精品国产亚洲av瑜伽| 欧美日韩高清性色生活片| 伊人久久大香线蕉avapp下载| 美女扒了内裤让男人桶爽视频 | 国产男女猛烈无遮挡免费视频网站 | 日本老师和同学xxxx| 五月婷婷在线播放| 欧美亚洲国产激情一区二区| 亚洲精品nv久久久久久久久久| 粉色视频在线播放| 北条麻妃一区二区三区av高清| 美村妇真湿夹得我好爽| 国产一区二区在线观看app| 黄瓜视频在线观看网址| 国产欧美日韩综合精品一区二区| 4虎1515hh永久免费| 国模精品一区二区三区视频| aaaa级毛片| 天天狠天天透天干天天怕∴| 一个人看的www免费高清中文字幕| 成人精品一区二区久久 | 清纯校花被色老头糟蹋| 偷窥无罪之诱人犯罪| 精品91一区二区三区| 冈本视频老版app下载安装进入口| 纯肉高H啪动漫| 唐人电影社欧美一区二区| 翁与小莹浴室欢爱51章| 嘘禁止想象免费观看| 老司机成人精品视频lsj| 国产一区二区三区免费播放| 色综合天天综合网国产成人网| 国产免费一区二区三区在线观看| 韩国理论片中文字幕版电影| 国产夫妻在线视频| 黄色一级片毛片| 国产女人aaa级久久久级| 麻豆安全免费网址入口| 国产在线精品国自产拍影院同性|