历史上的今天
返回首页

历史上的今天

今天是:2025年03月17日(星期一)

正在发生

2020年03月17日 | msp430寄存器地址与宏定义位置

2020-03-17 来源:eefocus

这里以gpio代码为例说明如何在代码库与user guide中查看寄存器地址。


#include

/* main.c */

int main(void) {

    WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer

    P2DIR |= BIT7;

    int sgn0=-1;


    long index = 0;

    long time_unit = 25;//ms


    while(1){

        P2OUT |= BIT7;

        delay_ms(index);

        P2OUT &= ~BIT7;

        delay_ms(time_unit-index);

        if(index==0||index==(time_unit-1)){

            sgn0*=-1;

        }

        index = (index+sgn0)%time_unit;

    }

return 0;

}


void delay_ms(unsigned int usNum){

    int i=0;

    while(i        __delay_cycles(1000);    //单位:ms

        i++;

    }

}


在这里我们查找P2OUT 的地址,安装Ctrl键点击该变量,可以跳转到其宏定义处,依次查找如下:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

发现我们并没有找到P2OUT 的地址,实际上这个地址在另一个文件里面,它是通过链接脚本通过编译器链接的,因此在代码中无法找到。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

可以看到寄存器地址为0x0203,那么在user guide中我们在哪里查找这个地址呢?


首先找到这个寄存器:

打开msp430f6638_user_guide.pdf如下

在这里插入图片描述
在这里插入图片描述

可以看到PAOUT_H的偏移地址为0x03,然后再看黄字,显示说基地址查看芯片手册的设备特性章节,那么打开msp430f6638_Datasheet.pdf

在这里插入图片描述

于是我们找到了这个地址0x0200+0x03 = 0x0203

推荐阅读

史海拾趣

APX Technologies公司的发展小趣事

随着电子行业的快速发展,技术更新换代的速度越来越快。APX Technologies面临着来自同行的激烈竞争和不断变化的市场需求。为了应对这些挑战,公司不断调整战略方向,加大研发投入,优化产品结构。在稳中求进的过程中,APX Technologies逐渐巩固了自己的市场地位。

FWBELL公司的发展小趣事
自动调整充电模式以适应电池温度的变化,实现智能化充电管理。
Components Corporation公司的发展小趣事
使用温度传感器(如热敏电阻或IC)紧贴电池表面,实时检测电池温度。
General Diode Corp公司的发展小趣事
保护气体流量不足或漏气。
无锡友达公司的发展小趣事

无锡友达深知技术创新的重要性,因此不断加大对研发团队的投入。公司拥有一支经验丰富、技术实力雄厚的研发团队,以及一流的成套设计工具和测试设备。这些团队和工具为公司开发具有自主知识产权的产品提供了有力保障。在数模混合信号处理领域,无锡友达拥有自己的系统设计体系和核心技术,产品研发技术和量产能力处于国内前列。

广东华裕(GDHY)公司的发展小趣事

随着产品性能的不断提升和市场需求的扩大,无锡友达开始积极拓展国内外市场。公司的产品不仅覆盖国内二十多个省、市,还远销欧美、中东、港澳台等国家和地区。通过与国际知名企业的合作,无锡友达不断提升自身的品牌影响力,逐渐在全球电子行业中占据一席之地。

问答坊 | AI 解惑

无线通信 系统的实现与应用

摘 要! 介绍了城市路灯无线通信  系统的实现方法,包括监控中心组成与功能、无线通信方式及硬件电路模块设计。…

查看全部问答>

看到一个好玩的:屁强度探测器

探测的依据是    声音  温度  浓度 …

查看全部问答>

有人熟悉NTFS格式么?

最近做一个项目,需要支持移动硬盘,移动硬盘大部分都是NTFS的格式,但是目前维护的FAT文件系统不支持, 有没人熟悉NTFS的,可以请教下…

查看全部问答>

FPGA 除法器IP核的问题

我在用QUARTUS ii仿真其自带的LPM_DIVIDE核时,当输入的除数和被除数的位数比较少时,可以得到正确的结果,但是当输入的位数较多时为什么就得不到正确的结果了呢,也不是一个时钟计算一个结果,好像一直在计算。请问有没有好的多字节运算时能得出精 ...…

查看全部问答>

wince中分割窗体

用vs2005开发wince sdi程序,发现没有CSplitterWnd这个类,应该如何实现分割窗体呢?…

查看全部问答>

单片机小工具

分享一个AVR代码生成器小软件 …

查看全部问答>

武林学习LM3S811(五)中断按键

参考周立功的实例,实现按键中断翻转LED的功能。为的下次触摸芯片驱动做准备。 工程:…

查看全部问答>

比较器电压问题

问个问题,大家用比较器时候的+12v和-12v是怎么提供的???????? (可能问题有点弱啊哈哈哈)…

查看全部问答>

DSPF2812程序变量在CCS3.3遇到图形显示问题

各位我最近研究DSPF2812,看到DSP可以显示变量或其它的图形变化情况,自己便试了下,发现没有得到预期效果。 自己的程序很简单(图1),就是在主函数的无限循环中反复改变变量i,期望看到i变化的图形。可是当自己运行完程序后(软仿真),下载程序 ...…

查看全部问答>

iPad商标案今日终审 律师称苹果凶多吉少

本帖最后由 jameswangsynnex 于 2015-3-3 19:57 编辑 今日上午9时,备受外界关注的“IPAD”商标权纠纷一案将在广东省高级人民法院第一法庭开庭,判决结果或将决定商标的最终归属并影响苹果平板电脑在全球的销售进展。 维持原判的可能性更大,苹果 ...…

查看全部问答>