久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6388|回復(fù): 1
收起左側(cè)

用單片機C語言的結(jié)構(gòu)體實現(xiàn)字節(jié)、位操作

[復(fù)制鏈接]
ID:140725 發(fā)表于 2017-3-22 03:30 | 顯示全部樓層 |閱讀模式
凌陽出的教程,用來學(xué)習(xí)單片機c語言非常不錯,主要講解了結(jié)構(gòu)體實現(xiàn)字節(jié)、位操作,下面是教程的截圖,完整版本請下載本帖的51黑附件。
0.png 0.png
0.png


源碼:

  1. /* ========================================================================= */
  2. /* The information contained herein is the exclusive property of             */
  3. /* Sunplus Technology Co. And shall not be distributed, reproduced,          */
  4. /* or disclosed in whole in part without prior written permission.           */
  5. /*             (C) COPYRIGHT 2004 SUNPLUS TECHNOLOGY CO.                     */
  6. /*                    ALL RIGHTS RESERVED                                    */
  7. /* The entire notice above must be reproduced on all authorized copies.      */
  8. /* ========================================================================= */
  9. /*                                                                                                                                                          */
  10. /* ========================================================================= */
  11. /* Project Name  : AN_SPMC75_0202                                                                             */
  12. /* File Name     : main.c                                                                                                          */
  13. /* Description   : Easy-to-Use Byte and Bit mode operation using C data          */
  14. /*                 structure                                                                            */
  15. /* Processor     : SPMC75F2413A                                                                                             */
  16. /* Tools             : u'nSP IDE tools v1.18.1A or later version                                 */
  17. /* ========================================================================= */
  18. /* Revision                                                                                                                                         */
  19. /* ========================================================================= */
  20. /* Version       :  1.00                                                                                                            */
  21. /* Date                         : 9.2                                                                                                 */
  22. /* Modified by   :        更換正規(guī)的文件頭和最新的頭文件                                                         */
  23. /* Description         :                                                                                                                     */
  24. /* ========================================================================= */

  25. #include        "AN_SPMC75_0202.H"

  26. //===========================================================================
  27. /*
  28. .Note:
  29.         將UInt16型變量variable強制轉(zhuǎn)換為GENBITSDEF類型的指針,
  30.         那么這樣一個指針ptr就可以具有GENBITSDEF類型所定義的
  31.         屬性和成員,對其操作就可以實現(xiàn)對ptr所指存儲空間進行操作。
  32. */
  33. #define        ptr        ((volatile GENTYPEDEF *)(&variable))        //普通變量強轉(zhuǎn)換類型

  34. main()
  35. {
  36.         UInt16 variable = 0;        //UInt16 變量定義
  37.         GENBITSDEF        sBits;                //自定義類型GENBITSDEF 變量定義
  38.         GENBYTEDEF        sByte;                //自定義類型GENBYTEDEF 變量定義
  39.         GENTYPEDEF        sMixb;                //自定義類型GENTYPEDEF 變量定義

  40.         P_IOD_Attrib->W = 0xFFFF;        //IOD初始化
  41.         P_IOD_Dir->W        = 0xFFFF;
  42.         P_IOD_Buffer->W        = 0xFFFF;
  43.         P_IOD_Data->W        = 0x0000;

  44.         sBits.W = 0xA5FF;                //字(Word)操作
  45.         sBits.B.bit0  = 0;                //位(Bit)操作
  46.         sBits.B.bit15 = 0;                //位(Bit)操作

  47.         sByte.W = 0xA5FF;                //字(Word)操作
  48.         sByte.B.byte0 = 0xA5;        //字節(jié)(Byte)操作
  49.         sByte.B.byte1 = 0xFF;        //字節(jié)(Byte)操作

  50.         sMixb.Word = 0xA5FF;        //字(Word)操作
  51.         sMixb.Bits.bit14 = 1;        //位(Bit)操作
  52.         sMixb.Bits.bit15 = 0;        //位(Bit)操作
  53.         sMixb.Byte.byte0 = 0;        //字節(jié)(Byte)操作
  54.         sMixb.Byte.byte1 = 0;        //字節(jié)(Byte)操作

  55.         ptr->Word = 0x90Fe;        //轉(zhuǎn)型后變量的操作方式
  56.         ptr->Bits.bit0  = 1;
  57.         ptr->Bits.bit15 = 0;
  58.         ptr->Byte.byte0 = 0xFF;
  59.         ptr->Byte.byte1 = 0x00;


  60.         while(1)
  61.         {
  62.                 LEDCHG->Byte.byte0 = 0xA5;        //對硬件(IOD)的字節(jié)(Byte)操作
  63.                 LEDCHG->Byte.byte0 = 0x5A;

  64.                 LEDCHG->Byte.byte1 = 0xA5;
  65.                 LEDCHG->Byte.byte1 = 0x5A;

  66.                 LEDCHG->Byte.byte0 = 0x00;
  67.                 LEDCHG->Byte.byte0 = 0xFF;

  68.                 LEDCHG->Byte.byte1 = 0x00;
  69.                 LEDCHG->Byte.byte1 = 0xFF;

  70.                 LEDCHG->Word           = 0x00;        //對硬件(IOD)的字(Word)操作

  71.                 LEDCHG->Bits.bit0 = 1;                //對硬件(IOD)的位(Bit)操作
  72.                 LEDCHG->Bits.bit0 = 0;

  73.                 LEDCHG->Bits.bit5 = 1;
  74.                 LEDCHG->Bits.bit5 = 0;

  75.                 LEDCHG->Bits.bit10 = 1;
  76.                 LEDCHG->Bits.bit10 = 0;

  77.                 LEDCHG->Bits.bit15 = 1;
  78.                 LEDCHG->Bits.bit15 = 0;
  79.         }
  80. }
復(fù)制代碼

完整教程和源碼下載:
用C語言的結(jié)構(gòu)體實現(xiàn)字節(jié)、位操作.rar (305.49 KB, 下載次數(shù): 46)


相關(guān)帖子

回復(fù)

使用道具 舉報

ID:180246 發(fā)表于 2017-3-22 15:08 | 顯示全部樓層
好資料,51黑有你更精彩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产精品久久久久久久久久久久久久 | 国产毛片久久久久久久久春天 | 成人啊啊啊 | 国产精品毛片久久久久久 | 色婷婷亚洲一区二区三区 | 99免费在线视频 | 国内精品在线视频 | 中文字幕1区 | 国产成人99久久亚洲综合精品 | 久久精品国产一区二区电影 | 伦理二区 | 超碰操| 麻豆视频在线免费观看 | 亚洲一二三区精品 | 国产精品视频一区二区三区四蜜臂 | 欧美精品久久久久久久久久 | 亚洲国产一区二区三区, | 日韩免费视频 | 精品久久香蕉国产线看观看亚洲 | 超碰超碰| 欧美四虎 | 欧美日韩一区二区在线观看 | 亚洲伊人久久综合 | 成人性视频免费网站 | 91中文| 欧美成人一区二免费视频软件 | 国产精品无码永久免费888 | 国产激情在线播放 | 九九国产 | av网站免费观看 | 久久久久久91 | 欧美成人免费在线视频 | 91久久久久 | 伊人色综合久久天天五月婷 | 岛国av一区二区三区 | 美国十次成人欧美色导视频 | 黄a在线观看 | 亚洲精品久久久久久久久久久 | 成人小视频在线观看 | 久久这里只有 | 久久午夜精品 |