《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第11章、內(nèi)存與IO訪問
資料介紹
在 X86 處理器中存在著 I/O 空間的概念,I/O 空間是相對(duì)于內(nèi)存空間而言的,它通過特定的指令 in、
out 來訪問。端口號(hào)標(biāo)識(shí)了外設(shè)的寄存器地址。Intel 語法的 in、out 指令格式如下:
IN 累加器, {端口號(hào)│DX}
OUT {端口號(hào)│DX},累加器
目前,大多數(shù)嵌入式微控制器如 ARM、PowerPC 等中并不提供 I/O 空間,而僅存在內(nèi)存空間。內(nèi)存空間可
以直接通過地址、指針來訪問,程序和程序運(yùn)行中使用的變量和其他數(shù)據(jù)都存在于內(nèi)存空間中。
內(nèi)存地址可以直接由 C 語言指針操作,例如在 186 處理器中執(zhí)行如下代碼:
unsigned char *p = (unsigned char *)0xF000FF00;
*p=11;
以上程序的意義為在絕對(duì)地址 0xF0000+0xFF00(186 使用 16 位段地址和 16 位偏移地址)寫入 11
而在 ARM、PowerPC 等未采用段地址的處理器中,p 指向的內(nèi)存空間就是 0xF000FF00,而*p = 11 就
是在該地址寫入 11。
再如,186 處理器啟動(dòng)后會(huì)在絕對(duì)地址 0xFFFF0(對(duì)應(yīng) C 語言指針是 0xF000FFF0,0xF000 為段地址,
0xFFF0 為段內(nèi)偏移)執(zhí)行,請(qǐng)看下面的代碼:
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第4章、Linux內(nèi)核模塊 0次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第5章、Linux文件系統(tǒng)與設(shè)備文件系統(tǒng) 0次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第6章、字符設(shè)備驅(qū)動(dòng) 23次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第7章、Linux設(shè)備驅(qū)動(dòng)中的并發(fā)控制 10次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第8章、Linux設(shè)備驅(qū)動(dòng)中的阻塞與非阻塞IO 9次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第9章、Linux設(shè)備驅(qū)動(dòng)中的異步通知與異步IO 0次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第10章、中斷與時(shí)鐘PDF免費(fèi)下載 0次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第13章、Linux塊設(shè)備驅(qū)動(dòng) 18次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第14章、Linux終端設(shè)備驅(qū)動(dòng) 8次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第15章、Linux的I2C核心、總線與設(shè)備驅(qū)動(dòng) 8次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第16章、Linux網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng) 5次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第17章、Linux音頻設(shè)備驅(qū)動(dòng) 17次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第18章、LCD設(shè)備驅(qū)動(dòng) 13次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第20章、USB主機(jī)與設(shè)備驅(qū)動(dòng) 8次下載
- 《Linux設(shè)備驅(qū)動(dòng)開發(fā)詳解》第23章、Linux設(shè)備驅(qū)動(dòng)的移植 9次下載
- Linux 驅(qū)動(dòng)開發(fā)與應(yīng)用開發(fā),你知道多少? 119次閱讀
- 如何設(shè)計(jì)并實(shí)現(xiàn)面向非易失內(nèi)存的MPI-IO接口優(yōu)化 1369次閱讀
- Vector設(shè)備的IO通道詳解 5101次閱讀
- 詳解String對(duì)象的內(nèi)存分配 2150次閱讀
- Linux設(shè)備驅(qū)動(dòng)開發(fā)的基本知識(shí) 4260次閱讀
- Linux驅(qū)動(dòng)到底能不能在應(yīng)用層開發(fā)驅(qū)動(dòng) 6029次閱讀
- 米爾科技Linux設(shè)備驅(qū)動(dòng)研究淺談 1913次閱讀
- 米爾科技LINUX設(shè)備驅(qū)動(dòng)程序教程 1965次閱讀
- Linux內(nèi)存組織結(jié)構(gòu)和頁面布局 6706次閱讀
- 基于PXA255開發(fā)板外圍字符設(shè)備的嵌入式Linux字符設(shè)備驅(qū)動(dòng)設(shè)計(jì)與應(yīng)用 1138次閱讀
- 基于嵌入式Linux內(nèi)核的系統(tǒng)設(shè)備驅(qū)動(dòng)程序開發(fā)設(shè)計(jì) 1113次閱讀
- 基于Linux2.6.30開發(fā)DS18B20的驅(qū)動(dòng)程序的類型和文件操作接口函數(shù)詳解 1377次閱讀
- Linux內(nèi)核地址映射模型與Linux內(nèi)核高端內(nèi)存詳解 3397次閱讀
- 想要駕馭Linux驅(qū)動(dòng)開發(fā),必須深刻理解Linux總線設(shè)備驅(qū)動(dòng)框架 1w次閱讀
- 嵌入式Linux驅(qū)動(dòng)開發(fā)基礎(chǔ)總結(jié)(上篇) 8416次閱讀
下載排行
本周
- 1GBT1094.11-2022電力變壓器第11部分:干式變壓器
- 14.12 MB | 3次下載 | 免費(fèi)
- 2FT-7800R對(duì)講機(jī)維修手冊(cè)附原理圖
- 3.35 MB | 2次下載 | 免費(fèi)
- 3串口工具UartAssist5.0.exe
- 0.60 MB | 2次下載 | 免費(fèi)
- 4爬電距離和電氣間隙計(jì)算
- 0.75 MB | 2次下載 | 1 積分
- 5UC3584DW次級(jí)側(cè)后置穩(wěn)壓器EVM板原理圖
- 38.97KB | 2次下載 | 免費(fèi)
- 6UCC38C42 25瓦自諧振復(fù)位正激變換器
- 320.6KB | 1次下載 | 免費(fèi)
- 7ZX-D37 BLE主從一體藍(lán)牙模塊技術(shù)手冊(cè)
- 1.22 MB | 1次下載 | 免費(fèi)
- 8使用15個(gè)時(shí)鐘周期的ADS7841和ADS7844
- 188.55KB | 1次下載 | 免費(fèi)
本月
- 1無刷電機(jī)控制方案設(shè)計(jì)合作
- 1.05 MB | 22次下載 | 免費(fèi)
- 2美的超薄電磁爐TM-S1-09B主板原理圖
- 0.08 MB | 20次下載 | 免費(fèi)
- 3純電動(dòng)汽?的主要部件及?作原理
- 5.76 MB | 12次下載 | 5 積分
- 4GP328和GP88S對(duì)講機(jī)的維修實(shí)列資料合集免費(fèi)下載
- 0.03 MB | 10次下載 | 10 積分
- 5舒爾SLX4無線話筒接收機(jī)原理圖:二次變頻超外差部分
- 0.27 MB | 8次下載 | 免費(fèi)
- 6IP5385_DEMO開發(fā)資料
- 1.96 MB | 7次下載 | 2 積分
- 7i.MX Linux開發(fā)實(shí)戰(zhàn)指南—基于野火i.MX系列開發(fā)板
- 17.86 MB | 7次下載 | 免費(fèi)
- 8Type-C VL160數(shù)據(jù)手冊(cè)
- 0.92 MB | 7次下載 | 3 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935115次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191363次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81581次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73805次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評(píng)論
查看更多