搜索
热搜: 博途 单片机 CAD
查看: 41|回复: 0

[原创帖] 如何在Keil中直接使用二进制数?

[复制链接]

64

主题

70

帖子

1103

积分

管理员

Rank: 9Rank: 9Rank: 9

GB

984

威望

16

热心值

2

精华

10

主题
64

违规

0

GKR 发表于 2019-7-23 12:56:40 |阅读模式
我们都知道用KEIL写51的汇编程序,可以用二进制数字后加“B”表示,比如0x2A =  00101010B
而KEIL的C编译器不支持写二进制数,所以KEIL的C程序不能直接用二进制数表示。
但如果你自定义一个#define B00101010 0x2A 这句话,那下面的程序就可以直接使用B00101010来表示了。
因此,只需要把这个些写进一个头文件里,用的时候include这个文件即可。
这样在写程序时,可以直接给端口赋二进制的值。
下面放出头文件源代码:
  1.   /** 让KEIL输入二进制的头文件 **/
  2.   /** BtoH.h **/
  3.   /** 工控人论坛-gongkong.ren **/
  4.   
  5.   #define B00000000 0x00
  6.   #define B00000001 0x01
  7.   #define B00000010 0x02
  8.   #define B00000011 0x03
  9.   #define B00000100 0x04
  10.   #define B00000101 0x05
  11.   #define B00000110 0x06
  12.   #define B00000111 0x07
  13.   #define B00001000 0x08
  14.   #define B00001001 0x09
  15.   #define B00001010 0x0A
  16.   #define B00001011 0x0B
  17.   #define B00001100 0x0C
  18.   #define B00001101 0x0D
  19.   #define B00001110 0x0E
  20.   #define B00001111 0x0F
  21.   
  22.   #define B00010000 0x10
  23.   #define B00010001 0x11
  24.   #define B00010010 0x12
  25.   #define B00010011 0x13
  26.   #define B00010100 0x14
  27.   #define B00010101 0x15
  28.   #define B00010110 0x16
  29.   #define B00010111 0x17
  30.   #define B00011000 0x18
  31.   #define B00011001 0x19
  32.   #define B00011010 0x1A
  33.   #define B00011011 0x1B
  34.   #define B00011100 0x1C
  35.   #define B00011101 0x1D
  36.   #define B00011110 0x1E
  37.   #define B00011111 0x1F
  38.   
  39.   #define B00100000 0x20
  40.   #define B00100001 0x21
  41.   #define B00100010 0x22
  42.   #define B00100011 0x23
  43.   #define B00100100 0x24
  44.   #define B00100101 0x25
  45.   #define B00100110 0x26
  46.   #define B00100111 0x27
  47.   #define B00101000 0x28
  48.   #define B00101001 0x29
  49.   #define B00101010 0x2A
  50.   #define B00101011 0x2B
  51.   #define B00101100 0x2C
  52.   #define B00101101 0x2D
  53.   #define B00101110 0x2E
  54.   #define B00101111 0x2F
  55.   
  56.   #define B00110000 0x30
  57.   #define B00110001 0x31
  58.   #define B00110010 0x32
  59.   #define B00110011 0x33
  60.   #define B00110100 0x34
  61.   #define B00110101 0x35
  62.   #define B00110110 0x36
  63.   #define B00110111 0x37
  64.   #define B00111000 0x38
  65.   #define B00111001 0x39
  66.   #define B00111010 0x3A
  67.   #define B00111011 0x3B
  68.   #define B00111100 0x3C
  69.   #define B00111101 0x3D
  70.   #define B00111110 0x3E
  71.   #define B00111111 0x3F
  72.   
  73.   #define B01000000 0x40
  74.   #define B01000001 0x41
  75.   #define B01000010 0x42
  76.   #define B01000011 0x43
  77.   #define B01000100 0x44
  78.   #define B01000101 0x45
  79.   #define B01000110 0x46
  80.   #define B01000111 0x47
  81.   #define B01001000 0x48
  82.   #define B01001001 0x49
  83.   #define B01001010 0x4A
  84.   #define B01001011 0x4B
  85.   #define B01001100 0x4C
  86.   #define B01001101 0x4D
  87.   #define B01001110 0x4E
  88.   #define B01001111 0x4F
  89.   
  90.   #define B01010000 0x50
  91.   #define B01010001 0x51
  92.   #define B01010010 0x52
  93.   #define B01010011 0x53
  94.   #define B01010100 0x54
  95.   #define B01010101 0x55
  96.   #define B01010110 0x56
  97.   #define B01010111 0x57
  98.   #define B01011000 0x58
  99.   #define B01011001 0x59
  100.   #define B01011010 0x5A
  101.   #define B01011011 0x5B
  102.   #define B01011100 0x5C
  103.   #define B01011101 0x5D
  104.   #define B01011110 0x5E
  105.   #define B01011111 0x5F
  106.   
  107.   #define B01100000 0x60
  108.   #define B01100001 0x61
  109.   #define B01100010 0x62
  110.   #define B01100011 0x63
  111.   #define B01100100 0x64
  112.   #define B01100101 0x65
  113.   #define B01100110 0x66
  114.   #define B01100111 0x67
  115.   #define B01101000 0x68
  116.   #define B01101001 0x69
  117.   #define B01101010 0x6A
  118.   #define B01101011 0x6B
  119.   #define B01101100 0x6C
  120.   #define B01101101 0x6D
  121.   #define B01101110 0x6E
  122.   #define B01101111 0x6F
  123.   
  124.   #define B01110000 0x70
  125.   #define B01110001 0x71
  126.   #define B01110010 0x72
  127.   #define B01110011 0x73
  128.   #define B01110100 0x74
  129.   #define B01110101 0x75
  130.   #define B01110110 0x76
  131.   #define B01110111 0x77
  132.   #define B01111000 0x78
  133.   #define B01111001 0x79
  134.   #define B01111010 0x7A
  135.   #define B01111011 0x7B
  136.   #define B01111100 0x7C
  137.   #define B01111101 0x7D
  138.   #define B01111110 0x7E
  139.   #define B01111111 0x7F
  140.   
  141.   #define B10000000 0x80
  142.   #define B10000001 0x81
  143.   #define B10000010 0x82
  144.   #define B10000011 0x83
  145.   #define B10000100 0x84
  146.   #define B10000101 0x85
  147.   #define B10000110 0x86
  148.   #define B10000111 0x87
  149.   #define B10001000 0x88
  150.   #define B10001001 0x89
  151.   #define B10001010 0x8A
  152.   #define B10001011 0x8B
  153.   #define B10001100 0x8C
  154.   #define B10001101 0x8D
  155.   #define B10001110 0x8E
  156.   #define B10001111 0x8F
  157.   
  158.   #define B10010000 0x90
  159.   #define B10010001 0x91
  160.   #define B10010010 0x92
  161.   #define B10010011 0x93
  162.   #define B10010100 0x94
  163.   #define B10010101 0x95
  164.   #define B10010110 0x96
  165.   #define B10010111 0x97
  166.   #define B10011000 0x98
  167.   #define B10011001 0x99
  168.   #define B10011010 0x9A
  169.   #define B10011011 0x9B
  170.   #define B10011100 0x9C
  171.   #define B10011101 0x9D
  172.   #define B10011110 0x9E
  173.   #define B10011111 0x9F
  174.   
  175.   #define B10100000 0xA0
  176.   #define B10100001 0xA1
  177.   #define B10100010 0xA2
  178.   #define B10100011 0xA3
  179.   #define B10100100 0xA4
  180.   #define B10100101 0xA5
  181.   #define B10100110 0xA6
  182.   #define B10100111 0xA7
  183.   #define B10101000 0xA8
  184.   #define B10101001 0xA9
  185.   #define B10101010 0xAA
  186.   #define B10101011 0xAB
  187.   #define B10101100 0xAC
  188.   #define B10101101 0xAD
  189.   #define B10101110 0xAE
  190.   #define B10101111 0xAF
  191.   
  192.   #define B10110000 0xB0
  193.   #define B10110001 0xB1
  194.   #define B10110010 0xB2
  195.   #define B10110011 0xB3
  196.   #define B10110100 0xB4
  197.   #define B10110101 0xB5
  198.   #define B10110110 0xB6
  199.   #define B10110111 0xB7
  200.   #define B10111000 0xB8
  201.   #define B10111001 0xB9
  202.   #define B10111010 0xBA
  203.   #define B10111011 0xBB
  204.   #define B10111100 0xBC
  205.   #define B10111101 0xBD
  206.   #define B10111110 0xBE
  207.   #define B10111111 0xBF
  208.   
  209.   #define B11000000 0xC0
  210.   #define B11000001 0xC1
  211.   #define B11000010 0xC2
  212.   #define B11000011 0xC3
  213.   #define B11000100 0xC4
  214.   #define B11000101 0xC5
  215.   #define B11000110 0xC6
  216.   #define B11000111 0xC7
  217.   #define B11001000 0xC8
  218.   #define B11001001 0xC9
  219.   #define B11001010 0xCA
  220.   #define B11001011 0xCB
  221.   #define B11001100 0xCC
  222.   #define B11001101 0xCD
  223.   #define B11001110 0xCE
  224.   #define B11001111 0xCF
  225.   
  226.   #define B11010000 0xD0
  227.   #define B11010001 0xD1
  228.   #define B11010010 0xD2
  229.   #define B11010011 0xD3
  230.   #define B11010100 0xD4
  231.   #define B11010101 0xD5
  232.   #define B11010110 0xD6
  233.   #define B11010111 0xD7
  234.   #define B11011000 0xD8
  235.   #define B11011001 0xD9
  236.   #define B11011010 0xDA
  237.   #define B11011011 0xDB
  238.   #define B11011100 0xDC
  239.   #define B11011101 0xDD
  240.   #define B11011110 0xDE
  241.   #define B11011111 0xDF
  242.   
  243.   #define B11100000 0xE0
  244.   #define B11100001 0xE1
  245.   #define B11100010 0xE2
  246.   #define B11100011 0xE3
  247.   #define B11100100 0xE4
  248.   #define B11100101 0xE5
  249.   #define B11100110 0xE6
  250.   #define B11100111 0xE7
  251.   #define B11101000 0xE8
  252.   #define B11101001 0xE9
  253.   #define B11101010 0xEA
  254.   #define B11101011 0xEB
  255.   #define B11101100 0xEC
  256.   #define B11101101 0xED
  257.   #define B11101110 0xEE
  258.   #define B11101111 0xEF
  259.   
  260.   #define B11110000 0xF0
  261.   #define B11110001 0xF1
  262.   #define B11110010 0xF2
  263.   #define B11110011 0xF3
  264.   #define B11110100 0xF4
  265.   #define B11110101 0xF5
  266.   #define B11110110 0xF6
  267.   #define B11110111 0xF7
  268.   #define B11111000 0xF8
  269.   #define B11111001 0xF9
  270.   #define B11111010 0xFA
  271.   #define B11111011 0xFB
  272.   #define B11111100 0xFC
  273.   #define B11111101 0xFD
  274.   #define B11111110 0xFE
  275.   #define B11111111 0xFF
复制代码



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明:
工控人论坛(gongkong.ren)所发布的一切破解补丁、注册机和注册信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。

Mail To:Admin@Zwying.Com

快速回复 返回列表 搜索

QQ|Archiver|手机版|小黑屋|工控人 ( 京ICP备17025554号-4 )|网站地图

GMT+8, 2019-9-18 15:32 , Processed in 0.054962 second(s), 9 queries , Redis On.

本站由 Discuz! X3.4 强力驱动

© 2019 GongKongRen Inc.

快速回复 返回顶部 返回列表