MTD雙雷達微波交通檢測器
北京華通至遠技術有限公司負責該設備的研發及生產 可根據使用環境和套用需求進行定製開發並提供相應監測報告
MTD原始設備描述
所有組成MTD原始設備的
Flash晶片必須是同類型(無論是interleave還是地址相連),在描述MTD原始設備數據結構中採用同一結構描述組成Flash晶片。每個MTD原始設備有一個mtd_info結構,其中的priv指針指向一個map_info結構,map_info結構中的fldrv_priv指向一個cfi_private結構,cfi_private結構的cfiq指針指向一個cfi_ident結構,
chips指針指向一個flchip結構的
數組。其中mtd_info、map_info和cfi_private結構用於描述MTD原始設備,因為組成MTD原始設備的
NOR型Flash相同,cfi_ident結構用於描述Flash晶片信息;而flchip結構用於描述每個Flash晶片專有信息。
根檔案系統
檔案系統
MTD字元設備
MTD塊設備
MTD原始設備
FLASH硬體驅動
塊設備節點
一、Flash硬體驅動層:硬體驅動層負責在init時驅動Flash硬體,Linux MTD設備的NOR Flash晶片驅動遵循CFI接口標準,其驅動程式位於drivers/mtd/
chips子目錄下。NAND型Flash的驅動程式則位於/drivers/mtd/nand子目錄下
二、
MTD原始設備:原始設備層有兩部分組成,一部分是MTD原始設備的通用代碼,另一部分是各個特定的Flash的數據,例如分區。
用於描述MTD原始設備的數據結構是mtd_info,這其中定義了大量的關於MTD的數據和操作函式。mtd_table(mtdcore.c)則是所有MTD原始設備的列表,mtd_part(mtd_part.c)是用於表示MTD原始設備分區的結構,其中包含了mtd_info,因為每一個分區都是被看成一個MTD原始設備加在mtd_table中的,mtd_part.mtd_info中的大部分數據都從該分區的
主分區mtd_part->master中獲得。
在drivers/mtd/maps/子目錄下存放的是特定的flash的數據,每一個檔案都描述了一塊板子上的flash。其中調用add_mtd_device()、del_mtd_device()建立/刪除 mtd_info結構並將其加入/刪除mtd_table(或者調用add_mtd_partition()、del_mtd_partition() (mtdpart.c)建立/刪除mtd_part結構並將mtd_part.mtd_info加入/刪除mtd_table 中)。
三、MTD設備層:基於MTD原始設備,
linux系統可以定義出MTD的
塊設備(主設備號31)和
字元設備(設備號90)。MTD字元設備的定義在mtdchar.c中實現,通過註冊一系列file operation函式(lseek、open、close、read、write)。MTD塊設備則是定義了一個描述MTD塊設備的結構 mtdblk_dev,並聲明了一個名為mtdblks的
指針數組,這數組中的每一個mtdblk_dev和mtd_table中的每一個 mtd_info一一對應。
四、設備節點:通過mknod在/dev子目錄下建立MTD字元設備節點(主設備號為90)和MTD塊設備節點(主設備號為31),通過訪問此設備節點即可訪問MTD字元設備和塊設備。
五、
根檔案系統:在Bootloader中將JFFS(或JFFS2)的檔案系統映像jffs.image(或jffs2.img)燒到flash的某一個分區中,在/arch/arm/mach-your/arch.c檔案的 your_fixup函式中將該分區作為根檔案系統掛載。
六、檔案系統:
核心啟動後,通過mount 命令可以將flash中的其餘分區作為檔案系統掛載到mountpoint上。
設備層和原始設備層的
函式調用關係(紅色部分需要我們實現):
一個MTD原始設備可以通過mtd_part分割成數個MTD原始設備註冊進 mtd_table,mtd_table中的每個MTD原始設備都可以被註冊成一個MTD設備,其中
字元設備的主設備號為90,次設備號為0、2、4、 6…(奇數次設備號為唯讀設備),
塊設備的主設備號為31,次設備號為0、1、2、3…
mtd_notifier mtd_notifier
字元設備 mtd_fops 塊設備 mtd_fops
(mtdchar.c) (mtdblock.c) mtdblks
設備層
register_mtd_user()
get_mtd_device()
unregister_mtd_user()
put_mtd_device()
erase_info
mtd_notifiers
mtd_table
mtd_info
mtd_part
(mtdcore.c)
(mtdpart.c)
Your Flash
(your-flash.c)
add_mtd_partitions()
del_mtd_partitions()
原始設備層 add_mtd_device()
del_mtd_device()
mtd_partition
NOR型Flash晶片驅動與MTD原始設備
所有的NOR型Flash的驅動(探測probe)程式都放在 drivers/mtd/
chips下,一個MTD原始設備可以由一塊或者數塊相同的Flash晶片組成。假設由4塊devicetype為x8的 Flash,每塊大小為8M,interleave為2,起始地址為0x01000000,地址相連,則構成一個MTD原始設備(0x01000000-0x03000000),其中兩塊interleave成一個chip,其地址從0x01000000到0x02000000,另兩塊interleave成一個chip,其地址從0x02000000到0x03000000。
請注意,所有組成一個MTD原始設備的Flash晶片必須是同類型的(無論是interleave還是地址相連),在描述MTD原始設備的數據結構中也只是採用了同一個結構來描述組成它的Flash晶片。
0x03000000
0x02000000
0x01000000
每個MTD原始設備都有一個mtd_info 結構,其中的priv指針指向一個map_info結構,map_info結構中的fldrv_priv指向一個cfi_private結構,cfi_private結構的cfiq指針指向一個cfi_ident結構,
chips指針指向一個flchip結構的
數組。其中mtd_info、 map_info和cfi_private結構用於描述MTD原始設備;因為組成MTD原始設備的NOR型Flash相同,cfi_ident結構用於描述Flash晶片的信息;而flchip結構用於描述每個Flash晶片的專有信息(比如說起始地址)
MTD醫學熱成像檢測
溫變早於病變,通過醫用紅外熱像儀接收人體發出的遠紅外線,得到人體體表詳細精確的溫度信息,由計算機處理後組成人體的紅外線熱像圖,為醫生提供疾病診斷的重要依據。
醫用紅外熱像儀(MTD俗稱:“熱CT”)介紹
溫變早於病變,預警人體健康
1、紅外熱像儀的發展狀況
醫用紅外線熱像儀同CT、核磁共振並列為醫學八大影像診斷儀器之一。我國從1991年開始研究醫用紅外線,至今已經取得了顯著成果,PLUS系列醫用紅外熱像儀的精度,已由1991年的0.1℃發展到目前的0.01℃,空間解析度也已由2MARO提高到0.5-0.8MARO,從模糊的紅外熱圖到目前清晰的紅外線熱像圖,被臨床充分認可。2、紅外熱像儀的基本結構
由攝像頭部、處理器(計算機)和顯示器三大部分組織。
3、紅外熱像儀的診病原理
零度以上的物體都是一個熱能輻射源,不斷向周圍散發紅外輻射。人體也是一樣由於體內各組織的代謝功能不同,體表溫度並不一致,當人體發生某種病變或生理變化時,該處溫度亦會因其血流和代謝變化的異常溫度而偏離正常。紅外熱像儀正是利用這一生理特徵,通過熱像儀鏡頭接收人體發出的8-14UM的遠紅外線,得到人體體表的詳細精確的溫度信息,這些溫度數據由計算機處理後5秒鐘即可掃描成為一幅人體的紅外熱圖並以不同的顏色分布顯示,臨床工作者可以據以診斷疾病。
網路美圖帝縮寫
出現、也是最常用在
美圖秀秀貼吧中,MT是美圖秀秀的簡稱,而美圖帝是網友們對操作美圖秀秀的大神的簡稱,後來漸漸演變成MTD。