<nobr id="zkazv"></nobr>

      午夜精品一区二区三区成人,中文字幕av一区二区,亚洲AVAV天堂AV在线网阿V,肥臀浪妇太爽了快点再快点,国产网友愉拍精品视频手机,国产精品无码a∨麻豆,久久中文字幕一区二区,a级国产乱理伦片在线观看al
      首頁 新聞 工控搜 論壇 廠商論壇 產品 方案 廠商 人才 文摘 下載 展覽
      中華工控網首頁
        P L C | 變頻器與傳動 | 傳感器 | 現場檢測儀表 | 工控軟件 | 人機界面 | 運動控制
        D C S | 工業以太網 | 現場總線 | 顯示調節儀表 | 數據采集 | 數傳測控 | 工業安全
        電 源 | 嵌入式系統 | PC based | 機柜箱體殼體 | 低壓電器 | 機器視覺
      在Vortex86主板上如何使用CMOS RAM自由空間
      深圳昭營科技有限公司
      收藏本文     查看收藏
      <BR> 在VORTEX86上可供使用的CMOS RAM的預留空間為48字節,用戶可用匯編或C語言編程來<BR> 使用這些空間。端口地址為70H~71H。<BR> 在VORTEX86中,因端口70H的第7位為NMI的屏蔽位,所以最大的定址范圍為7FH (128 bytes)。<BR> 另一個128bytes,我們可通過PCI BIOS的功能來使用位于RTC SRAM高端的128 bytes,以下演示<BR> 程式介紹如何打開、關閉高端的128 bytes。<BR> 使能高端的128 bytes<BR> 在使用RTC SRAM高端的128 bytes時,我們需要設置RTC控制暫存器第7位的LPC橋控制暫存<BR> 器。LPC橋控制暫存器的端口號是1039H,驅動位址為0008H,RTC控制暫存器的端口為48H。<BR> ReadCMOS()/WriteCMOS()<BR> 我們提供兩個函數ReadCMOS()/WriteCMOS(),方便用戶讀寫CMOS RAM。在VORTEX86<BR> 的CMOS RAM中還剩余48 bytes,地址從0~47,可供用戶編程自由讀寫。<BR> C 語言源代碼<BR> #include <stdio.h><BR> #include <conio.h><BR> #define PCI_BIOS_INTERRUPT 0x1A<BR> #define PCI_BIOS_FUNCTION_ID 0xB1<BR> #define PCI_BIOS_PRESENT 0x01<BR> #define PCI_BIOS_FIND_DEVICE 0x02<BR> #define PCI_BIOS_READ_CONFIG_BYTE 0x08<BR> #define PCI_BIOS_READ_CONFIG_WORD 0x09<BR> #define PCI_BIOS_WRITE_CONFIG_BYTE 0x0B<BR> #define PCI_BIOS_WRITE_CONFIG_WORD 0x0C<BR> unsigned char _cBusNum;<BR> unsigned char _cDeviceNum;<BR> char IsPciBiosPresent();<BR> char PciBios_FindDevice(unsigned nVenderID, unsigned nDeviceID, int nIndex,<BR> unsigned char *pcBusNum, unsigned char *pcDeviceNum);<BR> unsigned int PciBios_ReadWord (char cBusNum, char cDeviceNum, int nOffset);<BR> unsigned char PciBios_ReadByte (char cBusNum, char cDeviceNum, int nOffset);<BR> char PciBios_WriteByte(char cBusNum, char cDeviceNum, int nOffset,<BR> unsigned char cvalue);<BR> /*<BR> 可供使用的VORTEX86 CMOS RAM的預留空間為48 bytes<BR> 用ReadCmos() 和 WriteCmos()函數來操作48 bytes,地址從(00h-2fh)<BR> 使用函數將幫助你讀寫CMOS RAM,共48 bytes .<BR> */<BR> unsigned char ReadCMOS(unsigned char cIdx)<BR> {<BR> unsigned char c;<BR> if(cIdx>=0x2f)<BR> return 0;<BR> /* 設置RTC控制暫存器,使能RTC SRAM高端的128 bytes */<BR> PciBios_WriteByte(_cBusNum,_cDeviceNum,0x48,PciBios_ReadByte(_cBusNum,_cDeviceNum,0x4<BR> 8)|0x80);<BR> outp(0x70,0x50+cIdx);<BR> c = inp(0x71);<BR> /*清除RTC控制暫存器的第7位,關閉RTC SRAM 高端的128 bytes */<BR> PciBios_WriteByte(_cBusNum,_cDeviceNum,0x48,PciBios_ReadByte(_cBusNum,_cDeviceNum,0x4<BR> 8)&0x7f);<BR> return c;<BR> }<BR> void WriteCMOS(unsigned char cIdx,unsigned char cvalue)<BR> {<BR> if(cIdx>=0x2f)<BR> return;<BR> /*設置RTC控制暫存器的第7位,使能RTC SRAM 高端的128 bytes */<BR> PciBios_WriteByte(_cBusNum,_cDeviceNum,0x48,PciBios_ReadByte(_cBusNum,_cDeviceNum,0x4<BR> 8)|0x80);<BR> outp(0x70,0x50+cIdx);<BR> outp(0x71,cvalue);<BR> /* Clear bit 7 of RTC control register to disable upper 128 bytes RTC SRAM */<BR> PciBios_WriteByte(_cBusNum,_cDeviceNum,0x48,PciBios_ReadByte(_cBusNum,_cDeviceNum,0x4<BR> 8)&0x7f);<BR> }<BR> void main()<BR> {<BR> int i;<BR> unsigned char cBusNum, cDeviceNum;<BR> /* 檢測 PCI BIOS */<BR> if(!IsPciBiosPresent())<BR> {<BR> printf("Unable to find PCI BIOS.\n");<BR> return;<BR> }<BR> /*找端口號和驅動器地址 */<BR> PciBios_FindDevice(0x1039,0x0008,0,&cBusNum,&cDeviceNum);<BR> /* 測試函數*/<BR> WriteCMOS(13,0x55);<BR> printf("Read the value we wrote: %x\n",ReadCMOS(13));<BR> }<BR> char IsPciBiosPresent()<BR> {<BR> char cRet;<BR> asm {<BR> mov ah, PCI_BIOS_FUNCTION_ID<BR> mov al, PCI_BIOS_PRESENT<BR> int PCI_BIOS_INTERRUPT<BR> mov cRet, ah<BR> }<BR> return !cRet;<BR> }<BR> char PciBios_FindDevice(unsigned nVenderID, unsigned nDeviceID, int nIndex,<BR> unsigned char *pcBusNum, unsigned char *pcDeviceNum)<BR> {<BR> unsigned char cRet, cBus, cDevice;<BR> asm {<BR> mov ah, PCI_BIOS_FUNCTION_ID<BR> mov al, PCI_BIOS_FIND_DEVICE<BR> mov cx, nDeviceID<BR> mov dx, nVenderID<BR> mov si, nIndex<BR> int PCI_BIOS_INTERRUPT<BR> mov cRet, ah<BR> mov cBus, bh<BR> mov cDevice, bl<BR> }<BR> *pcBusNum = cBus;<BR> *pcDeviceNum = cDevice;<BR> return !cRet;<BR> }<BR> unsigned int PciBios_ReadWord(char cBusNum, char cDeviceNum, int nOffset)<BR> {<BR> unsigned char cRet;<BR> unsigned int nData;<BR> nOffset &= 0xFFFE;<BR> asm {<BR> mov ah, PCI_BIOS_FUNCTION_ID<BR> mov al, PCI_BIOS_READ_CONFIG_WORD<BR> mov bh, cBusNum<BR> mov bl, cDeviceNum<BR> mov di, nOffset<BR> int PCI_BIOS_INTERRUPT<BR> mov cRet, ah<BR> mov nData, cx<BR> }<BR> if(cRet)<BR> return -1;<BR> return nData;<BR> }<BR> unsigned char PciBios_ReadByte(char cBusNum, char cDeviceNum, int nOffset)<BR> {<BR> unsigned char data, cRet;<BR> asm{<BR> mov ah, PCI_BIOS_FUNCTION_ID<BR> mov al, PCI_BIOS_READ_CONFIG_BYTE<BR> mov bh, cBusNum<BR> mov bl, cDeviceNum<BR> mov di, nOffset<BR> int PCI_BIOS_INTERRUPT<BR> mov cRet, ah<BR> mov data, cl<BR> }<BR> if(cRet)<BR> return -1;<BR> return data;<BR> }<BR> char PciBios_WriteByte(char cBusNum, char cDeviceNum, int nOffset, unsigned char cvalue)<BR> {<BR> unsigned char cRet;<BR> asm {<BR> mov ah, PCI_BIOS_FUNCTION_ID<BR> mov al, PCI_BIOS_WRITE_CONFIG_BYTE<BR> mov bh, cBusNum<BR> mov bl, cDeviceNum<BR> mov di, nOffset<BR> mov cl, cvalue<BR> int PCI_BIOS_INTERRUPT<BR> mov cRet, ah<BR> }<BR> return !cRet;<BR> }<BR> 技術支持<BR> 如果你想獲得更多的技術支持,請登陸我們的網站:<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.dmp.com.cn>http://www.dmp.com.cn<;/a>。<BR> 或給我們發郵件:mailto:tech@dmp.com.cn。</P><P> 詳情點擊;<img align=absmiddle src=pic/url.gif border=0><a target=_blank href=http://www.icop.com.cn/tech/dmp-hw/bios/Use_Free_Space_in_AMI_BIOS_on_M6117D.pdf>http://www.icop.com.cn/tech/dmp-hw/bios/Use_Free_Space_in_AMI_BIOS_on_M6117D.pdf<;/a>
       

      狀 態: 離線

      公司簡介
      產品目錄

      公司名稱: 深圳昭營科技有限公司
      聯 系 人: 李鳳娟
      電  話: 0769-8233-5777
      傳  真: 0769-8776-4777
      地  址: 深圳市南山區科技園中區科發路2號9棟3樓
      郵  編: 518057
      主  頁:
       
      該廠商相關技術文摘:
      讀取CMOS時間注意事項
      在M6117D主板上如何使用CMOS RAM自由空間
      在Vortex86主板上如何使用CMOS RAM自由空間
      如何在M6117D平臺上使用AMI BIOS的空閑空間?
      M6117D BIOS 自檢碼
      Vortex86 POST 自檢碼
      如何在M-System DOC上安裝XDOS操作系統?
      如何在M6117D平臺上使用GPIO ?
      如何在M6117D平臺上使用看門狗? ((DOS下C 源代碼))
      如何偵測M6117D CPU ?
      降低M6117D功耗
      更多文摘...
      立即發送詢問信息在線聯系該技術文摘廠商:
      用戶名: 密碼: 免費注冊為中華工控網會員
      請留下您的有效聯系方式,以方便我們及時與您聯絡

      關于我們 | 聯系我們 | 廣告服務 | 本站動態 | 友情鏈接 | 法律聲明 | 不良信息舉報
      工控網客服熱線:0755-86369299
      版權所有 中華工控網 Copyright©2022 Gkong.com, All Rights Reserved

      主站蜘蛛池模板: 亚洲国产天堂久久综合226114| 天天做天天爱夜夜爽导航| 国产成熟女人性满足视频| 国产SUV精品一区二区四| 精品精品亚洲高清a毛片| 精品国产一国产二国产三| 亚洲精品一区二区妖精| jlzz大jlzz大全免费| 国产一区二区三区不卡观| 亚洲欧美中文日韩V日本| 国产一区二区三区精品久| 国内不卡不区二区三区| 成在线人永久免费视频播放| 久久精品色妇熟妇丰满人| 无码国内精品久久人妻蜜桃| 最新午夜男女福利片视频| 国产蜜臀av在线一区在线| 国产美女被遭强高潮免费一视频 | 色吊丝中文字幕在线观看| 亚洲精品麻豆一二三区| 久久人妻无码一区二区| 国产精品人伦一区二区三| 久久青青草原亚洲AV无码麻豆| 天堂av色综合久久天堂| 狠狠综合久久综合88亚洲| 日韩精品一区二区三区视频 | 不卡乱辈伦在线看中文字幕| 国产迷姦播放在线观看| 国产精品自拍视频我看看| 好紧好滑好湿好爽免费视频| 午夜福利免费视频一区二区| 亚洲天堂成年人在线视频| 伊人春色激情综合激情网| 国产精品一区二区小视频| 综合久青草视频在线观看| 国产精品亚洲欧美大片在线看| 国内在线视频一区二区三区| 人妻少妇精品系列一区二区| 国产免费久久精品44| 韩国午夜理伦三级| 少妇被粗大的猛烈进出动视频|