FPGA入门实验-寻迹小车的实现
生活随笔
收集整理的這篇文章主要介紹了
FPGA入门实验-寻迹小车的实现
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
任務目標
尋跡小車的實現(xiàn)。用的紅外尋跡模塊,記得要把模塊可調電阻參數(shù)調好。
實現(xiàn)代碼
電機模塊代碼motor.v:
module MOTOR(input sysclk,input rst_n,input ENA,input ENB,input [1:0] ATURN,input [1:0] BTURN,output reg [1:0] EN,output reg [1:0] AIN,output reg [1:0] BIN );always@(posedge sysclk) beginif(!rst_n) beginEN <= 2'b00;AIN <= 2'b00;BIN <= 2'b00;endelsebeginEN <= {ENB ,ENA};AIN <= ATURN;BIN <= BTURN;endendendmodule頂層文件邏輯TOP.v:
`timescale 1ns / 1psmodule TOP(input sysclk,input rst_n,input [1:0] infraded, // 1:左側紅外傳感器,0:右側紅外傳感器output [1:0] AIN, // 左側車輪控制output [1:0] BIN // 右側車輪控制);reg [1:0] ATURN,BTURN; wire [1:0] EN;MOTOR motor(.sysclk(sysclk),.rst_n(rst_n),.ENA(1'b1),.ENB(1'b1),.ATURN(ATURN),.BTURN(BTURN),.EN(EN),.AIN(AIN),.BIN(BIN) );always@(posedge sysclk) beginif(infraded == 2'b00) beginATURN <= 2'b01;BTURN <= 2'b01;endelse if(infraded == 2'b01) beginATURN <= 2'b01;BTURN <= 2'b10;endelse if(infraded == 2'b10) beginATURN <= 2'b10;BTURN <= 2'b01;endelse beginATURN <= 2'b00;BTURN <= 2'b00;endendendmodule結語
車輛組裝上就看讀者自己來吧。代碼邏輯大同小異。
總結
以上是生活随笔為你收集整理的FPGA入门实验-寻迹小车的实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [ahk]热键呼叫QQ经常聊天的人
- 下一篇: 共享单车管理系统_长沙市首个共享单车管理