|
本人,是做单片机开发的,前些天老板分配个CPLD项目给我,我现在想问一下,如果我想控制某一个特定的IO口输出某一电平,该怎么做?
也就是说:以前单片机可以通过直接对端口复实现对IO的操作,但是CPLD如何做呢?
比如说:
/*
多路选择器,a为1则选择b,为0则选择c,结果输出到数码管显示
a: key1
b: dial[3:0]
c: dial[7:4]
*/
module mux(a,b,c,d,en);
input a;
input[3:0]b;
input[3:0]c;
output[7:0] d;
reg[7:0] d;
output[7:0]en;
wire[3:0] d_tmp;
assign en=8'b11111110;
assign d_tmp=a? b:c;
always@(d_tmp)
begin
case(d_tmp)
4'b0000:
d=8'b0000_0011;
4'b0001:
d=8'b1001_1111;
4'b0010:
d=8'b0010_0101;
4'b0011:
d=8'b0000_1101;
4'b0100:
d=8'b1001_1001;
4'b0101:
d=8'b0100_1001;
4'b0110:
d=8'b0100_0001;
4'b0111:
d=8'b0001_1111;
4'b1000:
d=8'b0000_0001;
4'b1001:
d=8'b0001_1001;
4'b1010:
d=8'b0001_0001;
4'b1011:
d=8'b1100_0001;
4'b1100:
d=8'b0110_0011;
4'b1101:
d=8'b1000_0101;
4'b1110:
d=8'b0110_0001;
4'b1111:
d=8'b0111_0001;
endcase
end
endmodule
我的数码管应该接到cpld哪个IO上呢?
别叫我看书去啊,我是看了书不明白才来的,望指教 |
阿莫论坛20周年了!感谢大家的支持与爱护!!
知道什么是神吗?其实神本来也是人,只不过神做了人做不到的事情 所以才成了神。 (头文字D, 杜汶泽)
|