ዝርዝር ሁኔታ:
- ደረጃ 1 የ PWM ሞዱል-ምንጭ ፋይል መገንባት
- ደረጃ 2 የ PWM ሞዱል መገንባት- የቪቫዶ ማዋቀር
- ደረጃ 3 የ PWM ሞዱል መገንባት- የፕሮጀክት ፋይል ይፍጠሩ
- ደረጃ 4- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (I)
- ደረጃ 5- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (II) አግድ
- ደረጃ 6- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ማቀናበር (III)
- ደረጃ 7- የ PWM ሞዱል መገንባት- ዲዛይን አግድ እና የግዴታ ፋይል ቅንብር (IV)
- ደረጃ 8- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (ቪ) አግድ
- ደረጃ 9 የ PWM ሞዱል- የሃርድዌር ጭነት
- ደረጃ 10 የ PWM ሞዱል መገንባት- Bitstream ን ይፍጠሩ እና ኤስዲኬን ያስጀምሩ
- ደረጃ 11 የ PWM ሞዱል መገንባት- በ Xilinx SDK ውስጥ አዲስ ትግበራ ይፍጠሩ
- ደረጃ 12 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (I)
- ደረጃ 13 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (II)
- ደረጃ 14 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (III)
- ደረጃ 15 የ PWM ሞዱል መገንባት- የ PWM ተግባርን ጠቅለል (I)
- ደረጃ 16 የ PWM ሞዱል መገንባት- የ PWM ተግባርን (II) ጠቅለል ያድርጉ
- ደረጃ 17 የ PWM ሞዱል መገንባት- የ PWM ተግባርን ጠቅለል (III)
- ደረጃ 18 የ PWM ሞዱል መገንባት- እንዲሠራ ያድርጉት
- ደረጃ 19 በ Digilent ZYBO ላይ በቪዲዮ ማቀናበር ከ OV7670 ጋር በዥረት መልቀቅ
- ደረጃ 20: የተሟላ የማገጃ ሥዕል
- ደረጃ 21: OV7670 ን ከ ZYBO ጋር ያገናኙ
- ደረጃ 22 አግድ ንድፍ ይፍጠሩ
- ደረጃ 23 ለ OV7670 ካሜራ ቁጥጥር እና ቀረፃ የ VHDL ፋይሎችን ያክሉ
- ደረጃ 24: የእገዳዎች ፋይል ያክሉ
- ደረጃ 25 ለኤችኤልኤስ አይፒ የአይፒ ሬፖን ያክሉ
- ደረጃ 26 ሞጁሎችን እና አይፒን ያክሉ
- ደረጃ 27 የአይፒ ውቅረት ቅንብሮች
- ደረጃ 28: PS IP Block ን ያክሉ እና ያዋቅሩ
- ደረጃ 29 ክፍል 1. ለ Servo Motors የ PWM ሞዱል መገንባት
- ደረጃ 30: የቪዲዮ ግቤት የጎን ግንኙነቶች (aclk የደመቀ)
- ደረጃ 31 ከ OV7670 ጋር ግንኙነቶች
- ደረጃ 32 - በቪዲዮ ውጭ ጎን ላይ ያሉ ግንኙነቶች
- ደረጃ 33 አግድ እና የግንኙነት አውቶማቲክን ያሂዱ
- ደረጃ 34 የኤችዲኤል መጠቅለያ ይፍጠሩ
- ደረጃ 35 Bitstream ን ይፍጠሩ ፣ ሃርድዌርን ወደ ኤስዲኬ ይላኩ ፣ ኤስዲኬን ከቪቫዶ ያስጀምሩ
- ደረጃ 36 ኤስዲኬ (FreeRTOS የለም)
- ደረጃ 37 የ FreeRTOS ትግበራ
- ደረጃ 38 የአጠቃቀም መመሪያዎች
- ደረጃ 39 ማጣቀሻዎች እና አገናኞች
ቪዲዮ: ZYBO OV7670 ካሜራ ከፓን/ዘንበል መቆጣጠሪያ ጋር - 39 ደረጃዎች (ከስዕሎች ጋር)
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:33
ባለ 2-ዘንግ servo PWM መቆጣጠሪያን በመፍጠር ላይ ለዝርዝር አንድ ደረጃን ይጀምሩ።
ለሙሉ ፕሮጀክቱ ግዙፍ የማገጃ ሥዕላዊ መግለጫ (ደረጃ 19) ይጀምሩ።
እኛ የተጠቀምንበት የካሜራ + ፓን/ዘንበል ማዋቀር
ከ Digilent የመጣው PmodCON3 አገልጋዮቹን ለማገናኘት ያገለግል ነበር።
ደረጃ 1 የ PWM ሞዱል-ምንጭ ፋይል መገንባት
ደረጃ 2 የ PWM ሞዱል መገንባት- የቪቫዶ ማዋቀር
በመጀመሪያ ፣ የቪቫዶ ዲዛይን Suite ን ከ Xilinx ድር ጣቢያ ያውርዱ። ቪቫዶ የሶፍትዌር ልማት ኪት (ኤስዲኬ) ን ጨምሮ ሁሉንም የንድፍ ስብስቡን ይጫኑ። ይህ ፕሮጀክት የ 2017.2 ስሪት ይጠቀማል።
ይህ በእንዲህ እንዳለ ዲጂሌንት አዴት 2 እንደ ዚቦ ቦርድ ነጂ ሆኖ መጫን አለበት።
ደረጃ 3 የ PWM ሞዱል መገንባት- የፕሮጀክት ፋይል ይፍጠሩ
የፕሮጀክት ፋይል ከመፍጠርዎ በፊት እዚህ እንደ አጋዥ ሥልጠና የዚቦ ፋይልን በትክክል መጫኑን ማረጋገጥ አለብዎት-
ቪቫዶ ስሪት 2015.1 እና በኋላ የቦርድ ፋይል ጭነት
ቪቫዶ 2017.2 ን ይክፈቱ። በፈጣን ጅምር ላይ ፕሮጀክት ፍጠር ላይ ጠቅ ያድርጉ -> ቀጣይ -> የፕሮጀክት ስም (የፕሮጀክትዎን ስም እዚህ ስም ይሰይሙ) -> የፕሮጀክት ዓይነት። በፕሮጀክት ዓይነት ላይ የ RTL ፕሮጀክት ይምረጡ እና “በዚህ ጊዜ ምንጮችን አይግለጹ” ላይ ምልክት ያድርጉ። በመቀጠል ፣ ለነባሪ ክፍሉ እንደ ማሳያ ስም “ቦርዶች” እና “ዚቦ” ን ይምረጡ። በመቀጠል ፕሮጀክቱን ለመጀመር ጨርስን ጠቅ ያድርጉ።
ደረጃ 4- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (I)
በ Flow Navigator ላይ “” ብሎክ ዲዛይን ፍጠር”ላይ ጠቅ ያድርጉ ፣ ከዚያ እሺን ይጫኑ። አስፈላጊ አይፒዎችን ለማከል የ “+” ምልክቱን ጠቅ ያድርጉ። አክል ፦
- አንድ የ ZYNQ7 ማቀናበሪያ ስርዓት ሁለት AXI ሰዓት ቆጣሪ
- ሁለት AXI ሰዓት ቆጣሪ
ደረጃ 5- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (II) አግድ
አይፒዎችን ካከሉ በኋላ አግድ አውቶማቲክ እና የግንኙነት አውቶማቲክን ያሂዱ። አውቶማቲክ አንዴ ከተጠናቀቀ ፣ “axi_timer_0” ብሎክ ላይ ፣ pwm0 -> ውጫዊ አድርግ የሚለውን በቀኝ ጠቅ ያድርጉ። Pwm0 የውጭውን ፒን እንደ pwm_Xaxis ብለው ይሰይሙ። እንዲሁም ከላይ ያለውን ሂደት በ “axi_timer_1” ብሎክ ላይ ይድገሙት እና pwm0 የውጭውን ፒን እንደ pwm_Zaxis ብለው ይሰይሙ።
ደረጃ 6- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ማቀናበር (III)
በቪቫዶ ውስጥ የማገጃ ዲዛይን በጨረስን ቁጥር የኤችዲኤል መጠቅለያ መፍጠር እንደሚያስፈልገን ልብ ይበሉ። ለእያንዳንዱ ፕሮጀክት የከፍተኛ ደረጃ ሞጁል ስለሚሆን።
ደረጃ 7- የ PWM ሞዱል መገንባት- ዲዛይን አግድ እና የግዴታ ፋይል ቅንብር (IV)
አሁን ፣ ከማገጃ ዲያግራማችን ጋር የተገናኙ ፒኖችን ለመመደብ የእኛን የግዴታ ፋይል ማዘጋጀት አለብን። የማገጃ ዲዛይን መስኮቱን ፣ በምንጮች ትር ላይ ፣ “ምንጮችን አክል”-> ገደቦችን ያክሉ ወይም ይፍጠሩ-> Zybo-Master.xdc ን እንደ እገዳ ፋይሎቻችን ያክሉ።
ደረጃ 8- የ PWM ሞዱል መገንባት- የዲዛይን እና የማገጃ ፋይል ቅንብር (ቪ) አግድ
የግዳጅ ፋይልን Zybo-Master.xdc ን ከግዳጅ አቃፊዎች ይክፈቱ ፣ እንደ የውጤት ምልክቶች ልንገልጽላቸው የምንፈልጋቸውን ወደቦች ያቃጥሉ እና XXXX በብሎግ ዲያግራም ውስጥ የተሰየመውን የውጭ ፒን ያመለክታል። የግዴታ ፋይል ቅንብር በስዕሉ ላይ ይታያል።
ደረጃ 9 የ PWM ሞዱል- የሃርድዌር ጭነት
የ servo ሞተሮችን ከ Pmod CON3 ጋር ያገናኙ። TowerPro SG90 በዚህ ፕሮጀክት ውስጥ የተጠቀምንበት የ servo ሞተር ሞዴል ነው። ለ servo ሞተር ሽቦዎች ፣ ብርቱካናማው ሽቦ በ Pmod CON3 ውስጥ ከ SIG ፒን ጋር የተገናኘውን የ PWM ምልክት ይወክላል። ቀይ ሽቦ Vcc በ Pmod CON3 ውስጥ ከ VS ፒን ጋር የተገናኘ የኃይል ሽቦ ነው። በመጨረሻም ፣ ቡናማ ሽቦው Gnd ከ GND ፒን ጋር የተገናኘ የመሬት ሽቦ ነው። በመቀጠል ዚምቦ ቦርድ ውስጥ ባለው የጄዲ ወደብ የላይኛው ረድፍ ላይ Pmod CON3 ን ያስገቡ።
ደረጃ 10 የ PWM ሞዱል መገንባት- Bitstream ን ይፍጠሩ እና ኤስዲኬን ያስጀምሩ
1. በፕሮጀክት ዳሳሽ አሳሽ ትር ውስጥ BitStream ን ይፍጠሩ።
2. ሃርድዌርን ወደ ውጭ ይላኩ-ፋይል> ወደ ውጭ ላክ> ወደ ውጭ ላክ ሃርድዌር-> “bitstream ያካትቱ” ላይ ምልክት ያድርጉ-> እሺ 3. ኤስዲኬን ያስጀምሩ-ፋይል-> ኤስዲኬን ያስጀምሩ።
ደረጃ 11 የ PWM ሞዱል መገንባት- በ Xilinx SDK ውስጥ አዲስ ትግበራ ይፍጠሩ
አዲስ መተግበሪያ ይፍጠሩ ፦
ፋይል> አዲስ> የትግበራ ፕሮጀክት -> የፕሮጀክትዎን ስም ያስገቡ -> ጨርስ
በፕሮጀክት ኤክስፕሎረር ስር ሶስት አቃፊዎች ሊኖሩ ይገባል።
በዚህ ሁኔታ ፣ “ዲዛይን_1_wrapper_hw_platform_0” ቀደም ሲል በቪቫዶ ወደ ውጭ የተላከ አቃፊ ነው። Axis_2_PWM_SDK_bsp የቦርድ ድጋፍ ጥቅል አቃፊ ነው። እና Axis_2_PWM_SDK በ SDK ውስጥ የእኛ ዋና የፕሮጀክት አቃፊ ነው። “Helloworld.c” ፋይል በ “src” አቃፊ ስር “helloworld.c” ዋናው ፋይል በሆነበት “axis_2_PWM_SDK” አቃፊ ስር ማየት ይችላሉ።
ደረጃ 12 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (I)
በፕሮጀክት ኤክስፕሎረር ስር አንዳንድ ፋይሎችን እንፈትሽ። በመጀመሪያ በአቃፊው “ንድፍ_1_wrapper_hw_platform_0” ውስጥ “system.hdf” ን ይክፈቱ። ይህ ፋይል የአቀራረብ ካርታውን ለአቀነባባሪው ps7_cortex9 እና በእኛ ዲዛይን ውስጥ ያሉትን የአይፒ ብሎኮች ያሳያል።
ደረጃ 13 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (II)
ከዚያ በ “Axis_2_PWM_SDK_bsp” አቃፊ ስር “ያካትቱ” እና “libsrc” ፋይልን ያረጋግጡ። የቤተ መፃህፍት ፋይሎች እዚህ “ያለመጫወት” ምዝገባዎች ከሃርድዌር መለዋወጫዎች ጋር እንድንገናኝ ያስችለናል።
ደረጃ 14 የ PWM ሞዱል መገንባት- የፕሮጀክቱ አሳሽ አጠቃላይ እይታ (III)
በቢኤስፒኤስ ሰነድ በኩል ፣ xtmrctr.h ከኤክሲአይ ሰዓት ቆጣሪ ጋር በተዛመደ የ Xilinx Timer መቆጣጠሪያ ቤተ -መጽሐፍት ሆኖ ተገኝቷል። በተለምዶ እኛ የተፈለገውን የ PWM ተግባር እዚህ ማግኘት እንችላለን። ሆኖም ፣ “tmrctr_v4_3” የሚለውን ሰነድ ካነበቡ ፣ አሽከርካሪው በአሁኑ ጊዜ የመሣሪያውን የ PWM አሠራር እንደማይደግፍ ያሳያል። በ PWM ተግባር ጉድለት ምክንያት በ xtmrctr.h እና AXI Timer v2.0 LogiCORE IP የምርት መመሪያ አማካኝነት የ PWM ተግባራችንን መጠቅለል አለብን።
ደረጃ 15 የ PWM ሞዱል መገንባት- የ PWM ተግባርን ጠቅለል (I)
ወደ ዋናው ፋይል “helloworld.c” ይመለሱ ፣ የሚከተሉትን የራስጌ ፋይሎች ያካትቱ
ደረጃ 16 የ PWM ሞዱል መገንባት- የ PWM ተግባርን (II) ጠቅለል ያድርጉ
በ “xparameters.h” በኩል የሁለት AXI TImer መሰረታዊ አድራሻዎችን ይግለጹ።
ደረጃ 17 የ PWM ሞዱል መገንባት- የ PWM ተግባርን ጠቅለል (III)
የሚፈለገውን የ PWM ተግባር ይገንቡ።
Duty_val: የዲግሪ እሴቱን ወደ ግዴታ ዑደት ይለውጣል። የሰዓት ጊዜ እንዲሁ መመደብ አለበት።
PWM_START የ PWM መመዝገቢያ አድራሻውን ይመድቡ እና PWM ማመንጨት ይጀምሩ።
PWM_STOP - የ PWM መመዝገቢያ አድራሻ ይመድቡ እና PWM ማመንጨት ያቁሙ።
ቀሪው የማሳያ ኮድ በ “helloworld.c” ውስጥ በ “Axis_2_PWM_SDK” ስር ይታያል
ደረጃ 18 የ PWM ሞዱል መገንባት- እንዲሠራ ያድርጉት
1. በኤስዲኬ በኩል FPGA ን ያቅዱ
- የ Zybo ሰሌዳውን በዩኤስቢ ወደብ ወደ ፒሲ ያገናኙ።
- Xilinx Tools -> ፕሮግራም FPGA
2. ፕሮግራሙን ያሂዱ
በ “አሂድ” አዶ ላይ ጠቅ ያድርጉ እና ምናሌውን ይጣሉ -> እንደ አሂድ -> በሃርድዌር ላይ ያስጀምሩ
3. ኤስዲኬ ተርሚናል
- የኤስዲኬ ተርሚናሉን ይክፈቱ -> ከ Serial Port ጋር ይገናኙ -> እሺ
- ፕሮግራሙን ያሂዱ። የማሳያ ኮዱ በተሳካ ሁኔታ ከሄደ ፣ “ተነሳሽነት ተከናውኗል!” የሚለውን ማየት አለብዎት። በኤስዲኬ ተርሚናል ላይ።
ደረጃ 19 በ Digilent ZYBO ላይ በቪዲዮ ማቀናበር ከ OV7670 ጋር በዥረት መልቀቅ
የተሟላ የማኅደር ፋይል ተያይ attachedል።
ደረጃ 20: የተሟላ የማገጃ ሥዕል
ይህ በፕሮጀክቱ ውስጥ የሁሉንም ግንኙነቶች እና የአይፒ ብሎኮችን የተሟላ ንድፍ ያሳያል
ደረጃ 21: OV7670 ን ከ ZYBO ጋር ያገናኙ
የ ov7670 ሞጁሉን ከ ZYBO Pmods ጋር ለማገናኘት ግንኙነት ይፍጠሩ
የውሂብ Pmod Pmod D ነው
Pmod ን መቆጣጠር Pmod C ነው
በተጨማሪም ፣ በዚህ አጋዥ ስልጠና የመጀመሪያ አጋማሽ ላይ እንደተገለጸው PmodCON3 እና servos ን ያገናኙ
ደረጃ 22 አግድ ንድፍ ይፍጠሩ
በወራጅ አሳሽ ውስጥ “አግድ ንድፍ ፍጠር” ላይ ጠቅ ያድርጉ ፣ ከዚያ እሺን ይጫኑ።
ደረጃ 23 ለ OV7670 ካሜራ ቁጥጥር እና ቀረፃ የ VHDL ፋይሎችን ያክሉ
ከዚህ ደረጃ ጋር የተያያዙ የ VHDL ፋይሎችን በፕሮጀክቱ ላይ ያክሉ
ደረጃ 24: የእገዳዎች ፋይል ያክሉ
የተያያዘውን የእገዳዎች ፋይል ወደ ፕሮጀክትዎ ያክሉ።
ደረጃ 25 ለኤችኤልኤስ አይፒ የአይፒ ሬፖን ያክሉ
የተያያዘውን የዚፕ ፋይል ይውሰዱ እና በተመሳሳይ “HLS_repo” በተሰኘው አዲስ ማውጫ (አቃፊ) ውስጥ ወደተሰየመው አዲስ አቃፊ ይንቀሉት።
ወደ አይፒ ካታሎግ በመሄድ በፕሮጀክትዎ ላይ የአይፒ ማከማቻን ያክሉ እና “ማከማቻ አክል…” ን በመምረጥ በቀኝ ጠቅ ያድርጉ።
ወደ የእርስዎ «HLS_repo» ማውጫ ይሂዱ እና ይምረጡት።
እንደ አማራጭ የ HLS ቪዲዮ ማቀነባበሪያ ብሎክን ለራስዎ ይፍጠሩ!
ደረጃ 26 ሞጁሎችን እና አይፒን ያክሉ
ዳራውን በቀኝ ጠቅ በማድረግ እና “ሞዱል አክል…” ን በመምረጥ ov7670_axi_stream_capture ፣ debounce እና ov7670_controller modules ን ወደ ብሎክ ዲያግራም ያክሉ።
በተመሳሳይ ፣ አይፒዎችን ያክሉ
- HLS_Video_Track
- የቪዲዮ ፍሬም ቋት ይፃፉ
- የቪዲዮ ፍሬም ቋት አንብብ
- የቪዲዮ የጊዜ መቆጣጠሪያ
- ቪዲዮ ወደ ውጭ ለመውጣት AXI4- ዥረት
- 3 ከ "ቁራጭ"
- የማያቋርጥ
- 2 የ AXI ሰዓት ቆጣሪ
ደረጃ 27 የአይፒ ውቅረት ቅንብሮች
በስዕሎች ላይ እንደሚታየው
ደረጃ 28: PS IP Block ን ያክሉ እና ያዋቅሩ
ወደ የማገጃ ሥዕሉ የ ZYNQ7 ማቀነባበሪያ ስርዓትን ያክሉ
አወቃቀሩን ያርትዑ:
-
የ PS-PL ውቅር
-
ኤች.ፒ
- ኤስ HP 0 ን ያንቁ
- ኤስ HP 1 ን ያንቁ
-
-
የሰዓት አመክንዮ
-
PL የጨርቅ ሰዓቶች
- FCLK_0 በ 100 ሜኸ
- FCLK_1 በ 25 ሜኸ (የውጤት ሰዓት)
- FLCK_2 በ 35 ሜኸ (<= 50 ሜኸ) (ካሜራ ሰዓት)
-
ደረጃ 29 ክፍል 1. ለ Servo Motors የ PWM ሞዱል መገንባት
Axi_timer_0 pwm0 ን ወደ አዲስ የውጤት ወደብ pwm_Xaxis ያውጡ
Axi_timer_1 pwm0 ን ወደ አዲስ የውጤት ወደብ pwm_Zaxis ያውጡ
ደረጃ 30: የቪዲዮ ግቤት የጎን ግንኙነቶች (aclk የደመቀ)
የቪዲዮ ግቤት ጎን የአይፒ ብሎኮችን በትክክል ያገናኙ
(* እነዚህ ግንኙነቶች በግንኙነት አውቶማቲክ ጊዜ ትክክለኛ አማራጮችን በመምረጥ መፈጠር አለባቸው) “aclk” ከ axi_stream_capture ወደሚከተለው ይሄዳል
- ap_clk በቪዲዮ ክፈፍ ቋት ይፃፉ
- ap_clk በ HLS ቪዲዮ ዥረት ማቀነባበሪያ እገዳ ላይ
- *ከቪዲዮ ክፈፍ ቋት ወደ S_AXI_HP0 ፃፍ በ AXI ዘመናዊ ግንኙነት IP ላይ aclk
- *ለኤችኤችኤስ ቪዲዮ ማቀነባበሪያ ማገጃ ለ S_AXI ሰርጦች እና የቪዲዮ ክፈፍ ቋሚው በ PS ብሎክ ላይ S_AXI_HP0_ACLK ይፃፉ ከኤክስኤ በይነ ግንኙነት አገናኝ ሰርጦች ጋር የሚዛመድ aclk።
የቪዲዮ ዥረት ምልክት በቀላሉ ከመያዣው ብሎክ ወደ ዚንክ የማስታወሻ በይነገጽ በተከታታይ ተገናኝቷል።
- ቪዲዮው ከመያዣ ብሎክ ወደ HLS ማቀናበሪያ ብሎክ ይሄዳል።
- ከኤች.ኤል.ኤስ ብሎክ የተሰራው ቪዲዮ ወደ ፍሬም ቋት መጻፊያ ብሎክ ይሄዳል።
- *የፍሬም ቋት መፃፊያ ብሎክ በ Zynq PS ብሎክ ላይ ከ HP0 በይነገጽ ጋር ይገናኛል።
- ከተያዘው የማገጃ ውፅዓት የ m_axis_tuser ምልክት በ HLS ማቀነባበሪያ ማገጃ ላይ እና በተመሳሳይ ብሎክ ላይ ለ ap_start ምልክት በሁለቱም ለቪዲዮ_ኢን_TUSER የግብዓት ምልክት በእጅ ተገናኝቷል።
የ TUSER (tuser) ምልክት የቪድዮውን ፍሬም መጀመሩን ለማመልከት በ AXI ቪዲዮ ዥረት ፕሮቶኮል ጥቅም ላይ ይውላል። AP_Start ሂደቱን ለመጀመር የ HLS ብሎኩን ይነግረዋል። ስለሆነም እያንዳንዱ ክፈፍ እንደ እሱ ለማስኬድ የ HLS ብሎክን ለማነሳሳት ጠቋሚን እንጠቀማለን። ይመጣል። የአውቶቡስን አንድ ነጠላ ምልክት ሲያገናኙ እና በዚህ መንገድ ሲከፋፈሉ የቀሪውን አውቶቡስ መደበኛውን የማቋረጫ ነጥብ ማገናኘትም አስፈላጊ ነው። ቪቫዶ ምልክቱን በእጅ የሚያገናኙ ከሆነ በተለምዶ የሚገናኝበትን ለማለያየት እንደሚፈልጉ ያስባል።
የአይፒ ብሎኮች የማዋቀር ቅንብሮች
የቪዲዮ ክፈፍ ቋት ይፃፉ
የቪዲዮ ቅርፀቶች: RGB8
1 ናሙና በሰዓት ከፍተኛ ዓምዶች 1280 (> = 640) ከፍተኛ ረድፎች 960 (> = 480) ከፍተኛ የውሂብ ስፋት 8
ደረጃ 31 ከ OV7670 ጋር ግንኙነቶች
በ ov7670_axi_stream_capture ብሎክ ላይ
- ሁሉንም ግብዓቶች ውጫዊ ያድርጉ (በፒን ላይ በቀኝ ጠቅ ያድርጉ እና ከምናሌው ይምረጡ ፣ ወይም በግራ ጠቅ ያድርጉ-> ctrl+T)
- ስሞቹን እንዳሉ ይተው
በ ov7670_controller block ላይ
- ሁሉንም የማገጃ ውጤቶች ውጫዊ ያድርጉ
- የተዋቀረውን ወደብ ወደ መሪ 0 ይለውጡት
- clk ን ወደ ካሜራ ሰዓት (<= 50MHz) (FCLK_2) ያገናኙ
በዲቦክሱ ብሎክ ላይ
- የአዝራር 1 ግቤትን btn0 ከሚባል የውጭ የግብዓት ወደብ ጋር ያገናኙ
- በ “ov7670_controller IP block” ላይ “out1” ን ከ “ዳግም መላኪያ” መስመር ጋር ያገናኙ
- የአዝራር 2 ግቤትን btn3 ከሚባል የውጭ የግብዓት ወደብ ጋር ያገናኙ
- ለቪዲዮ መቅረጫ ሰዓት ጎራ በአቀነባባሪው ስርዓት ዳግም ማስጀመር IP ላይ out2n ን ወደ ext_reset_in ግብዓት ያገናኙ። (*ይህ አይፒ ከተፈጠረ በኋላ ይህ መደረግ አለበት*)
- clk ን ወደ ካሜራ ሰዓት (<= 50MHz) (FCLK_2) ያገናኙ
ደረጃ 32 - በቪዲዮ ውጭ ጎን ላይ ያሉ ግንኙነቶች
ብሎኮች የቪዲዮ የጊዜ መቆጣጠሪያ (VTC) ፣ AXI4- ዥረት ለቪዲዮ መውጫ እና ቁርጥራጮች ግንኙነቶች
- ለ vid_io_out_clk እና VTC clk 25MHz ሰዓት (FCLK_1) ይጠቀሙ
- ለቪዲዮ ውፅዓት በ AXI4- ዥረት ላይ ለመደመር 100 ሜኸ ሰዓት (FCLK_0) ይጠቀሙ
- vtiming_out to vtiming_in ውስጥ
- የቪዲዮ ፍሬም ቋት አንብብ m_axis_video ወደ ቪዲዮ አውርድ ቪዲዮ_in ወደ AXI4-Stream ይሄዳል።
- vtg_ce ወደ gen_clken ይሄዳል
- VTC clken ፣ aclken ፣ vid_io_out_ce ን ወደ ቋሚ ዶት [0: 0]
- በቅደም ተከተል vid_hsync እና vid_vsync ን ወደ ውጫዊ የውጤት ወደቦች vga_hs እና vga_vs ያውጡ። (ምስል አይደለም)
ቁርጥራጮች
-
በተያያዙ ስዕሎች ውስጥ እንደሚታየው ቁርጥራጮች መዋቀር አለባቸው
- ብሎኮቹን ወደ slice_red ፣ slice_green እና slice_blue እንደገና ይሰይሙ
- በማገጃው ስም በምስሎቹ ላይ እንደሚታየው የማዋቀሪያ ቁራጭ ክልሎች
- በምስል ላይ እንደሚታየው እያንዳንዱን የተቆራረጠ ውፅዓት ከውጭ ወደብ ውፅዓት ጋር ያገናኙ።
- vid_data [23: 0] ለእያንዳንዱ ቁራጭ ከግብዓቶች ጋር ይገናኛል (ዲን [23: 0])
ደረጃ 33 አግድ እና የግንኙነት አውቶማቲክን ያሂዱ
ነገሮችን ከ ZYNQ7 PS ብሎክ ለማገናኘት አግድ አውቶማቲክን ያሂዱ። በስዕሉ እንደሚታየው።
ሁሉንም የግንኙነት አይፒ ለመፍጠር የግንኙነት አውቶማቲክን ያሂዱ። በእያንዳንዱ ሥዕል ውስጥ ላሉት ሁሉም አማራጮች በትኩረት ይከታተሉ።
በማራገፍ እገዳው ላይ ከቪዲዮ መቅረጫ ሰዓት ጎራ የአሠራር ስርዓት ዳግም ማስጀመር ext_reset_in ግብዓት ውጭ 2n ን ያገናኙ።
ደረጃ 34 የኤችዲኤል መጠቅለያ ይፍጠሩ
ለእርስዎ የማገጃ ንድፍ ኤችዲኤል መጠቅለያውን ያመንጩ።
እንደ የላይኛው ሞጁል አድርገው ያዘጋጁት።
ደረጃ 35 Bitstream ን ይፍጠሩ ፣ ሃርድዌርን ወደ ኤስዲኬ ይላኩ ፣ ኤስዲኬን ከቪቫዶ ያስጀምሩ
ወደ ውጭ መላክ ውስጥ የትንሽ ፍሰት ማካተትዎን ያረጋግጡ።
የትንሽ ፍሰት ማመንጨት በጣም ረጅም ጊዜ ሊወስድ ይችላል።
ከዚያ ኤስዲኬን ያስጀምሩ
ደረጃ 36 ኤስዲኬ (FreeRTOS የለም)
ይህ ስሪት FreeRTOS ን ሳይጠቀም ሁሉንም ነገር በጥሩ ሁኔታ ኮዱን ያጣምራል።
በሃርድዌር ዲዛይን ላይ በመመስረት ራሱን የቻለ BSP ይፍጠሩ። ነባሪ አማራጮች ጥሩ መሆን አለባቸው። የ BSP ምንጮች መፈጠራቸውን ያረጋግጡ።
በስዕሉ ላይ እንደሚታየው መተግበሪያን ይፍጠሩ። (ባዶ ትግበራ)
በራስ -ሰር የተፈጠረውን ዋናውን ይሰርዙ እና የተያያዙ ፋይሎችን ያስመጡ።
ደረጃ 37 የ FreeRTOS ትግበራ
ይህ ስሪት FreeRTOS ን ይጠቀማል በሃርድዌር ዲዛይን ላይ በመመስረት FreeRTOS901 BSP ይፍጠሩ። ነባሪ አማራጮች ጥሩ መሆን አለባቸው። የ BSP ምንጮች መፈጠራቸውን ያረጋግጡ።
በስዕሉ ላይ እንደሚታየው መተግበሪያን ይፍጠሩ። (ባዶ ትግበራ)
በራስ -ሰር የተፈጠረውን ዋናውን ይሰርዙ እና የተያያዙ ፋይሎችን ያስመጡ።
ደረጃ 38 የአጠቃቀም መመሪያዎች
ይህ ፕሮጀክት ለማሄድ ትንሽ አስቸጋሪ ነው። ቅደም ተከተሎችን ይከተሉ።
የእርስዎ ZYBO ኃይል በሚነሳበት ጊዜ ማንኛውንም ነገር በራሱ የማይጭን መሆኑን ያረጋግጡ። ይህ ማለት የተከናወነው LED መብራት የለበትም ማለት ነው። ይህንን ለማድረግ አንዱ መንገድ የማስነሻ ምንጭ መዝለያውን ወደ JTAG ማዘጋጀት ነው።
ከ SDK ፕሮግራም ለማውጣት የፈለጉትን ፕሮጀክት (FreeRTOS ወይም አይደለም) ይክፈቱ
- የእርስዎን ZYBO ያብሩ። የተከናወነው LED መብራት የለበትም።
- FPGA ን ከቢት ፋይል ጋር ፕሮግራም ያድርጉ። የተከናወነው LED መብራት አለበት። Led0 መብራት የለበትም።
- ኮዱን ያሂዱ (ያንን ካደረጉ የመነሻ ነጥቡን ማለፍዎን ያስታውሱ)።
በዚህ ጊዜ በእርስዎ ቪጂኤ ማሳያ ላይ ውፅዓት ማግኘት አለብዎት።
እንደገና ለማስጀመር (የሚጎዳ ከሆነ ወይም ሌላ ከሆነ)-በፍጥነት የ PS-SRST አዝራሩን መታ ያድርጉ ወይም ZYBO ን ያጥፉ እና ከዚያ ያብሩት። ከደረጃ 2 ይቀጥሉ።
ማቀነባበሪያውን ከአራሚው ጋር ማቆም ካሜራው ከመንቀሳቀስ ይልቅ ቦታውን እንዲይዝ ያደርገዋል። የቪዲዮ ዥረቱ ለማንኛውም ይቀጥላል።
ደረጃ 39 ማጣቀሻዎች እና አገናኞች
የ Xilinx ማጣቀሻ መመሪያዎች እና ሰነዶች
- PG044 - ቪዲዮን ለማውጣት AXI- ዥረት
- PG278 - የቪዲዮ ክፈፍ ቋት አንብብ/ፃፍ
ሌሎች አገናኞች ፦
- የሎሪ ብሎግ - የ VDMA ግብዓት
- የላሪ ብሎግ - BVAM ን በመጠቀም OV7670 ወደ ቪጂኤ ውፅዓት
- Hamsterworks wiki ፣ በ Mike Fields ፣ የ OV7670 ኮድ የመጀመሪያ ምንጭ
- መሠረታዊ የጊዜ መግለጫዎችን የሚያሳይ የውሂብ ሉህ
የሚመከር:
AVR ማይክሮ መቆጣጠሪያ Fuse ቢት ውቅር። በማይክሮ መቆጣጠሪያ መቆጣጠሪያ ፍላሽ ማህደረ ትውስታ ውስጥ የ LED ብልጭ ድርግምተኛ መርሃ ግብር መፍጠር እና መስቀል። 5 ደረጃዎች
AVR ማይክሮ መቆጣጠሪያ Fuse ቢት ውቅር። በማይክሮ መቆጣጠሪያ ተቆጣጣሪው ፍላሽ ማህደረ ትውስታ ውስጥ የ LED ብልጭ ድርግምተኛ መርሃ ግብር መፍጠር እና መስቀል የ Atmel ስቱዲዮን እንደ የተቀናጀ የልማት መድረክ በመጠቀም የራሳችንን ፕሮግራም እንጽፋለን እና የሄክሱን ፋይል እናጠናቅቃለን። እኛ ፊውዝ bi ን እናዋቅራለን
ለ DSLR የጊዜ መዘግየት የፓን እና ዘንበል ዘዴ - 7 ደረጃዎች (ከስዕሎች ጋር)
ለ DSLR የጊዜ መዘግየቶች የፓን እና ዘንበል ሜካኒዝም -ጥቂት የእግረኞች ሞተሮች በዙሪያዬ ተኝተው ነበር እና አንድ ነገር አሪፍ ለማድረግ እነሱን ለመጠቀም ፈልጌ ነበር። አሪፍ ጊዜ መዘግየቶችን መፍጠር እንድችል ለ DSLR ካሜራዬ የፓን እና ዘንበል ስርዓት እሠራለሁ ብዬ ወሰንኩ። የሚፈልጓቸው ዕቃዎች -2 x የእንፋሎት ሞተሮች -htt
የ LED ዘንበል ብርሃን ሣጥን: 5 ደረጃዎች (ከስዕሎች ጋር)
የ LED ዘንበል ብርሃን ሣጥን - ይህ አስተማሪ በሜርኩሪ ማብሪያ (ማጠፍዘፊያ መቀየሪያ) እና ኤልኢዲዎች ቀለል ያለ የወረዳ ሰሌዳ እንዴት እንደሚሠሩ እና ከዚያ ለማስቀመጥ መስኮት ያለው ትንሽ የእንጨት ሳጥን እንዴት እንደሚያሳይዎት ያሳየዎታል።
በሃውኬዬ ብራውን ካሜራ ውስጥ የድር ካሜራ 3 ደረጃዎች (ከስዕሎች ጋር)
በሃውኬዬ ብራውን ካሜራ ውስጥ ዌብካም - ከጥቂት የእሳት እራቶች በፊት የድሮ ማጠፊያ ካሜራ ውስጥ የድር ካሜራ ስለማስቀመጥ በ Make መጽሔት ላይ ወደ አንድ ዲይ እሮጣለሁ ፣ እና እኔ በነጥብ እና በጥይት ተኩስ ለማድረግ ከሞከርኩት ጋር ቅርብ የሆነ ነገር ነበር። ግን ለእሱ ፍጹም የሆነ ጉዳይ አላገኘሁም። እወዳለሁ
የአምስት-ሴንት ዘንበል ዳሳሽ -4 ደረጃዎች (ከስዕሎች ጋር)
የአምስት-ሴንት ዘንበል ዳሳሽ-ይህ በኳስ እና በኬጅ ዘይቤ አነፍናፊዎች የተነደፈ መሠረታዊ የመጠምዘዝ ዳሳሽ ነው ፣ ግን ከ 3 ዲ ይልቅ 2 ዲ። የተያዘ ኒኬል በአነፍናፊ አቅጣጫው ላይ በመመስረት ጥንድ ሽቦዎችን ያገናኛል። እነዚህ ለመገንባት ፈጣን ናቸው ፣ እና በጣም ርካሽ ናቸው። እኔ ለፕሮጀክት ከእነሱ ጋር መጣሁ