zoukankan      html  css  js  c++  java
  • MSP430学习笔记2---两个LED同时亮灭和顺闪

    参照学习笔记1,再看看板子上写着P1.0(LED1) P1.6(LED2)很容易写出同时点亮两个LED的程序:

     1 #include  <msp430x14x.h>
     2 
     3 void main(void)
     4 {
     5   WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
     6   P1DIR |= 0x41;                            // Set P1.0 to output direction
     7 
     8   for (;;)
     9   {
    10     volatile unsigned int i;
    11 
    12     P1OUT ^= 0x41;                          // Toggle P1.0 using exclusive-OR
    13 
    14     i = 50000;                              // Delay
    15     do (i--);
    16     while (i != 0);
    17   }
    18 }
    View Code

    如果顺闪的话在 P1DIR |= 0x41;    的后面加上  P1OUT = 0x01; 即可。

    新的问题来了外接口默认输出是高电平还是低电平呢。写入如下代码

    1 #include  <msp430x14x.h>
    2 
    3 void main(void)
    4 {
    5   WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
    6   P1DIR |= 0x41;                            // Set P1.0 to output direction
    7  
    8   for (;;);
    9 }
    View Code


    运行了7、8次,发现除去一次两灯都不亮之外,都是LED2一个灯亮。不知道什么原因,LED1一直没亮,难道是巧合,下次拿示波器来试下就知道了。

    ps:2013-12-9拿来示波器看下,发现默认是低电平

  • 相关阅读:
    41、XAML text editing
    使用JavaScript和DOM动态创建和修改表格(转)
    ThinkPHP入门
    PHP字符串
    sicily 6773. 用指针交换两个矩阵
    sicily 6572. partial sum
    sicily 1934. 移动小球
    sicily 1323. Switch text
    sicily 6766. tmp
    sicily 1293. 3n+1数链问题
  • 原文地址:https://www.cnblogs.com/Iknowyou/p/3463993.html
Copyright © 2011-2022 走看看