From 0f2a5de5df2db703cb9c9e375846590cc9697951 Mon Sep 17 00:00:00 2001 From: zhaohe Date: Wed, 21 Feb 2024 16:41:42 +0800 Subject: [PATCH] V1 --- .vscode/settings.json | 3 ++ README.md | 2 ++ light_src_ctrl_fpga_port.jic | Bin 0 -> 2097376 bytes light_src_ctrl_fpga_port.map | 11 +++++++ run_led.cdf | 2 +- run_led.jdi | 2 +- run_led.pin | 48 ++++++++++++++--------------- run_led.pof | Bin 8388815 -> 8388815 bytes run_led.qsf | 22 ++++++++++++++ run_led.sof | Bin 358633 -> 358633 bytes source/led0_module.v | 45 ---------------------------- source/led1_module.v | 45 ---------------------------- source/led2_module.v | 45 ---------------------------- source/led3_module.v | 45 ---------------------------- source/top_module.v | 67 ++++++++++++++++++++++++++++++++++++----- source/top_module.v.bak | 60 ------------------------------------- source/top_module_bak2.v | 70 ------------------------------------------- 17 files changed, 124 insertions(+), 343 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 README.md create mode 100644 light_src_ctrl_fpga_port.jic create mode 100644 light_src_ctrl_fpga_port.map delete mode 100644 source/led0_module.v delete mode 100644 source/led1_module.v delete mode 100644 source/led2_module.v delete mode 100644 source/led3_module.v delete mode 100644 source/top_module.v.bak delete mode 100644 source/top_module_bak2.v diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..74aa05c --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "files.encoding": "gbk" +} \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..f9ce20f --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +引脚分配参考: +https://iflytop1.feishu.cn/docx/SqzLdKLmxoAtMLxLEYec2sIcn4g \ No newline at end of file diff --git a/light_src_ctrl_fpga_port.jic b/light_src_ctrl_fpga_port.jic new file mode 100644 index 0000000000000000000000000000000000000000..b1f5a7539f1d6bded522c65501decd492ba6679d GIT binary patch literal 2097376 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 - + diff --git a/run_led.pin b/run_led.pin index a51ecdb..6f049a7 100644 --- a/run_led.pin +++ b/run_led.pin @@ -95,7 +95,7 @@ GND+ : 24 : : : GND+ : 25 : : : : 2 : VCCIO2 : 26 : power : : 3.3V : 2 : GND : 27 : gnd : : : : -RESERVED_INPUT : 28 : : : : 2 : +trigger_input0 : 28 : input : 3.3-V LVTTL : : 2 : Y VCCINT : 29 : power : : 1.2V : : RESERVED_INPUT : 30 : : : : 2 : RESERVED_INPUT : 31 : : : : 2 : @@ -117,26 +117,26 @@ RESERVED_INPUT : 46 : : : VCCIO3 : 47 : power : : 3.3V : 3 : GND : 48 : gnd : : : : RESERVED_INPUT : 49 : : : : 3 : -RESERVED_INPUT : 50 : : : : 3 : -RESERVED_INPUT : 51 : : : : 3 : +lt_on_off_ctrl_1 : 50 : output : 3.3-V LVTTL : : 3 : Y +lt_on_off_ctrl_2 : 51 : output : 3.3-V LVTTL : : 3 : Y RESERVED_INPUT : 52 : : : : 3 : RESERVED_INPUT : 53 : : : : 3 : RESERVED_INPUT : 54 : : : : 4 : RESERVED_INPUT : 55 : : : : 4 : VCCIO4 : 56 : power : : 3.3V : 4 : GND : 57 : gnd : : : : -RESERVED_INPUT : 58 : : : : 4 : +lt_intensity_1 : 58 : output : 3.3-V LVTTL : : 4 : Y RESERVED_INPUT : 59 : : : : 4 : -RESERVED_INPUT : 60 : : : : 4 : +lt_intensity_2 : 60 : output : 3.3-V LVTTL : : 4 : Y VCCINT : 61 : power : : 1.2V : : VCCIO4 : 62 : power : : 3.3V : 4 : GND : 63 : gnd : : : : -RESERVED_INPUT : 64 : : : : 4 : -RESERVED_INPUT : 65 : : : : 4 : +lt_intensity_3 : 64 : output : 3.3-V LVTTL : : 4 : Y +lt_on_off_ctrl_3 : 65 : output : 3.3-V LVTTL : : 4 : Y RESERVED_INPUT : 66 : : : : 4 : RESERVED_INPUT : 67 : : : : 4 : -RESERVED_INPUT : 68 : : : : 4 : -RESERVED_INPUT : 69 : : : : 4 : +lt_intensity_4 : 68 : output : 3.3-V LVTTL : : 4 : Y +lt_on_off_ctrl_4 : 69 : output : 3.3-V LVTTL : : 4 : Y RESERVED_INPUT : 70 : : : : 4 : RESERVED_INPUT : 71 : : : : 4 : RESERVED_INPUT : 72 : : : : 4 : @@ -170,19 +170,19 @@ RESERVED_INPUT : 99 : : : RESERVED_INPUT : 100 : : : : 6 : ~ALTERA_nCEO~ / RESERVED_OUTPUT_OPEN_DRAIN : 101 : output : 3.3-V LVTTL : : 6 : N VCCINT : 102 : power : : 1.2V : : -RESERVED_INPUT : 103 : : : : 6 : -RESERVED_INPUT : 104 : : : : 6 : -RESERVED_INPUT : 105 : : : : 6 : -RESERVED_INPUT : 106 : : : : 6 : +stm32_pc9 : 103 : input : 3.3-V LVTTL : : 6 : Y +stm32_pc8 : 104 : input : 3.3-V LVTTL : : 6 : Y +stm32_pc7 : 105 : input : 3.3-V LVTTL : : 6 : Y +stm32_pc6 : 106 : input : 3.3-V LVTTL : : 6 : Y VCCA2 : 107 : power : : 2.5V : : GNDA2 : 108 : gnd : : : : VCCD_PLL2 : 109 : power : : 1.2V : : -RESERVED_INPUT : 110 : : : : 7 : +camera_shutter_out : 110 : output : 3.3-V LVTTL : : 7 : N RESERVED_INPUT : 111 : : : : 7 : RESERVED_INPUT : 112 : : : : 7 : RESERVED_INPUT : 113 : : : : 7 : -RESERVED_INPUT : 114 : : : : 7 : -RESERVED_INPUT : 115 : : : : 7 : +stm32_pa5 : 114 : input : 3.3-V LVTTL : : 7 : Y +stm32_pa4 : 115 : input : 3.3-V LVTTL : : 7 : Y VCCINT : 116 : power : : 1.2V : : VCCIO7 : 117 : power : : 3.3V : 7 : GND : 118 : gnd : : : : @@ -193,7 +193,7 @@ VCCIO7 : 122 : power : : 3.3V GND : 123 : gnd : : : : RESERVED_INPUT : 124 : : : : 7 : RESERVED_INPUT : 125 : : : : 7 : -RESERVED_INPUT : 126 : : : : 7 : +tp5 : 126 : output : 3.3-V LVTTL : : 7 : N RESERVED_INPUT : 127 : : : : 7 : RESERVED_INPUT : 128 : : : : 8 : RESERVED_INPUT : 129 : : : : 8 : @@ -202,14 +202,14 @@ GND : 131 : gnd : : RESERVED_INPUT : 132 : : : : 8 : RESERVED_INPUT : 133 : : : : 8 : VCCINT : 134 : power : : 1.2V : : -RESERVED_INPUT : 135 : : : : 8 : -RESERVED_INPUT : 136 : : : : 8 : -RESERVED_INPUT : 137 : : : : 8 : +tp6 : 135 : output : 3.3-V LVTTL : : 8 : Y +tp7 : 136 : output : 3.3-V LVTTL : : 8 : Y +tp8 : 137 : output : 3.3-V LVTTL : : 8 : Y RESERVED_INPUT : 138 : : : : 8 : VCCIO8 : 139 : power : : 3.3V : 8 : GND : 140 : gnd : : : : -RESERVED_INPUT : 141 : : : : 8 : -RESERVED_INPUT : 142 : : : : 8 : -RESERVED_INPUT : 143 : : : : 8 : -RESERVED_INPUT : 144 : : : : 8 : +stm32_pa3 : 141 : input : 3.3-V LVTTL : : 8 : Y +stm32_pa2 : 142 : input : 3.3-V LVTTL : : 8 : Y +stm32_pa1 : 143 : input : 3.3-V LVTTL : : 8 : Y +stm32_pa0 : 144 : output : 3.3-V LVTTL : : 8 : Y GND : EPAD : : : : : diff --git a/run_led.pof b/run_led.pof index db234d098c0dbea52fbed7fb97b0989cfc2e0633..2bf8f9f36c2b7eda5e0392d20966b0a234170ad6 100644 GIT binary patch delta 4393 zcmZve4{#Gz9>@3XZrUUbY0_>XmLO?bq*h9srjlBqO-j(p-&Xv`-%=`|2*nECDF_Lj za^jr`&f_kp=zz$nFks_buZLp&}k{5i?xwCN(F03}PRbGt!N$dFV!v=-veu|hs9$7BWKeFo>< zyLBaptAjp)!n)d^PUu~TN>XY)VM*A?PU4MeicAmU4KBG9;xDB+%HM<@fv8K;F{+b| z?w3PUo`=XzCI2q1oP5=k^pX7Ip7f0li!PcoiJX}S@kX1Amu6Y`pR#QHa=O!40&R!X zamGDNE`$&X=fmV9NrdQmdi!aJY}EY-MD=GND)&GyLR3!`wI}rph{j5eNp+*q$hY~% z8EH&J`cT;qXEM>&Pc1W{?$^-CyMSE}s= zU3_Qei!$vhUTkw-8?N5w2$7?6pbsG`NmOsvMfYYMqT_?`yY(|glN<8AMM}Dw4VI9s4Pjo zm-Yxfmc0Mzp+jM%tbPxol9XCcSQ0j}lhpd`^UQb>qA2j`IX*GWc;6+&%N ze{O?Us-7-I8XMV}fKA)+ijai_Zxgcwf2-_v2tuBsIptzPL1~~c;b2e@+^B`MCvZxj z?4D{?y<@s1vu=!e#;AQ=yF_(;)eI?edMkU47dM4?aoH5JjR|36t?P&G6@1%*Q+)H1 zJH)Vz+vlBZHu+|`x5>n=Y((lkwWeffAT?{6C5TT7;JTTtfR zpO=`lx!K~UK1M)RnzV6+b|r%X@*RzANVWf z<5RbmRLH!hVWJ#cJFGdvL%};E6$jWDzMom8*w+eX@fO1XlQoAWrS}5)%P$q2Rl~lg zWGf;)qTU}OeQQ|-cP-6VQteuY*x9#}5%Hucf}idCR-5^*nRZ4#sr}X8r%8cN�e1 zZDnd^wVlbf_}+f*sXu`TmhsPTKg>&-wqPlyy>hOSMHX*olTEaog0O3I8s!8(K4-RQ zV^{!}TqsoU<(}MSseJqDY3=isaAveJ9ybUzb>*l&jrp4D&-(`?K>zyBHD=XdZ?uICMQq2qlsXJ7a5 zi=Gf)*Hq0NXG z8>IN@_sBUc-I>U`5NnJ0t*lCYedmpg_gDLPuUF>riKXfG?!^{Nh96(z5uaUvC%zF~ zl++W%<&$u?DUsq6q}~l?ilB`}Z<@sF{fx4uRH_b{De%#%#}EPDd8tY*T3gQ|xSfhD zxJ~Qjk=7q(l!tG^RqTu_Zj8G%nPe6zHqQxzk9LY$SAgXU`zqATuU?ms6i^cX^^gZQI#D2umFwTH;XcOb}acI;uluF%; zP2}4{`a$4}-eh69T7q0KnQ^+2u0CVHJQ2^OKFz-kWo$DHUOvxh!ZMepUp+gD`cYj% z9o|mNbftc$&;3#NXT|@u!>j9q!NRofz1Xf_U5NNC%oC}CTm0CSO1#4>#hM?A_F33V zY$W^CUhhJY9~=93N~YpzIewWON>#@{WSZ!1C6H>RddEjrc%02=<>X223$+-}N+y#@ zioKAd_I2SzaSbI-Nq->TG7pizcJ9RrHc~9pdMgYVj-r6|3-HAH?XHj`6D{oG^~Yu7 z#v*RpxrjDmm?`+ATqmXBGm#?BDB1FIe%g$_yW%)c9-yNrU5b5-zv-^OrqkgP`dT}( z4^lYGtch%zEPe7fM(dR(%pW#Vf~71VzP?L5(z6TbO&$}5nB64^J7^LmIB<>)(b<>H zTJh0zSVj)2P!Kx@5vys)lNx$5I9oVL+d(vm(76n>2u;S_*rbhAsS3|4K*-z`8SKPbDUGu@he}( z@#XYJ@7vCN67t~bYGMlSwfp2{L0?8&7XB3Scu-?f`ho$ zxrL(EJQfU05QSV;7ksugZ&sUI6y~0yXS+<7srqR`O%!9ASRL}1Pbu$1GmT0RFk99tIz}gEXcsOw1eY}lK5MK`C5qckO4WF zBMoT#1YcpeYeJs$3Ig+DK2-V}}}^YB|7w2qYi_14skuzz9sh3^ITP zi~?4W32eX)vOqRaKn@rU#sCMn0pxb;OaVSn0d518U@Djfrh_U_4g4SgYQPK-1T(?y;0{m=?gX>I zY%mAR1@pjsPzUP4U0?yY8{7l#1^0pb!9uVIECx%!Qm_nA?3aT^umUuJ2f#|O3akbX zf``Bw@Gw{l)`4cQ9y|hCz@uOT*a#j2KLbApkAo+`Ca@Vi3ATW((Ut=t>#|?(4HsHG PGfSr$1!Sdg_M`s-FdzAY delta 3615 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 F{{%>fM=t;X diff --git a/run_led.qsf b/run_led.qsf index 994acda..0b04ac7 100644 --- a/run_led.qsf +++ b/run_led.qsf @@ -68,4 +68,26 @@ set_location_assignment PIN_10 -to debug_light[1] set_location_assignment PIN_33 -to debug_light[0] set_location_assignment PIN_23 -to clk set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 +set_location_assignment PIN_58 -to lt_intensity_1 +set_location_assignment PIN_60 -to lt_intensity_2 +set_location_assignment PIN_64 -to lt_intensity_3 +set_location_assignment PIN_68 -to lt_intensity_4 +set_location_assignment PIN_50 -to lt_on_off_ctrl_1 +set_location_assignment PIN_51 -to lt_on_off_ctrl_2 +set_location_assignment PIN_65 -to lt_on_off_ctrl_3 +set_location_assignment PIN_69 -to lt_on_off_ctrl_4 +set_location_assignment PIN_144 -to stm32_pa0 +set_location_assignment PIN_143 -to stm32_pa1 +set_location_assignment PIN_142 -to stm32_pa2 +set_location_assignment PIN_141 -to stm32_pa3 +set_location_assignment PIN_115 -to stm32_pa4 +set_location_assignment PIN_114 -to stm32_pa5 +set_location_assignment PIN_106 -to stm32_pc6 +set_location_assignment PIN_105 -to stm32_pc7 +set_location_assignment PIN_104 -to stm32_pc8 +set_location_assignment PIN_103 -to stm32_pc9 +set_location_assignment PIN_28 -to trigger_input0 +set_location_assignment PIN_135 -to tp6 +set_location_assignment PIN_136 -to tp7 +set_location_assignment PIN_137 -to tp8 set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top \ No newline at end of file diff --git a/run_led.sof b/run_led.sof index 559f38e40c2aac03dcf3ba90759f8b4cbd604079..0eddfefd9f0d062176ecc25645dd902bb84fa110 100644 GIT binary patch delta 2026 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 O0t^>6iWWNl=f42K{gmSX diff --git a/source/led0_module.v b/source/led0_module.v deleted file mode 100644 index db1af3a..0000000 --- a/source/led0_module.v +++ /dev/null @@ -1,45 +0,0 @@ -module led0_module -( - CLK, RSTn, LED_Out -); - - input CLK; - input RSTn; - output LED_Out; - - /*************************************/ - - parameter T100MS = 23'd5_000_000;//DB4CE15开发板使用的晶振为50MHz,50M*0.01=5_000_000 - - /*************************************/ - - reg [22:0]Count1; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - Count1 <= 23'd0; - else if( Count1 == T100MS ) - Count1 <= 23'd0; - else - Count1 <= Count1 + 1'b1; - - /*************************************/ - - reg rLED_Out; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - rLED_Out <= 1'b0; - else if( Count1 >= 23'd0 && Count1 < 23'd1_250_000 )//100ms的第一个四分之一,具体请看教程11页的图2.1C - rLED_Out <= 1'b1; - else - rLED_Out <= 1'b0; - - /***************************************/ - - assign LED_Out = rLED_Out; - - /***************************************/ - - -endmodule diff --git a/source/led1_module.v b/source/led1_module.v deleted file mode 100644 index c3565c9..0000000 --- a/source/led1_module.v +++ /dev/null @@ -1,45 +0,0 @@ -module led1_module -( - CLK, RSTn, LED_Out -); - - input CLK; - input RSTn; - output LED_Out; - - /*************************************/ - - parameter T100MS = 23'd5_000_000;//DB4CE15开发板使用的晶振为50MHz,50M*0.01=5_000_000 - - /*************************************/ - - reg [22:0]Count1; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - Count1 <= 23'd0; - else if( Count1 == T100MS ) - Count1 <= 23'd0; - else - Count1 <= Count1 + 1'b1; - - /*************************************/ - - reg rLED_Out; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - rLED_Out <= 1'b0; - else if( Count1 >= 23'd1_250_000 && Count1 < 23'd2_500_000 )//100ms的第二个四分之一,具体请看教程11页的图2.1C - rLED_Out <= 1'b1; - else - rLED_Out <= 1'b0; - - /***************************************/ - - assign LED_Out = rLED_Out; - - /***************************************/ - - -endmodule diff --git a/source/led2_module.v b/source/led2_module.v deleted file mode 100644 index c57c9c6..0000000 --- a/source/led2_module.v +++ /dev/null @@ -1,45 +0,0 @@ -module led2_module -( - CLK, RSTn, LED_Out -); - - input CLK; - input RSTn; - output LED_Out; - - /*************************************/ - - parameter T100MS = 23'd5_000_000;//DB4CE15开发板使用的晶振为50MHz,50M*0.01=5_000_000 - - /*************************************/ - - reg [22:0]Count1; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - Count1 <= 23'd0; - else if( Count1 == T100MS ) - Count1 <= 23'd0; - else - Count1 <= Count1 + 1'b1; - - /*************************************/ - - reg rLED_Out; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - rLED_Out <= 1'b0; - else if( Count1 >= 23'd2_500_000 && Count1 < 23'd3_750_000 )//100ms的第三个四分之一,具体请看教程11页的图2.1C - rLED_Out <= 1'b1; - else - rLED_Out <= 1'b0; - - /***************************************/ - - assign LED_Out = rLED_Out; - - /***************************************/ - - -endmodule diff --git a/source/led3_module.v b/source/led3_module.v deleted file mode 100644 index 3a5db5d..0000000 --- a/source/led3_module.v +++ /dev/null @@ -1,45 +0,0 @@ -module led3_module -( - CLK, RSTn, LED_Out -); - - input CLK; - input RSTn; - output LED_Out; - - /*************************************/ - - parameter T100MS = 23'd5_000_000;//DB4CE15开发板使用的晶振为50MHz,50M*0.01=5_000_000 - - /*************************************/ - - reg [22:0]Count1; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - Count1 <= 23'd0; - else if( Count1 == T100MS ) - Count1 <= 23'd0; - else - Count1 <= Count1 + 1'b1; - - /*************************************/ - - reg rLED_Out; - - always @ ( posedge CLK or negedge RSTn ) - if( !RSTn ) - rLED_Out <= 1'b0; - else if( Count1 >= 23'd3_750_000 && Count1 < 23'd5_000_000 )//100ms的第四个四分之一,具体请看教程11页的图2.1C - rLED_Out <= 1'b1; - else - rLED_Out <= 1'b0; - - /***************************************/ - - assign LED_Out = rLED_Out; - - /***************************************/ - - -endmodule diff --git a/source/top_module.v b/source/top_module.v index bdfd133..b7a4b65 100644 --- a/source/top_module.v +++ b/source/top_module.v @@ -1,16 +1,69 @@ + module top_module ( - clk, - + input clk, + + //input_from_stm32 + input stm32_pc6, // 灯光强度控制PWM + input stm32_pc7, // 灯光强度控制PWM + input stm32_pc8, // 灯光强度控制PWM + input stm32_pc9, // 灯光强度控制PWM + + input stm32_pa1, // 快门控制 + input stm32_pa2, // 快门控制 + input stm32_pa3, // 快门控制 + input stm32_pa4, // 快门控制 + input stm32_pa5, // 快门控制 + + //output_to_stm32 + output stm32_pa0, // 输入捕获 + + //光强控制引脚 + output lt_intensity_1, //灯光强度控制输出 + output lt_intensity_2, //灯光强度控制输出 + output lt_intensity_3, //灯光强度控制输出 + output lt_intensity_4, //灯光强度控制输出 + + //拍照控制引脚 + output lt_on_off_ctrl_1, //指示灯通断控制输出 + output lt_on_off_ctrl_2, //指示灯通断控制输出 + output lt_on_off_ctrl_3, //指示灯通断控制输出 + output lt_on_off_ctrl_4, //指示灯通断控制输出 + + output camera_shutter_out, //相机快门控制输出 - debug_light + + // 触发输入引脚 + input trigger_input0, //触发输入 + + + //测试引脚 + // output spi2_miso, //用于测试的SPI输出 + + output tp5, + output tp6, + output tp7, + output tp8, + + output [2:0] debug_light ); - input clk; + assign lt_intensity_1 = stm32_pc6; + assign lt_intensity_2 = stm32_pc7; + assign lt_intensity_3 = stm32_pc8; + assign lt_intensity_4 = stm32_pc9; + + assign lt_on_off_ctrl_1 = stm32_pa1; + assign lt_on_off_ctrl_2 = stm32_pa2; + assign lt_on_off_ctrl_3 = stm32_pa3; + assign lt_on_off_ctrl_4 = stm32_pa4; + assign camera_shutter_out = stm32_pa5; - output [2:0] debug_light; + assign stm32_pa0 = !trigger_input0; - assign debug_light[0] = 0; - assign debug_light[1] = 1; + assign debug_light[0] = 1; + assign debug_light[1] = 0; assign debug_light[2] = 0; + assign tp8 = !trigger_input0; + endmodule diff --git a/source/top_module.v.bak b/source/top_module.v.bak deleted file mode 100644 index 685f75a..0000000 --- a/source/top_module.v.bak +++ /dev/null @@ -1,60 +0,0 @@ -module top_module -( - CLK, RSTn, LED_Out -); - - input CLK; - input RSTn; - output [3:0]LED_Out; - - /*******************************/ - - wire LED0_Out; - - led0_module U1 - ( - .CLK( CLK ), - .RSTn( RSTn ), - .LED_Out( LED0_Out ) - ); - - /*********************************/ - - wire LED1_Out; - - led1_module U2 - ( - .CLK( CLK ), - .RSTn( RSTn ), - .LED_Out( LED1_Out ) - ); - - /*********************************/ - - wire LED2_Out; - - led2_module U3 - ( - .CLK( CLK ), - .RSTn( RSTn ), - .LED_Out( LED2_Out ) - ); - - /*********************************/ - - wire LED3_Out; - - led3_module U4 - ( - .CLK( CLK ), - .RSTn( RSTn ), - .LED_Out( LED3_Out ) - ); - - /**********************************/ - - assign LED_Out = { LED3_Out, LED2_Out, LED1_Out, LED0_Out}; - - /***********************************/ - -endmodule diff --git a/source/top_module_bak2.v b/source/top_module_bak2.v deleted file mode 100644 index f3defdc..0000000 --- a/source/top_module_bak2.v +++ /dev/null @@ -1,70 +0,0 @@ -module top_module -( - //CLK, - //RSTn, - PC6, - PC7, - PC8, - PA9, - LT_PWM1, - LT_PWM2, - LT_PWM3, - LT_PWM4, - EXIN1, - EXIN1_to_MCU, - PA1, - PA2, - PA3, - PA4, - LT_EN1, - LT_EN2, - LT_EN3, - LT_EN4, - cam_triger -); - - //input CLK; - //input RSTn; - input PC6; - input PC7; - input PC8; - input PA9; - output LT_PWM1; - output LT_PWM2; - output LT_PWM3; - output LT_PWM4; - input EXIN1; - output EXIN1_to_MCU; - input PA1; - input PA2; - input PA3; - input PA4; - output LT_EN1; - output LT_EN2; - output LT_EN3; - output LT_EN4; - output cam_triger; - - /********鍏夋簮浜害鎺у埗***************/ - - assign LT_PWM1 = PC6; - assign LT_PWM2 = PC7; - assign LT_PWM3 = PC8; - assign LT_PWM4 = PA9; - /**********************************/ - - /********鍏夋簮浣胯兘*******************/ - assign LT_EN1 = PA1; - assign LT_EN2 = PA2; - assign LT_EN3 = PA3; - assign LT_EN4 = PA4; - - /**********************************/ - - assign EXIN1_to_MCU = EXIN1; - - /***********************************/ - - assign cam_triger = PA1 || PA2 || PA3 || PA4; - -endmodule