国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

查看: 4534|回復(fù): 4
打印 上一主題 下一主題

關(guān)于DSP281X變量地址定位問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
發(fā)表于 2009-4-2 21:56:54 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
關(guān)鍵詞: 變量 , DSP281X , 地址定位
在結(jié)合硬件的編程中,有些變量需要特定地址.

一般可以采用指針變量.
例如:
unsigned int *LedReg   = (unsigned int *)0x5f00;//發(fā)光二極管地址
*LedReg = 0xFF;

但有些時(shí)候感覺不是太好時(shí),可以像Keil那樣

unsigned int LedReg at 0x5f00;//發(fā)光二極管地址
LedReg = 0xFF;

這樣看著"比較順眼"~~~
但在TIDSP的CCS環(huán)境下,不能采用at或__at等來(lái)定位地址.
不過(guò)CCS也提供了類似的手段,不過(guò)有些"麻煩".

具體實(shí)現(xiàn):

1.在CMD文件中

MEMORY
{
PAGE 0:    /* Program Memory */

PAGE 1:    /* Data Memory */

   LED_REG     : origin = 0x005f00, length = 0x00001 /*發(fā)光二極管地址*/
   LCD_ComL    : origin = 0x005100, length = 0x00001
   LCD_ComH    : origin = 0x005200, length = 0x00001
   LCD_DatL    : origin = 0x005300, length = 0x00001
   LCD_DatH    : origin = 0x005400, length = 0x00001
   EINT_REG    : origin = 0x005c00, length = 0x00001
   KEY_REG     : origin = 0x005b00, length = 0x00001
   RCLK_REG    : origin = 0x005500, length = 0x00001 /*數(shù)碼管鎖存地址*/
}


SECTIONS
{
   LedDataRegsFile   : > LED_REG,     PAGE = 1
   LcdComlRegsFile   : > LCD_ComL,    PAGE = 1
   LcdComhRegsFile   : > LCD_ComH,    PAGE = 1
   LcdDatlRegsFile   : > LCD_DatL,    PAGE = 1
   LcdDathRegsFile   : > LCD_DatH,    PAGE = 1
   KeyRegsFile       : > KEY_REG,     PAGE = 1
   EintRegsFile      : > EINT_REG,    PAGE = 1
   RclkRegsFile      : > RCLK_REG,    PAGE = 1
}

2.在C/C++文件中


#ifdef __cplusplus
#pragma DATA_SECTION("LedDataRegsFile") /*C++語(yǔ)言格式*/
#else
#pragma DATA_SECTION(LedRegs,"LedDataRegsFile");/*C語(yǔ)言格式*/
#endif
volatile unsigned int LedRegs;

/*以下為C++語(yǔ)言格式*/

#pragma DATA_SECTION("LcdComlRegsFile")
volatile unsigned int LcdComL;
#pragma DATA_SECTION("LcdComhRegsFile")
volatile unsigned int LcdComH;
#pragma DATA_SECTION("LcdDatlRegsFile")
volatile unsigned int LcdDatL;
#pragma DATA_SECTION("LcdDathRegsFile")
volatile unsigned int LcdDatH;

#pragma DATA_SECTION("EintRegsFile")
volatile unsigned int EintRegs;

#pragma DATA_SECTION("KeyRegsFile")
volatile unsigned char KeyRegs;

#pragma DATA_SECTION("RclkRegsFile")
volatile bool SpiRclkRegs;


3.在應(yīng)用程序中

extern unsigned int LedRegs;
extern volatile unsigned int EintRegs;
extern volatile unsigned char KeyRegs;
extern volatile bool SpiRclkRegs;
//............
LedRegs = 0xff;//這樣就不需要指針變量的寫法了
//..................

HotPower@126.com 2008.4.17 1:34
沙發(fā)
發(fā)表于 2009-6-18 17:36:17 | 只看該作者
我看得就挺順眼的 不過(guò)從版主這收益良多啦!

板凳
發(fā)表于 2010-7-26 10:24:11 | 只看該作者
太強(qiáng)了
地板
發(fā)表于 2010-9-19 15:03:25 | 只看該作者
說(shuō)的好,明白了
地下室
發(fā)表于 2010-9-21 11:59:46 | 只看該作者
說(shuō)的好,明白了

本版積分規(guī)則

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美一区二区三区在线播放 | 91亚色视频在线观看 | 麻豆高清视频 | 四虎精品在线视频 | 亚洲第二区 | 四虎国产永久免费久久 | 99国产精品一区二区 | 韩国一级成a人片在线观看 韩国一级a毛片 | 日韩成人中文字幕 | 视频一区在线播放 | 在线观看精品国产 | 在线五月天 | 亚洲精彩视频在线观看 | 日韩视频免费在线播放 | 国产成人在线视频播放 | 99久久免费观看 | 欧美激情综合 | 91久久精品国产91性色tv | 欧美日韩另类国产 | 亚洲精品日韩中文字幕久久久 | 一二三四免费高清视频社区 | 天天摸天天操免费播放小视频 | 日韩在线一 | 日韩一区国产二区欧美三区 | 欧美日韩中文字幕一区二区高清 | 香香视频免费版下载 | 色综合成人网 | 婷婷综合影院 | 人人九九精 | 日本二区在线观看 | 天堂地址在线3d区 | 国产精品麻豆一区二区三区 | 快看天堂在线免费 | 国产亚洲欧美在线播放网站 | 18到20岁女人一级毛片 | 国产三区视频 | 免费一级欧美大片久久网 | 网站免黄 | 免费国产h视频在线观看 | 美日韩在线| 91国偷自产一区二区三区蜜臀 |