历史上的今天
返回首页

历史上的今天

今天是:2025年06月20日(星期五)

正在发生

2020年06月20日 | MSP430F149学习之路——LED

2020-06-20 来源:eefocus

 1 #include

 2 

 3 void int_clk();

 4 void delay(int i);

 5 void main()

 6 {

 7   WDTCTL = WDTPW + WDTHOLD;

 8   int_clk();

 9   P6DIR = 0XFF;

10   P6OUT = 0Xff;

11   while(1)

12   {

13     P6OUT = 0XFF;

14     delay(20000);

15     P6OUT = 0x00;

16     delay(20000);

17   }

18 }

19 

20 void int_clk()

21 {

22   BCSCTL1 &= ~XT2OFF;

23   BCSCTL2 |= SELM_1 + SELS;

24   do

25   {

26     IFG1 &= ~OFIFG;

27     for(int i=0;i<100;i++)

28       _NOP();

29   }while((IFG1 & OFIFG)!=0);

30   IFG1 &= ~OFIFG;

31 }

32 

33 void delay(int i)

34 {

35   while(i--);

36 }

 提示:IAR的配置要正确


升级版本:


  1 /***********************************************

  2 程序功能:实现流水灯以三种流动方式和四种流动速度

  3           的不同组合而进行点亮"流动"

  4 ------------------------------------------------*/

  5 #include

  6  int flag=0,i=0,j=0,dir=0,speed=0;

  7 void int_clk();

  8 void delay(int i);

  9 void main()

 10 {

 11   WDTCTL = WDTPW + WDTHOLD;

 12   int_clk();

 13   P6DIR = 0XFF;

 14   P6OUT = 0XFF;

 15   

 16   TACCTL0 = CCIE;                     //使能CCR0中断

 17   TACCR0 = 50000;

 18   TACTL  = TASSEL_2 + MC_1 + ID_3;    //定时器A选择SMCLK,增计数,8分频

 19   

 20   _EINT();

 21   LPM0;

 22 }

 23 /*******************************************

 24 函数名称:Timer_A 

 25 功    能:定时器A的中断服务函数,在这里通过标志

 26           控制流水灯的流动方向和流动速度

 27 参    数:无

 28 返回值  :无

 29 ********************************************/

 30 #pragma vector=TIMERA0_VECTOR

 31 __interrupt void Timer_A(void)

 32 {

 33   if(flag == 0)

 34   {

 35     P6OUT = ~(0x80>>(i++));    //灯的点亮顺序D8 -> D1

 36   }

 37   else if(flag == 1)

 38   {

 39     P6OUT = ~(0x01<<(i++));    //灯的点亮顺序D1 -> D8

 40   }

 41   else 

 42   {

 43     if(dir)                  //灯的点亮顺序  D8 -> D1,D1 -> D8,循环绕圈                        

 44       P6OUT = ~(0x80>>(i++));

 45     else

 46       P6OUT = ~(0x01<<(i++));

 47   }

 48   

 49   if(i == 8) 

 50   {

 51     i = 0;

 52     dir = ~dir;

 53   }

 54   delay(200);

 55   j++;

 56   if(j == 40) 

 57   {

 58     i = 0;

 59     j = 0;

 60     flag++;

 61     if(flag == 4) flag = 0;

 62     switch(speed)

 63     {

 64     case 0:

 65      // TACTL &=~ (ID0 + ID1);

 66       TACTL |= ID_3;

 67       break;

 68     case 1:

 69      // TACTL &=~ (ID0 + ID1);

 70       TACTL |= ID_2;

 71       break;

 72     case 2:

 73     //  TACTL &=~ (ID0 + ID1);

 74       TACTL |= ID_1;

 75       break;

 76     case 3:

 77      // TACTL &=~ (ID0 + ID1);

 78       TACTL |= ID_0;

 79       break;

 80     default:

 81       break;

 82     }

 83     if(flag != 3)   speed++;

 84     if(speed == 4) speed = 0;

 85     } 

 86 }

 87 void int_clk()

 88 {

 89   BCSCTL1 &= ~XT2OFF;

 90   BCSCTL2 |= SELM_1 + SELS;     //DCO在800KHZ左右

 91   do

 92   {

 93     IFG1 &= ~OFIFG;

 94     for(int i=0;i<100;i++)

 95       _NOP();

 96   }while((IFG1 & OFIFG)!=0);

 97   IFG1 &= ~OFIFG;

 98 }

 99 

100 void delay(int i)

101 {

102   while(i--);

103 }


推荐阅读

史海拾趣

ACEINNA公司的发展小趣事

ACEINNA是一家专注于研发和生产惯性传感器和解决方案的公司,以下是该公司发展的五个相关故事:

  1. 公司成立和起步阶段: ACEINNA公司成立于2017年,总部位于美国马萨诸塞州。公司由来自微机电系统(MEMS)领域的资深专家和工程师共同创立,致力于开发高性能的惯性传感器和智能控制系统。起步阶段,ACEINNA主要专注于磁性惯性测量单元(IMU)和导航解决方案的研发。

  2. 技术创新和产品拓展: 随着技术的不断进步和市场需求的增长,ACEINNA不断进行技术创新,并逐步拓展产品线。公司推出了包括惯性测量单元(IMU)、惯性导航系统(INS)、车载导航系统等在内的多种惯性传感器和解决方案,广泛应用于汽车、工业、军事等领域。

  3. 市场拓展和国际合作: ACEINNA积极拓展国内外市场,并与全球各地的客户建立了合作关系。公司的产品被广泛应用于车辆动态控制、无人驾驶、精准农业等领域,赢得了客户的认可。同时,ACEINNA还与国际知名汽车制造商、工业企业展开合作,共同推动技术进步和市场发展。

  4. 持续投入研发和创新: ACEINNA不断加大研发投入,致力于技术创新和产品升级。公司设立了专门的研发团队和实验室,拥有一系列专利技术,致力于开发新产品和解决方案,满足客户不断变化的需求。

  5. 未来发展展望: ACEINNA将继续致力于惯性传感器和智能控制系统的研发和应用,不断推出更先进、更可靠的产品和解决方案,满足客户在各个领域的需求。公司将加强国际市场拓展,提升自身在全球市场的竞争力,为行业的发展做出更大的贡献。

CTC Coils Ltd公司的发展小趣事

面对日益严峻的环境问题,CTC Coils Ltd公司积极响应国家绿色发展的号召,开始实施绿色环保战略。公司引进先进的生产设备和工艺,优化生产流程,减少能源消耗和废物排放。同时,公司还研发出了一系列环保型电感线圈产品,满足了市场对绿色电子产品的需求。

ACI [Applied Concepts, Inc.]公司的发展小趣事

在电子行业的激烈竞争中,ACI公司凭借其卓越的技术创新能力脱颖而出。公司研发团队不断攻克技术难关,推出了一系列具有竞争力的电子产品。这些产品不仅性能卓越,而且设计独特,满足了消费者的多样化需求。通过技术创新,ACI成功打开了市场,赢得了消费者的青睐。

Active-Semi公司的发展小趣事

在电子行业的激烈竞争中,ACI公司凭借其卓越的技术创新能力脱颖而出。公司研发团队不断攻克技术难关,推出了一系列具有竞争力的电子产品。这些产品不仅性能卓越,而且设计独特,满足了消费者的多样化需求。通过技术创新,ACI成功打开了市场,赢得了消费者的青睐。

GE Solid State公司的发展小趣事
通过声音信号来反映曝光量,使得用户可以通过听觉直观地感知光线的强弱。
圣邦微电子(Fangtek)公司的发展小趣事
对于视力障碍的学生或学习者来说,可听的曝光表电路可以作为一种辅助工具来帮助他们理解和感知光线和曝光量的概念。

问答坊 | AI 解惑

气体放电的现象及应用

在现实生活中我们会遇到很多气体放电的现象,有的时候我们会觉得不可思议,其实这些现象都是能用科学来解释的。科学家们通过对他们的研究,把这些现象的原理应用在我们的生活中,给我们带来了很多益处,在经过科学家的进一步研究后将会给我们带来更 ...…

查看全部问答>

初学arm的困惑,忘高手帮忙

大家好,我是一个新手,我现在在用一个mini2440的学习板在学习,我的电脑是笔记本,没有那种窜口,所以买了一个usb转窜口的线接上了,在ads调试程序 以后准备考进学习板中进行,但是uartselect不知道该用哪个好?学校的学习板用的是台式机,所以选u ...…

查看全部问答>

湿度采集

我现在想用个电容式湿度传感器,来采集湿度,用555采频率电路我可以做,假如我不用采频率的方式怎么做?有没有其它方法,介绍个......…

查看全部问答>

请问可以用c语言在VS2005中开发WinCE的应用程序吗?

如题。。。 如果可以能否提供这方面的资料 不胜感激!…

查看全部问答>

用于图形,算法的ARM+DSP双核开发系统的问题

实验室的一个嵌入式课题,需要不断的对70*70的矩阵做运算处理,并且要有一定的GUI能力。光用2410来跑,可能是一个很吃力的事情,所以想选择arm+dsp的平台,想请教一下大家,有没有比较好的arm+dsp6的开发板,因为硕士时间比较短,所以想直接用开发 ...…

查看全部问答>

vxworks 广播数据包

控创的单扳机,扩展为双网卡(fei0,eeE0) eeE0:192.168.1.100:0xffffff00  udp协议组网 网上其他设备向某一端口 广播数据 广播地址:192.168.1.255 正确创建socket 后,接收不到广播数据包. 如果同一端口不广播,而是点对点则能正确收 ...…

查看全部问答>

求jtag烧写程序及驱动

cpu: s3c2510 flash: AM29lv320db jtag:20-pin boot: armboot for samsung v3.1t --------------------------------------- 我把板子上的boot损坏了,板子上提供了jtag-20pin,但没有提供jtag连线,和烧写软件及驱动。 烧写软件 是不是 还和jt ...…

查看全部问答>

关于BISS0001的应用

那位大虾 能告诉我BISS0001怎么用?…

查看全部问答>

正确询价我知道

 \"询价(Request for Quotation)\"是采购人员在作业流程上的一个必要阶段。在接到请购单、了解目前库存状况及采购预算后,通常最直接的反映就是马上联络供应商。如果这是常态性的采购,需求的形态又是属于标准零件,对于供应商来说比较 ...…

查看全部问答>

如果用上位机的话一定要开串口中断吗

如果用上位机的话一定要开串口中断吗?…

查看全部问答>