linux spiÇý¶¯
linux spiÇý¶¯
Äں˰汾£ºlinux-2.6.29
Ö÷ÒªµÄ¼¸¸ö½á¹¹
platform_device platform_driver s3c24xx_spi spi_master spi_bitbang spi_device spi_driver spidev_data s3c_spi_info
µÚÒ»²½£º×¢²áplatform_device
ÔÚarch/arm/mach-s3c2410/mach-qt2410.c ÖÐ×¢²áplatform_device £¬ÆäÖÐs3c2410_spi_info ×÷Ϊplatform_device.private_data. platform_device.name Ϊ"s3c2410-spi".
ͬʱÔÚmach-qt2410.c ÖÐ×¢²áspi_board_info, ÆäÖÐspi_board_info.bus_num=0, Óës2c2410_spi_info ÖеÄbus_num Ïàͬ, ÒÔºó»áͨ¹ýbus_num ±È¶ÔÀ´Æ¥Åä¡£
µÚ¶þ²½£º×¢²áplatform_driver
ÔÚdriver/spi/spi_s3c24xx.c ÖÐ×¢²áplatform_driver (s3c24xx_spi_driver) £¬Õâ¸öplatform_driver µÄÃû×ÖΪ"s3c2410-spi" £¬ÕâÑùÃû×ÖÓëplatform_device µÄÏàͬ£¬ÔÚ×¢²áµÄʱºò»áÆ¥Åäµ½Ò»Æð¡£²¢µ÷ÓÃs3c24xx_spi_driver.probe º¯Êýs3c24xx_spi_probe ¡£
µÚÈý²½£º×¢²áspi_device
ÔÚ.probe º¯ÊýÖд´½¨s3c24xx_spi £¬¸Ã½á¹¹ÖаüÀ¨ÁËÒ»¸öspi_bitbang, Ò»¸öspi_master £¬
ÅäÖÃÁËһЩ»¥Ïà¹ØÁªµÄÏîÒÔºó( ½«3c2410_spi_info.bus_num ×÷Ϊspi_master.bus_num) £¬¼´É¨Ãè×¢²áµÄspi_board_info Á´±í£¬²éÕÒËùÓÐspi_board_info.bus_num Óëspi_master.bus_num ÏàµÈµÄÏ²¢ÎªÃ¿Ò»Ïî×¢²áspi_device £¬ÆäÖÐspi_device µÄÃû×ÖΪspi_board_info. Modalias ¡£
µÚËIJ½£º×¢²á×Ö·ûÉ豸£¬×¢²áspi_driver
ÔÚdriver/spi/spidev.c ÖУ¬ÏÈ×¢²á ÁËÒÔSPIDEV_MAJOR ΪÖ÷É豸ºÅ£¬spidev_ops ΪÎļþ²Ù×÷¼¯µÄ×Ö·ûÉ豸 ¡£
×¢²áspi_driver . ÔÚdriver/spi/spidev.c ÖУ¬ÆäÖÐspi_driver µÄÃû×ÖΪ”spidev” £¬ÕâÑùÓë¸Õ²Å×¢²áµÄspi_device ÏàÆ¥Å䣬ÔÚspi_driver.probe ²¢ÎªÃ¿¸öÆ¥ÅäµÄspi_device ´´½¨ÁËÒ»¸öspidev_data £¬²¢ÔÚsys ϵͳÖÐ×¢²áÒ»¸ö´øÓÐÒÔSPIDEV_MAJOR ΪÖ÷É豸ºÅ£¬ÒÔ£°¿ªÊ¼µÄµÝÔöµÄÊý×ÖΪ¸±É豸ºÅµÄÉ豸µã£¬ÕâÑùÈç¹ûÓÐudev ÔËÐеϰ»áÔÚ/dev ÏÂÃæ½Úµã¡£
ºÃÁË£¬ËùÓеŤ×÷×¼±¸¾ÍÐ÷ÁË£¬Óû§¿ÉÒÔͨ¹ý·ÃÎÊ/dev/ ϵĽڵãÀ´Ê¹ÓÃÕâ¸öÇý¶¯ÁË¡£
Ïà¹ØÎĵµ£º
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
Linux 2.6 ×Ö·ûÉ豸Çý¶¯³ÌÐò
¡ð¡¢ËµÃ÷
±Ê¼ÇÊÊÓÃÓÚLinuxµÄ2.6.10ÒÔºóµÄÄںˡ£
±Ê¼ÇÒÔLinux
Device
Driver3ÌṩµÄscull³ÌÐò(scullĿ¼ÖеÄmain.cºÍscull.h)Ϊ¼Ç¼Ö÷Ïߣ¬²¢ÒÔ¸ÃÇý¶¯³ÌÐòÖеĸ÷ÖÖϵͳµ÷Óúͺ¯Êýµ÷ÓÃÁ÷³ÌΪ¼Ç
¼˳Ðò¡£±ÈÈ磬module_init( )ºÍmodule_exit(
)ΪÏà¶ÔÓ¦µÄÒ»¶Ôϵͳµ÷Óã¬Ò»°ãÊé¼®Öж¼»á·ÅÔÚÒ ......
¡¡¡¡½ÓÏÂÀ´ÈýÐÐÉèÖÃÈýÖÖ¹¦ÄÜ£¬treeview.set_search_column(0)£¬µ±ÔÚ½çÃæÖа´“Control+F”ʱ¿ÉÒÔËÑË÷µÚ0ÁÐÖеÄÄÚÈÝ£¬tvcolumn.set_sort_column_id(0)£¬µ±µã»÷´ËÁбêÌâµÄʱºòËùÓеÄÐа´´óС˳ÐòÖØÐÂÅÅÁС£²ÎÊý0ÊÇ
ÁÐÔÚModelÀïµÄÐòºÅ¡£½ÓÏÂÀ´treeview.set_reorderable·½·¨Ê¹µÃ¿ÉÒÔÓÃÊó±êÍ϶¯ÐнøÐÐÖØÐÂÅÅÁУ¬±ÈÈç£ ......
3) Á÷³Ì¿ØÖÆ
1.if
"if" ±í´ïʽ Èç¹ûÌõ¼þÎªÕæÔòÖ´ÐÐthenºóÃæµÄ²¿·Ö£º
if ....; then
....
elif ....; then
....
else
....
fi
´ó¶àÊýÇé¿öÏ£¬¿ÉÒÔʹÓòâÊÔÃüÁîÀ´¶ÔÌõ¼þ½øÐвâÊÔ¡£±ÈÈç¿ÉÒԱȽÏ×Ö·û´®¡¢ÅжÏÎļþÊÇ·ñ´æÔÚ¼°ÊÇ·ñ¿É¶ÁµÈµÈ…
ͨ³£ÓÃ" [ ] "À´±íʾÌõ¼þ²âÊÔ¡£×¢ÒâÕâÀïµÄ¿Õ¸ñºÜÖØÒª¡£ÒªÈ·±£· ......
linuxĿ¼¼Ü¹¹
/ ¸ùĿ¼
/bin ³£ÓõÄÃüÁî binary file µÄÄ¿錄
/boot ´æ·ÅϵͳÆô¶¯Ê±±ØÐë¶ÁÈ¡µÄµµ°¸£¬°üÀ¨ºËÐÄ (kernel) ÔÚÄÚ
/boot/grub/menu.lst GRUBÉèÖÃ
......