من دستور زیر که تو ویکی قسمت کامپایل کرنل لینوکس گفتین میزنم ولی خطا میده کسی میتونه بگه مشکل کارم کجاست؟
[PHP]abcd@abcd-N53SN:/usr/bin$ sudo for i in arm-linux-gnueabi*-4.6; do ln -s $i ${i%%-4.6}; done
bash: syntax error near unexpected token `do'
abcd@abcd-N53SN:/usr/bin$ sudo for i in arm-linux-gnueabi*-4.6: do ln -s $i ${i%%-4.6}: done
[sudo] password for abcd:
sudo: for: command not found
[/PHP]
و همینطور تو فولدر مورد نظر من فایل با عدد ۴.۵ و ۴.۷ هم میبینم لازم هست دستورات واسه اون عددها هم یک دور اجرا بشه؟
ویرایش توسط beroz : 23-05-2013 در ساعت 16:49
sudo را قبل از ln بزار، امتحان کن، احتمالا جواب بده.sudo for i in arm-linux-gnueabi*-4.6: do ln -s $i ${i%%-4.6}: done
اگر راه مطمئن می خواهی، دستور را با کاربر root انجام بده.کد:for i in arm-linux-gnueabi*-4.6: do sudo ln -s $i ${i%%-4.6}: done
فقط برای نسخه ای که نصب کردید باید انجام بدید. مثلا اگر gcc-4.6-arm-linux-gnueabihf را نصب کردید فقط توی دستور 4.6 استفاده کنید.لازم هست این کد واسه ۴.۵ و ۴.۷ هم اجرا بشه؟
من همه مراحل رو رفتم حالا که lsmod رو میزنم ماژول هارو نمیبینم ولی وقتی modprobe ov7670 و modprobe sun4i_csi1 رو میزنم خطا دریافت میکنم که این ماژولها صاحبش کرنل هست این یعنی همه چی تموم شد? و الان با وصل دوربین میتونم مثل یک وبکم معمولی تصویر دریافت کنم؟ یا کار دیگهای هم لازمه بکنم؟
[PHP]root@linaro-alip:~# lsmod
Module Size Used by
8192cu 586476 0
mali_drm 2560 0
drm 177116 1 mali_drm
mali 106955 0
ump 49616 1 mali
sw_ahci_platform 3613 0
root@linaro-alip:~# modprobe ov7670
<3>Error: Driver 'ov7670' is already registered, aborting...
[ 137.200000] Error: Driver 'ov7670' is already registered, aborting...
FATAL: Error inserting ov7670 (/lib/modules/3.0.76/kernel/drivers/media/video/sun4i_csi/device/ov7670.ko): Device or resource busy
root@linaro-alip:~# modprobe sun4i_csi1
<3>videobuf_core: exports duplicate symbol __videobuf_mmap_setup (owned by kernel)
[ 156.560000] videobuf_core: exports duplicate symbol __videobuf_mmap_setup (owned by kernel)
WARNING: Error inserting videobuf_dma_contig (/lib/modules/3.0.76/kernel/drivers/media/video/videobuf-dma-contig.ko): Invalid module format
FATAL: Error inserting sun4i_csi1 (/lib/modules/3.0.76/kernel/drivers/media/video/sun4i_csi/csi1/sun4i_csi1.ko): Invalid module format
[/PHP]
دستور lsmod فقط ماژول ها را نشون میده،من همه مراحل رو رفتم حالا که lsmod رو میزنم ماژول هارو نمیبینم ولی وقتی modprobe ov7670 و modprobe sun4i_csi1 رو میزنم خطا دریافت میکنم که این ماژولها صاحبش کرنل هست این یعنی همه چی تموم شد? و الان با وصل دوربین میتونم مثل یک وبکم معمولی تصویر دریافت کنم؟ یا کار دیگهای هم لازمه بکنم؟
به خاطر همین درایورهایی که به صورت built-in باشه را نشون نمیده.
خوب اگه همه درایورهای لازم برای دوربین را built-in کرده باشی می تونی مثلا با دستور زیر kernel message را ببینی و مطمئن بشی درست کار می کنند
یاکد:dmesg | grep ov7670
خوب اگه همه چی درست باشه می تونی با این برنامه دوربین را چک کنی و با هاش کار کنیکد:dmesg | grep csi
و یا برنامه vgrabbj با دستور زیرکد:fswebcam
من هنوز فرصت نکردم دوربین را وصل کنم و تست ازش بگیریم.کد:vgrabbj -l 500 -i svga -o jpg -d /dev/video1 -D 7 -f teste.jpg
شما با این پین هدرهای 2 میلی متری چگونه می خواهید دوربین را تست کنید؟ PCB زدید؟
این ماژول ov7670 تو سایت که پین هدر داره خوب به سختی میشه با جامپر وایر دو تا رو به هم وصل کرد.شما با این پین هدرهای 2 میلی متری چگونه می خواهید دوربین را تست کنید؟ PCB زدید؟
البته این جامپر وایرها برای پین هدر دو میلیمتری دردسر سازند.
من از اون دستورهایی که دادین خروجیهای زیر رو گرفتم از دستور اول اصلا خروجی نگرفتم
من فردا جمعه با پروتل PCB رو طراحی میکنم تا شنبه PCB رو میزنم و تست میکنم اگه جواب بگیرم که خیلی خوب میشه رو این ov7670 خیلی وقت گذاشتم
با جامپر وایر نشد بزرگ بود واسه پایهای کوبی
[PHP]root@linaro-alip:~# dmesg | grep ov7670
root@linaro-alip:~# dmesg | grep csi
[ 2.610000] [CSI]csi_init
[ 2.620000] [CSI_ERR]csi_used=0,csi driver is not enabled!
[ 7.850000] scsi0 : sw_ahci_platform
[/PHP]
نتیجه کارم و پی سی بی رو حتما اینجا میزارم
اینطور که پیداست ما مراحل رو درست رفتیم دیگه فقط تست پایانی میمونه
من کدهای درایور ov7670 که به زبان سی در سورس کرنل بود رو بررسی کردم و چیز جالبی که بود همه مراحل ارتباط با دوربین از طریق twi رو درایور انجام میده و در صورتی که ماژول رو به درستی لود کرده باشیم به راحتی مثل وبکم باید جواب بده خوشبختانه با این برد دیگه لازم نیست کسی درگیر دیتاشیت وحشتناک ov7670 بشه
این رو برای چی ساخته؟cubie super computer
خیلی خوبه مهندس.نتیجه کارم و پی سی بی رو حتما اینجا میزارم
اینطور که پیداست ما مراحل رو درست رفتیم دیگه فقط تست پایانی میمونه
من کدهای درایور ov7670 که به زبان سی در سورس کرنل بود رو بررسی کردم و چیز جالبی که بود همه مراحل ارتباط با دوربین از طریق twi رو درایور انجام میده و در صورتی که ماژول رو به درستی لود کرده باشیم به راحتی مثل وبکم باید جواب بده خوشبختانه با این برد دیگه لازم نیست کسی درگیر دیتاشیت وحشتناک ov7670 بشه
فقط پایه ها رو یادتون نره تو script.bin فعال کنین.
توی منبع خبر چیزی نگوفته بود ولی تصاویر جالبی دارهcubie super computer
این رو برای چی ساخته؟
Photos - Google+
فایل پروتلPCB اتصال پایهای کوبی به ov7670 رو ضمیمه کردم
PCB Cubie to OV7670ما به دستمون رسید دیگه فقط انجام تنظیمات script.fex مانده و بعد دیگه تست نهایی ov7670
آقا هرکی نقطه نظری در مورد اینکه چی هارو باید غیر فعال کنم و چی هارو فعال کنم تو فایل script.fex داره بده تا این بخش کار هم بدون مشکل انجام بشه و دیگه دوربین راه بیفته
من بر اساس توضیحات لینک زیر دارم این فایل رو تغییر میدم
Fex Guide - linux-sunxi.org
خیلی خوبه.امیدوارم که بدون مشکل کار کنه.
برای script فکر کنم
[csi1_para]
csi_used = 1
رو فعال کنید فعلا کافی باشه حالا تنظیمات دقیق ترش باشه برای بعد.
اون دو برنامه که مهندس چنگانی گفتند رو تست کنید ببینید تصویر دارید.
موفق باشید.
فکر کنم به این راحتیها که گفتین نباشه چون تست کردم جواب نداد به توضیحاتی که جلوی هر عبارت زده دقت کنید
من حتی باید اسم ماژولی که دارم استفاده میکنم هم ذکر کنم
[PHP]csi_mname = 'ov7670'[/PHP]
[HTML]
csi gpio configuration
csi_used: 0 to enable; 1 to disablecsi_mode: 0 to sample one csi to one buffer; 1 to sample two csi to one buffercsi_dev_qty: Quantity of devices linked to the csi interfacecsi_twi_id: TWI controller to usecsi_twi_id_b: TWI controller to use for second devicecsi_mname: Module name to match the csi device; currently known to work:csi_mname_b: Module name to match the second csi device; currently known to work: ov7670gc0308gt2005hi704hi253 csi_twi_addr: TWI address for the used cameracsi_twi_addr_b: TWI address for the used camera for second devicecsi_if: interface:csi_if_b: interface for second device: if csi interface 0 hv_8bit 1 hv_16bit 2 hv_24bit 3 bt656 1ch 4 bt656 2ch 5 bt656 4ch csi_pck: p clock GPIO configurationcsi_ck: clock GPIO configurationcsi_hsync: H-sync GPIO configurationcsi_vsync: V-sync GPIO configurationcsi_hflip: Horizontal frame flipcsi_hflip_b: Horizontal frame flip for second devicecsi_vflip: Vertical frame flipcsi_vflip_b: Vertical frame flip for second devicecsi_d0: data bit 0 GPIO configurationcsi_d1: data bit 1 GPIO configurationcsi_d2: data bit 2 GPIO configurationcsi_d3: data bit 3 GPIO configurationcsi_d4: data bit 4 GPIO configurationcsi_d5: data bit 5 GPIO configurationcsi_d6: data bit 6 GPIO configurationcsi_d7: data bit 7 GPIO configurationcsi_d8: data bit 8 GPIO configurationcsi_d9: data bit 9 GPIO configurationcsi_d10: data bit 10 GPIO configurationcsi_d11: data bit 11 GPIO configurationcsi_d12: data bit 12 GPIO configurationcsi_d13: data bit 13 GPIO configurationcsi_d14: data bit 14 GPIO configurationcsi_d15: data bit 15 GPIO configurationcsi_reset: Camera reset; the default value, high or low ,depends on the modulecsi_power_en: Power enable GPIO configurationcsi_stby: Camera standby GPIO configuration; the default value, high or low ,depends on the modulecsi_stby_b: Camera standby GPIO configuration for second device; the default value, high or low ,depends on the modulecsi_stby_mode: 0 to not shutdown power at standby; 1 shutdown power at standbycsi_flash: Camera Flash GPIO configurationcsi_flash_b: Camera Flash GPIO configuration for second devicecsi_flash_pol: Flash polarity of flash light; 0 for active low; 1 for active highcsi_flash_pol_b: Flash polarity of flash light for second device; 0 for active low; 1 for active highcsi_af_en: Autofocus enable GPIO configurationcsi_iovdd: Camera module IO power, PMU power supplycsi_iovdd_b: Camera module IO power, PMU power supply for second devicecsi_avdd: Camera analog power, PMU power supplycsi_avdd_b: Camera analog power, PMU power supply for second devicecsi_dvdd: Camera digital power, PMU power supplycsi_dvdd_b: Camera digital power, PMU power supply for second devicepmu_ldo3: "axp20_pll" or leave empty empty when not using any PMU power supplypmu_ldo4: "axp20_hdmi" or empty when not using any PMU power supply
[/HTML]
ویرایش توسط beroz : 29-05-2013 در ساعت 02:14
من الان ls /dev/video* رو میزنم ویدئو جدید رو میبینم ولی وقتی fswebcam میزنم گیر میکنه و جلو نمیره
فایل script.fex ام رو ضمیمه کردم
این یعنی اینکه الان دوربین رو شناخت ولی یجای کار یه مشکلی هست، کسی نظری نداره؟
[PHP]linaro@linaro-alip:~$ fswebcam --device /dev/video1
--- Opening /dev/video1...
Trying source module v4l2...
/dev/video1 opened.
No input was specified, using the first.
Adjusting resolution from 384x288 to 352x288.
[/PHP]
ویرایش توسط beroz : 29-05-2013 در ساعت 03:23
این دو مورد بر چه اساسی مقدار دهی شدن؟
csi_twi_addr = 0x42
csi_twi_addr_b = 0x78
ممنون