图3-9 外设原理图
3.2.2 数码管的使用
本次设计使用的是共阳LG5621DH双体数码管
(1)数码管的结构
ED数码管也称半导体数码管,是目前数字电路中最常用的显示器件。它是以发光二极管作笔段并按共阴极方式或共阳极方式连接后封装而成的。图3-8所示是两种LED数码管的外形与内部结构,+、-分别表示公共阳极和公共阴极,a~g是7个笔段电极,DP为小数点。LED数码管型号较多,规格尺寸也各异,显示颜色有红、绿、橙等。
图3-10 共阳和共阴
(2)LED数码管的检测方法 用二极管档检测
扬州职业大学毕业设计论文 第 15 页 共 28 页
将数字万用表置于二极管档时,其开路电压为+2.8V。用此档测量LED数码管各引脚之间是否导通,可以识别该数码管是共阴极型还是共阳极型,并可判别各引脚所对应的笔段有无损坏。
1 .检测已知引脚排列的LED数码管
检测接线如图5-42所示。将数字万用表置于二极管档,黑表笔与数码管的h点(LED的共阴极)相接,然后用红表笔依次去触碰数码管的其他引脚,触到哪个引脚,哪个笔段就应发光。若触到某个引脚时,所对应的笔段不发光,则说明该笔段已经损坏。 2. 检测引脚排列不明的LED数码管
有些市售LED数码管不注明型号,也不提供引脚排列图。遇到这种情况,可使用数字万用表方便地检测出数码管的结构类型、引脚排列以及全笔段发光性能。
3.2.3 LED灯的选择
本次设计使用了6个发光二极管,2个红色﹑2个绿色﹑2个黄色,采用共阳接法,电阻
采用300欧姆。
图3-11
4 交通灯系统的软件
4.1 程序设计
MSP430系列单片机支持标准的C语言,在标准的C语言基础上进行了扩展,因此掌握标准C语言对开发MSP系列单片机有着非常重要的作用。下面针对MSP430系列单片机开发介绍一些C语言的开发基础。 4.1.1 可以使用的数据类型
扬州职业大学毕业设计论文 第 16 页 共 28 页
数据类型 sfrb, sfrw char (默认类型) char (使用 -c 选signed char unsigned char short, int unsigned short unsigned int long unsigned long pointer float double, long double
字节数1 1 1 1 1 2 2 4 4 2 4 4
数据表示范围 0—255 -128—127 -128—127 0—255 -32768—32760—65535 12147483648—21474836470—429496729
18E-38—39E+18E-38—39E+
38
表4-1
注释
声明字节或字长度的I/O等价于unsigned char 等价于signed char
指针类型 浮点类型
4.1.2 经常使用的延时函数 void delay(long v) {
while(v!=0)v--; }
delay(100)究竟延时多久呢?就是这句话执行需要的时间。 时间等于:机器周期×需要的机器周期数 (在仿真环境中可以测试出来)
4.2 交通灯主程序 #include
#include
扬州职业大学毕业设计论文 第 17 页 共 28 页
{
WDTCTL = WDTPW | WDTHOLD;// Stop watchdog timer TA0CCTL0=CCIE;//使能捕获比较中断 TA0CCR0=12000;
TA0CTL=TASSEL_1+TACLR+MC_1;//定时器A时钟源为ACLK,计数器清零,增计数模式 P1DIR=0XFF; P2DIR=0XFF;
_enable_interrupts(); 进入四个状态的循环 while(1) {
hcq[0]=1;//第一个状态 hcq[1]=7; hcq[2]=2; hcq[3]=0;
while(hcq[0]!=0||hcq[1]!=0) {P2OUT=0xde; rid(); }
hcq[0]=0;//第二个状态 hcq[1]=3;
while(hcq[0]!=0||hcq[1]!=0) {P2OUT=0xdd; rid(); }
hcq[0]=3;//第三个状态 hcq[1]=0; hcq[2]=2;
扬州职业大学毕业设计论文
第 18 页 共 28 页
相关推荐: