最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

求助:這段代碼是什么意思?

作者:珊瑚蟲 欄目:嵌入式系統(tǒng)
求助:這段代碼是什么意思?
void TOSH_SET_PIN_DIRECTIONS(void )
{
  * (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned   CHAR *)(0x1A + 0x20) = 0x00;
  * (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned CHAR *)(0x17 + 0x20) = 0x00;
  * (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned CHAR *)(0x11 + 0x20) = 0x00;
  * (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned CHAR *)(0x02 + 0x20) = 0x02;
  * (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned CHAR *)(0x03 + 0x20) = 0x02;
  TOSH_MAKE_RED_LED_OUTPUT();
  TOSH_MAKE_YELLOW_LED_OUTPUT();
  TOSH_MAKE_GREEN_LED_OUTPUT();
  TOSH_MAKE_POT_SELECT_OUTPUT();
  TOSH_MAKE_POT_POWER_OUTPUT();

  TOSH_MAKE_PW7_OUTPUT();
  TOSH_MAKE_PW6_OUTPUT();
  TOSH_MAKE_PW5_OUTPUT();
  TOSH_MAKE_PW4_OUTPUT();
  TOSH_MAKE_PW3_OUTPUT();
  TOSH_MAKE_PW2_OUTPUT();
  TOSH_MAKE_PW1_OUTPUT();
  TOSH_MAKE_PW0_OUTPUT();

  TOSH_MAKE_RFM_CTL0_OUTPUT();
  TOSH_MAKE_RFM_CTL1_OUTPUT();
  TOSH_MAKE_RFM_TXD_OUTPUT();
  TOSH_SET_POT_POWER_PIN();



  TOSH_MAKE_FLASH_SELECT_INPUT();

  TOSH_SET_RED_LED_PIN();
  TOSH_SET_YELLOW_LED_PIN();
  TOSH_SET_GREEN_LED_PIN();


  TOSH_MAKE_BOOST_ENABLE_OUTPUT();
  TOSH_SET_BOOST_ENABLE_PIN();

  TOSH_MAKE_ONE_WIRE_INPUT();
  TOSH_SET_ONE_WIRE_PIN();
}

這是nesC編譯器nc產(chǎn)生的中間代碼文件中的一段,它的硬件平臺是ATMEGA103,顯然這是一段設置引腳是輸入還是輸出的代碼,但是前幾句這實在是搞不懂,如
* (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned   CHAR *)(0x1A + 0x20) = 0x00;

這是怎樣的一段類型轉(zhuǎn)換啊?
最終的類型是什么,volatile unsigned CHAR*?

請達人指點,謝謝啦.


2樓: >>參與討論
computer00
最終類型應該是volatile unsigned CHAR *型。
   搞不懂,中間哪兩次轉(zhuǎn)換有什么用?

3樓: >>參與討論
jxp_sun
分解
* (volatile unsigned CHAR *)(unsigned int )& * (volatile unsigned   CHAR *)(0x1A + 0x20) = 0x00;

a = (volatile unsigned   CHAR *)(0x1A + 0x20)
//a = (0x1A + 0x20)存儲單元里的值, 是一個CHAR pointer type, 長度為指針長度. 4 bytes ? 8 bytes?

& * 指針所紙的是地址

b =  (unsigned int )a ;  

c = * (volatile unsigned CHAR *)b;

right or not?

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請教-- 自己做HUB用什么芯片?
網(wǎng)口濾波電容問題
急購ST5518防真器和相關(guān)開發(fā)工具
誰有全串口的使用資料,共享一下吧!謝謝阿!
請教x86的程序從兩片AT20C010讀出后怎么拼接再反匯編
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 udpf.com.cn 浙ICP證030469號