用75176芯片,485是采用半双工的,接收的时候不能发送,发送的时候不能接收.485主要采用差分信号传输数据,误码率比较低,传送的距离比较远,可以传1500米,还有个明显的优势是可以用总线方式的,很多设备可以用两线接在一起通讯,很方便集中监控系统,在工控里面用的非常多.
udevinfo -a -p $(udevinfo -q path -n /dev/sdb1)
u盘,读卡器
udevadm info
udevadm test 可以测试如果udev被触发会有什么后果
udevstart后才能生效
* BUS - 匹配总路类型,比如PCI USB等 * KERNEL - 匹配Kernel设备名,比如hda hdb. * DRIVER - 匹配Kernel的驱动程序名 * SUBSYSTEM - 匹配子系统名。 * ID - 匹配总路系统的ID (e.g. PCI bus ID)。 * PLACE - 匹配物理位置 (对USB很有用)。 * SYSFS{filename} - 匹配从sysfs得到的信息,比如label, vendor, USB serial number, SCSI UUID or file system label. * PROGRAM - 调用外部程序。 * RESULT - 匹配最后一次调用外部程序所得到的返回字符串 * NAME - 需要创建的设备或 * SYMLINK -需要创建的符号链接名 * OWNER, GROUP, MODE 设置设备的所有者,组,及模式
%n 内核设备号 例如 sda3 的3 %k 内核设备名 %M 设备的major号 %m 设备的minor号 %b bus id %c %s{filename} sysfs属性的内容 %% 引用%时使用 * 可以匹配任意个字符 ? 可以匹配一个字符 [ ] 从中选一个字符sample:
# do not edit this file, it will be overwritten on update
SUBSYSTEM=="sound", GROUP="audio"
KERNEL=="controlC[0-9]*", NAME="snd/%k"
KERNEL=="hwC[D0-9]*", NAME="snd/%k"
KERNEL=="pcmC[D0-9cp]*", NAME="snd/%k"
KERNEL=="midiC[D0-9]*", NAME="snd/%k"
KERNEL=="timer", NAME="snd/%k"
KERNEL=="seq", NAME="snd/%k"
Ubuntu可以說是越用越開心,尤其是當suspend to ram/disk以及wireless都可以直接動,實在是了不起阿(跟昨天安裝的Fedora Core 5比,真的是好多了)。但我nb上的Ubuntu就是無法自動mount USB drive,或是任何plug-and-play的裝置,一直找不到方法。剛剛終於透過毛寶的幫忙解決了。
大致小小研究一下,或許有錯。
首先要達到auto mount,必須透過pmount這個程式達成;pmount可以看成是mount的wrapper,目的是運用suid的機制(不管是哪個user執行此程式,皆看成是以root執行之)讓普通使用者可以執行mount。而pmount底下則使用pmount-hal,其運用hal(HAL, Hardware abstraction layer,主要是一個user-mode的application,維護device的information,user可以藉由HAL取得已知裝置的資訊或者新裝置的資訊)取得removable device的label或是mount參數等等資訊。
Ubuntu的automount下,剛插進去不久的USB drive馬上就會在桌面上產生一個Icon,直接就mount好了,厲害的是,大概可以透過HAL得知裝置的type,連我把K750i聯接到USB上時,桌上出現的還是MS卡的圖示,真是貼心。
我遇到的問題在於普通使用者無法使用pmount這支程式。問題在於"This program should be run as suid root"。pmount位於/usr/bin,其權限為"-rwsr-xr–"。因此只須把使用者加入plugdev這個group後 (/etc/group檔案中,在plugdev那行最後加上user id就可),就可以使用pmount了。因此Ubuntu才能藉由pmount自動mount裝置。我想其他的distribution也是大同小異吧。
終於這個問題搞定了。說也奇怪,另外一台桌機的Ubuntu Dapper,automount確都沒問題,不知道安裝時哪個環節出了問題…
mkyaffs2image和mkyaffsimage区别。一个可以支持2k页面,一个仅仅512页面。
多种文件系统??
moladas
echo -e "/n"
wifi需要关机才可以
bootargs=root=/dev/mtdblock1
bootargs=root=/dev/mtdblock2
setenv bootargs "root=/dev/mtdblock1"
root@ZTP8001B:/opt# mkyaffs2image 0 cf2 1.img
NO
root@ZTP8001B:/opt# mkyaffsimage cf2 2.img
NO
2112 2048+64
22182336 yaffs2
18443568
不能直接拷贝,不然会reversed
要
第二次mount,后拷贝到另外一个目录。
root@ZTP8001B:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00300000 00020000 "kernel"
mtd1: 02000000 00020000 "rootfs1"
mtd2: 02000000 00020000 "rootfs2"
mtd3: 1bd00000 00020000 "application"
0 - 300000
300000 2000000
2300000 2000000
DRAM: 64 MB
NAND: 512 MiB
DataFlash:AT45DB161
Nb pages: 4096
Page Size: 528
一般pagesize就是erasesize
Size= 2162688 bytes
Logical address: 0xD0000000
Area 0: D0000000 to D00041FF (RO) Bootstrap
Area 1: D0004200 to D00083FF Environment
Area 2: D0008400 to D0041FFF (RO) U-Boot
Area 3: D0042000 to D0251FFF Kernel
Area 4: D0252000 to D020FFFF FS
2k
528 512+16
020
电路图
uboot和kernel分开放的
板子两个问题:直接拔会死
wifi必须断电