让数码管显示一个固定的数字0(静态显示)web
数码管是由多个LED发光二极管组成的一个“8”字型的器件,根据极性不一样,分为共阳极和共阴极,数码管内部结构以下图:
经过图上能够看出,共阳极和共阴极的区别。共阳极公共端接电源正极,共阴极公共端接地。选用共阳极数码管时,咱们只需将对应的abcdefgdq给低电平即可点亮对应的数码管。共阴极与之相反,须要将abcdefgdq接入电源正极即可点亮对应的数码管。数码管示意图以下:
咱们选用的小精灵开发板使用的是共阴极数码管,若是要显示2,那么咱们应该点亮A,B,G,E,D段发光二极管。若是要显示5,读者朋友能够自行分析,应该点亮哪些段,这样咱们即可以得出共阴数码管0到9的编码。为了节约你们的时间,我将共阴数码管对应的编码整理出来,能够直接调用。共阳的只用按位取反便可svg
sm_seg <= 8'hc0; //显示0 sm_seg <= 8'hf9; //显示1 sm_seg <= 8'ha4; //显示2 sm_seg <= 8'hb0; //显示3 sm_seg <= 8'h99; //显示4 sm_seg <= 8'h92; //显示5 sm_seg <= 8'h82; //显示6 sm_seg <= 8'hf8; //显示7 sm_seg <= 8'h80; //显示8 sm_seg <= 8'h90; //显示9 sm_seg <= 8'hbf; //显示-
小精灵开发板对应的数码管部份原理图以下:
当给三极管基极输入低电平,三极管的集电极与发射极便导通,3.3V的电压便加在了数码管的位选管脚上,那么咱们要点亮第一位数码管则须要给IO80输入低电平,并按数码管编码表给数码管赋值。原理掌握了,咱们能够开始编写代码学习
module smg( output [5:0] sm_bit, //数码管选择输出引脚 output [7:0] sm_seg //数码管段输出引脚 ); assign sm_bit=6'b111110;//选通第1位数码管,其他5位数码管关闭 assign sm_seg=8'hc0;//数码管显示0的编码,若是要显示其它数字,改写编码便可 endmodule
因为工程简单,省去了仿真编码
这一讲主要学习了数码管的显示原理,以及不一样数字对应的编码,下一讲咱们将学习数码管的动态显示原理,跟着我一步步学习,相信你们都能学会FPGA,加油!3d
视频教程连接:https://pan.baidu.com/s/1LRPfsNM0fr9wf48C5yHUBg
提取码:18uacode