This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] MSP-EXP430FR6989:使 LED#39闪烁

Guru**** 542470 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1180384/msp-exp430fr6989-blinking-led-s

器件型号:MSP-EXP430FR6989

我在完成此代码时遇到了一些问题、我需要使 LED 闪烁、而不是按 顺序排列、我认为我会破坏配置。

;------------------------------------------------------------------
;与 TI Code Composer Studio 一起使用的 MSP430汇编器代码模板


;------------------------------------------------------------------
           cdecls C、list、"msp430.h"      ;包含器件头文件
           
;------------------------------------------------------------------
           .def   重置                  ;将程序入口点导出到
                                           ;使链接器知道它。
;------------------------------------------------------------------
           .text                          ;汇编到程序存储器中。
           .retain                        ;覆盖 ELF 条件链接
                                           ;并保留当前部分。
           .retainrefs                    ;并保留具有的任何段
                                           ;对当前段的引用。

;------------------------------------------------------------------
重置      mov.w  #_stack_end、SP        ;初始化 stackpointer
StopWDT    mov.w  #WDTPW|WDTHOLD、&WDTCTL ;停止看门狗计时器


;------------------------------------------------------------------
;这里是主循环
;------------------------------------------------------------------

;将计时器 B0配置为抛出中断
         BIS.w   #TBCLR、&TB0CTL             
         BIS.w   #TBSSEL_ACLK、&TB0CTL       
         BIS.w   #MC__Continous、&TB0CTL    
         BIS.w   #CNTL__12、&TB0CTL         ;计数器长度= 12位
         BIS.w   #ID__4、&TB0CTL             ;分频频率 4
         BIS.w   #TBIE、&TB0CTL             ;启用中断


         
         BIS.b   #BIT1、&P1REN      ;启用电阻器
         BIS.b   #BIT1,&P1OUT      ;选择上拉电阻器
         BIS.b   #BIT1、&P1IES      ;下降沿触发
         BIS.b   #BIT1、&P1IE      ;中断被启用


         BIS.b   #BIT2、&P1REN      ;启用电阻器
         BIS.b   #BIT2、&P1OUT      ;选择上拉
         BIS.b   #BIT2、&P1IES      ;上拉电阻器
         BIS.b   #BIT2、&P1IE      ;下降边沿触发中断
         
         
         
         
         ;禁用电源锁定以为 GPIO 供电
         BIC.w   #LOCKLPM5、&PM5CTL0


         NOP
         BIS.w   #GIE|LPM3、SR
         NOP


;------------------------------------------------------------------
;中断服务例程
;------------------------------------------------------------------
Timer_B0_ISR:

;在此处添加代码,不要忘记添加中断矢量
      BIC.b   #TBIFG、&TBCTL                ;测试和清除

      XOR.b   位#0、&P1OUT                ;切换绿色和红色 LED
      XOR.b   位#6、&P1OUT

      TI

;------------------------------------------------------------------
;堆栈指针定义
;------------------------------------------------------------------
           .global __stack_end
           .sect  .stack
           
;------------------------------------------------------------------
;中断矢量
;------------------------------------------------------------------

           .sect ".int37"
           Timer_B0_ISR

           .sect  ".reset"               ;MSP430复位矢量
           短路 复位

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    我们已经编写了用于使 LED 闪烁的代码示例。 是一个 e2e 线程、它具有您正在寻找的内容、包括代码以及如何下载。

    最棒的
    Amruta

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    非常感谢、我将尝试在安装了其他软件的情况下浏览 CCS、但指南的版本不同。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我找到了它、但我需要将代码写入 C 语言、而不是汇编语言。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    如果您将此代码下载到 CCS 中、则应在构建项目后转到 View > Disassembly、从 C 代码中找到汇编代码。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    以下是汇编示例:

    https://dev.ti.com/tirex/explore/node?node=A__AC1Y-fsXYsBusLnD7m-Imw__msp430ware__IOGqZri__LATEST&placeholder=true

    您好像正在启用一些 GPIO 中断、但我看不到它们的 ISR。