專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命
提供開發(fā)工具、應用測試 完善的開發(fā)代碼案例庫分享
從全面的產(chǎn)品導入到強大技術支援服務 全程貼心伴隨服務,創(chuàng)造無限潛能!
單片機開發(fā)商深圳英銳恩分享基于CH365的PIC單片機通信卡的設計 。
深圳市英銳恩科技有限公司(m.honghetong.net)為單片機技術服務\開發(fā)設計和產(chǎn)品代理商,授權MDT(麥肯 MICON)單片機A級代理商,MICROCHIP產(chǎn)品全系列單片機與模擬器件授權推廣
商。同時A級代理分銷NOVACAP、Syfer、Voltronics精密可調電容、DLI寬帶隔直微波電容,專注分銷AIC沛亨半導體(電源管理IC)、IR(場效應管)。
如:
MDT10P72(完全兼容PIC16C72、PIC16F72、HA3089,直接替換,不要任何硬軟與軟件修改)
特性:ROM:2K,腳位:28PIN,I/O:22PIN,A/D:8bit 5通道,復位時間極快.2V,低電壓工作.低功耗,溫度范圍寬。
MDT10P721(完全兼容PIC16C72、PIC16F72、HA3089,空間大,價格低,直接替換,不要任何硬軟與軟件修改)
特性:ROM:4K,腳位:28PIN,I/O:22PIN,A/D:8bit 5通道,復位時間極快.2V,低電壓工作.低功耗,溫度范圍寬。
基于CH365的PIC通信卡的設計
PCI是先進的高性能局部總線,可同時支持多組外圍設備。PCI局部總線不受制于處理器,為中央處理器及高速外圍設備提供數(shù)據(jù)傳輸通道,進行總線之間數(shù)據(jù)傳輸?shù)恼{度管理,PCI采用高度綜合化的局部總線結構,以確保計算機中各部件、附加卡及系統(tǒng)之間的可靠運行。基于現(xiàn)在市場上PCI芯片有PLX公司及AMCC公司的器件,他們在硬件設計周期以及驅動程序開發(fā)上對于初學者來講都存在一定困難。CH365是一個連接PCI總線的通用接口芯片,支持I/O端口映射、存儲器映射、擴展ROM以及中斷。CH365將32位高速PCI總線轉換為簡便易用的類似于ISA總線的8位主動并行接口,用于制作低成本的基 于PCI總線的計算機板卡、以及將原先基于ISA總線的板卡升級到PCI總線上。另外CH365不論在設計難度、開發(fā)周期、ISA移植,還是在價格上都有其自身優(yōu)越性,所以CH365應用非常廣泛,例如適用于高速實時的I/O控制卡、通訊接口卡、數(shù)據(jù)采集卡、電子盤、擴展ROM卡等。
1 CH365的特點
(1)可以設定PCI板卡的設備標識(Vendor ID,Device ID,Class Code等)。
(2)支持以字節(jié)、字或雙字為單位對I/O端口或者存儲器進行讀寫。
(3)自動分配I/O基址,支持長達240B的I/O端口。
(4)支持本地硬件定址功能,自由選擇I/O地址,在指定地址實現(xiàn)I/O端口。
(5)直接升級ISA的I/O板卡到PCI總線,完全不需要修改原ISA卡的相關軟件。
(6)直接映射支持容量為32kB的存儲器SRAM或者擴展ROM(Boot ROM)。
(7)無需外接元器件擴容支持容量為64kB以及128kB的存儲器或者擴展ROM。
(8)支持擴展ROM無硬盤引導,支持閃存Flash Memory在線升級。
(9)可以提供擴展ROM應用的子程序庫BRM,用于BIOS環(huán)境下用戶界面顯示及數(shù)據(jù)處理。
(10)支持低電平有效的本地中斷請求,支持中斷共享。
(11)提供兩線串行主機接口,可以掛接類似24C0X的兩線串口E2PROM器件。
(12)內置4μs-1ms的硬件計時單元,用于軟件運行過程中作為延時參考。
(13)芯片本身無需驅動程序即可工作,升級ISA板卡可以不需要驅動程序。
2 空間映射
PC機中包括3種空間:存儲器空間、I/O空間、配置空間。存儲器空間主要包括內存、顯存、擴展ROM、設備緩沖區(qū)等,一般用于存放大量數(shù)據(jù)和進行數(shù)據(jù)塊交換。I/O空間主要包括設備的控制寄存器和狀態(tài)寄存器,一般用于控制和查詢設備的工作狀態(tài)以及少量數(shù)據(jù)的交換。配置空間主要用于向系統(tǒng)提供設備自身的基本信息,并接受系統(tǒng)對設備全局狀態(tài)的控制和查詢。為了避免地址沖突,PCI總線要求各個設備所占用的地址能夠重定位。重定位是由設備的配置空間的基址寄存器實現(xiàn)的,通常情況下,各個設備的基址寄存器總是被BIOS或者操作系統(tǒng)分配為不同的基址,從而將各個設備分別映射到不同的地址范圍。在需要時,應用程序也可以自行修改基址。CH365的存儲器空間占用32kB,偏移地址是0000H-7FFFH,可以全部提供給外部設備使用,實際地址是存儲器基址加上偏移地址。CH365的I/O空間占用256kB,去掉CH365自用寄存器,還可以提供240B給外部設備使用,偏移地址是00H-EFH,實際地址是I/O基址加上偏移地址。
PCI卡制作及PCB圖設計注意事項
PCI總線工作在高頻環(huán)境中,傳送線在信號線上驅動電壓變化時會出現(xiàn)阻抗,信號線的寬度和到接地的距離都會影響其阻抗,所以在設計PCB時需要參考PCI總線規(guī)范,特別要注意考慮信號阻抗匹配,具體有以下幾點作為參考:
(1)在32位PCI總線中,除了信號線外,還有2個卡存在信號:PRSNT1#和PRSNT2#。PCI板卡設計者在卡存在信號上對卡的最大電源需求進行編碼,當卡被插在PCI插槽中時,他將其中至少一個或所有兩個卡存在信號接地。
(2)對于32位PCI總線的所有信號,其最大電路長度限定在1.5in(約38mm)以內。建議在設計PCB時,PCI信號線的長度都小于25mm,盡量走弧線或者45°線,避免走直角或者銳角走線,并且盡量將走線布在元件面,而PCB背面保留大面積的接地覆銅,以降低傳送線的阻抗。
(3)PCI總線的CLK信號線的長度要求是2.5in(約83mm)左右,并且只能與卡上一個負載連接。建議CLK信號線的長度盡量保持在50-85mm之間,并且不宜靠近其他信號線,為減少周邊信號線的干擾,在CLK兩側及PCB背面布置接地線或者覆銅。
(4)CH365有3對電源引腳,至少需要3個電源退耦電容。
(5)與PCI插槽連接的電源線引腳可以自由選擇,但數(shù)量不宜少于4對。當板卡的電源消耗較大時,可以多增加幾對電源線,通過多點接觸提供穩(wěn)定的大電流。
4.3 硬件中斷功能介紹
CH365芯片具有軟件和硬件中斷功能,與中斷功能有關的2個引腳分別是PCI_INTA和SYS_EX。如果CH365的數(shù)據(jù)線D3連接了下拉電阻,則工作模式設定為啟用中斷功能,SYS_EX引腳自動復用為INT_REQ,作為本地中斷請求輸入引腳,低電平有效,外部電路需要請求計算機中斷時只要向該引腳提供低電平脈沖。PCI_INTA總是作為PCI中斷三態(tài)輸出引腳,不用中斷功能時可以懸空不接,需要中斷功能時可以與PCI總線的INTA相連接,低電平有效,中斷激活時輸出低電平,中斷未激活時輸出高阻。
5 應用程序介紹
(1)接收數(shù)據(jù)子程序
CH365OpenDevice(true,true);
mPCH365_IO_REG mIoBase;
CH365GetIoBaseAddr(&mIoBase);
//CH365WriteIoByte(&mIoBase->mCH365IoPort
[0x0FA],71);//* * * * * * * * * *
UCHAR data1;
CH365ReadIoByte(&mIoBase->mCh365IoPort[m_PortNumR],&data1);m_DataR=data1;
(2)發(fā)送數(shù)據(jù)子程序
CH365OpenDevice(true,true);
mPCH365_IO_REG mIoBase;
CH365GetIoBaseAddr(&mIoBase);
CH365WriteIoByte(&mIoBase->mCh365IoPort[m_PortNumW],m_DataW);
本文采用南京沁恒公司提供的PCI接口芯片CH365實現(xiàn)了PCI通信卡的設計,在使用中測的實際傳輸率為10MB/s左右,工作穩(wěn)定可靠,完全可以滿足一般數(shù)據(jù)量傳輸不是非常快的場合。