野火电子论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12049|回复: 8

学习3天火哥的布置的课后习题GPIOB_BSRR 流水,话不多说来代码

[复制链接]
发表于 2016-9-18 17:17:36 | 显示全部楼层 |阅读模式
  1. [/size]
  2. [size=4]//外设 peripheral[/size]
  3. [size=4]
  4. [/size]
  5. [size=4]/*总线基址*/[/size]
  6. [size=4]#define   PERIPH_BASE       ((unsigned int)0x40000000)[/size]
  7. [size=4]/*APB2基址*/[/size]
  8. [size=4]#define   APB2PERIPH_BASE        (PERIPH_BASE+0x10000)[/size]
  9. [size=4]/*APB基址*/[/size]
  10. [size=4]#define   AHBPERIPH_BASE    (PERIPH_BASE+0x20000)[/size]
  11. [size=4]        [/size]
  12. [size=4]/*GPIO配置地址*/[/size]
  13. [size=4]#define   GPIOB_BASE        (APB2PERIPH_BASE+0x0C00)[/size]
  14. [size=4]#define   RCC_BASE          (AHBPERIPH_BASE+0x1000)[/size]
  15. [size=4]
  16. [/size]
  17. [size=4]/*定义寄存器*/[/size]
  18. [size=4]#define   RCC_APB2ENR                *(unsigned int*)(RCC_BASE+0x18)[/size]
  19. [size=4]
  20. [/size]
  21. [size=4]#define   GPIOB_CRL         *(unsigned int*)(GPIOB_BASE+0X00)[/size]
  22. [size=4]#define   GPIOB_ODR         *(unsigned int*)(GPIOB_BASE+0X0C)[/size]
  23. [size=4]#define   GPIOB_BSRR        *(unsigned int*)(GPIOB_BASE+0X10)[/size]
  24. [size=4]#define   GPIOB_BRR         *(unsigned int*)(GPIOB_BASE+0X14)[/size]




  25. [size=5]#include"stm32f10x.h"[/size]
  26. [size=5]
  27. [/size]
  28. [size=5]
  29. [/size]
  30. [size=5]void delay(unsigned int j)[/size]
  31. [size=5]{ [/size]
  32. [size=5]        while(j--);[/size]
  33. [size=5]}[/size]
  34. [size=5]
  35. [/size]
  36. [size=5]int main()[/size]
  37. [size=5]{[/size]
  38. [size=5]
  39. [/size]
  40. [size=5]        //设置RCC时钟[/size]
  41. [size=5]        RCC_APB2ENR |= ((1)<<3);[/size]
  42. [size=5]        [/size]
  43. [size=5]        //配置GPIO-PB0输出[/size]
  44. [size=5]        GPIOB_CRL |= ((1)<<(4*0));[/size]
  45. [size=5]        [/size]
  46. [size=5]        //配置GPIO-PB1输出[/size]
  47. [size=5]        GPIOB_CRL |= ((1)<<(4*1));[/size]
  48. [size=5]        [/size]
  49. [size=5]        //配置GPIO-PB5输出[/size]
  50. [size=5]        GPIOB_CRL |= ((1)<<(4*5));[/size]
  51. [size=5]        [/size]
  52. [size=5]        [/size]
  53. [size=5]        while(1)[/size]
  54. [size=5]        {                [/size]
  55. [size=5]                [/size]
  56. [size=5]        /*GPIOB_ODR &= ~(1<<0);[/size]
  57. [size=5]        delay(0xffff);        [/size]
  58. [size=5]        delay(0xffff);[/size]
  59. [size=5]        delay(0xffff);        [/size]
  60. [size=5]        delay(0xffff);[/size]
  61. [size=5]        GPIOB_ODR |= (1<<0);[/size]
  62. [size=5]        delay(0xffff);        [/size]
  63. [size=5]        delay(0xffff);[/size]
  64. [size=5]        delay(0xffff);        [/size]
  65. [size=5]        delay(0xffff);[/size]
  66. [size=5]                        [/size]
  67. [size=5]  GPIOB_ODR &= ~(1<<1);[/size]
  68. [size=5]        delay(0xffff);        [/size]
  69. [size=5]        delay(0xffff);[/size]
  70. [size=5]        delay(0xffff);        [/size]
  71. [size=5]        delay(0xffff);[/size]
  72. [size=5]        GPIOB_ODR |= (1<<1);[/size]
  73. [size=5]        delay(0xffff);        [/size]
  74. [size=5]        delay(0xffff);[/size]
  75. [size=5]        delay(0xffff);        [/size]
  76. [size=5]        delay(0xffff);[/size]
  77. [size=5]        [/size]
  78. [size=5]        [/size]
  79. [size=5]        GPIOB_ODR &= ~(1<<5);[/size]
  80. [size=5]        delay(0xffff);        [/size]
  81. [size=5]        delay(0xffff);[/size]
  82. [size=5]        delay(0xffff);        [/size]
  83. [size=5]        delay(0xffff);[/size]
  84. [size=5]        GPIOB_ODR |= (1<<5);[/size]
  85. [size=5]        delay(0xffff);        [/size]
  86. [size=5]        delay(0xffff);[/size]
  87. [size=5]        delay(0xffff);        [/size]
  88. [size=5]        delay(0xffff);*/[/size]
  89. [size=5]        [/size]
  90. [size=5]        [/size]
  91. [size=5]        //复位+置位寄存器操作[/size]
  92. [size=5]        GPIOB_BSRR |= (1<<0);[/size]
  93. [size=5]  GPIOB_BSRR |= (1<<1);        [/size]
  94. [size=5]        GPIOB_BSRR |= (1<<5);[/size]
  95. [size=5]        delay(0xffff);        [/size]
  96. [size=5]        delay(0xffff);[/size]
  97. [size=5]        delay(0xffff);        [/size]
  98. [size=5]        delay(0xffff);[/size]
  99. [size=5]        GPIOB_BSRR |= (1<<16);[/size]
  100. [size=5]        GPIOB_BSRR |= (1<<1);        [/size]
  101. [size=5]        GPIOB_BSRR |= (1<<5);[/size]
  102. [size=5]        delay(0xffff);        [/size]
  103. [size=5]        delay(0xffff);[/size]
  104. [size=5]        delay(0xffff);        [/size]
  105. [size=5]        delay(0xffff);[/size]
  106. [size=5]        [/size]
  107. [size=5]        [/size]
  108. [size=5]        GPIOB_BSRR |= (1<<0);[/size]
  109. [size=5]  GPIOB_BSRR |= (1<<1);        [/size]
  110. [size=5]        GPIOB_BSRR |= (1<<5);[/size]
  111. [size=5]        delay(0xffff);        [/size]
  112. [size=5]        delay(0xffff);[/size]
  113. [size=5]        delay(0xffff);        [/size]
  114. [size=5]        delay(0xffff);[/size]
  115. [size=5]        GPIOB_BSRR |= (1<<0);[/size]
  116. [size=5]        GPIOB_BSRR |= (1<<17);        [/size]
  117. [size=5]        GPIOB_BSRR |= (1<<5);[/size]
  118. [size=5]        delay(0xffff);        [/size]
  119. [size=5]        delay(0xffff);[/size]
  120. [size=5]        delay(0xffff);        [/size]
  121. [size=5]        delay(0xffff);[/size]
  122. [size=5]        [/size]
  123. [size=5]        [/size]
  124. [size=5]        GPIOB_BSRR |= (1<<0);[/size]
  125. [size=5]  GPIOB_BSRR |= (1<<1);        [/size]
  126. [size=5]        GPIOB_BSRR |= (1<<5);[/size]
  127. [size=5]        delay(0xffff);        [/size]
  128. [size=5]        delay(0xffff);[/size]
  129. [size=5]        delay(0xffff);        [/size]
  130. [size=5]        delay(0xffff);[/size]
  131. [size=5]        GPIOB_BSRR |= (1<<0);[/size]
  132. [size=5]        GPIOB_BSRR |= (1<<1);        [/size]
  133. [size=5]        GPIOB_BSRR |= (1<<21);[/size]
  134. [size=5]        delay(0xffff);        [/size]
  135. [size=5]        delay(0xffff);[/size]
  136. [size=5]        delay(0xffff);        [/size]
  137. [size=5]        delay(0xffff);[/size]
  138. [size=5]        }[/size]
  139. [size=5]
  140. [/size]
  141. [size=5]}[/size]
  142. [size=5]
  143. [/size]
  144. [size=5]void SystemInit()[/size]
  145. [size=5]{[/size]
  146. [size=5]        [/size]
  147. [size=5]}[/size]
复制代码


回复

使用道具 举报

 楼主| 发表于 2016-9-18 17:18:11 | 显示全部楼层
快点来支持,支持
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-9-18 17:18:39 | 显示全部楼层
不来支持,我自己来支持了;P;P;P;P;P
回复 支持 反对

使用道具 举报

发表于 2016-9-18 17:20:03 | 显示全部楼层
你这个延时写的是不是有点多
回复 支持 反对

使用道具 举报

发表于 2016-9-18 17:22:32 | 显示全部楼层
表示看不懂,帮顶
回复 支持 反对

使用道具 举报

发表于 2016-9-18 17:26:49 | 显示全部楼层
直接发工程上来啊,我直接烧写到开发板上运行下。
回复 支持 反对

使用道具 举报

发表于 2016-9-18 17:28:26 | 显示全部楼层
编译可以通过吗?
回复 支持 反对

使用道具 举报

发表于 2016-9-19 08:50:40 | 显示全部楼层
你自己数数,总共多少句,delay占了多少句。
回复 支持 反对

使用道具 举报

发表于 2016-9-19 09:53:16 | 显示全部楼层
这么复杂的流水灯
回复 支持 反对

使用道具 举报

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

本版积分规则

联系站长|手机版|野火电子官网|野火淘宝店铺|野火电子论坛 ( 粤ICP备14069197号 ) 大学生ARM嵌入式2群

GMT+8, 2024-5-20 16:56 , Processed in 0.067653 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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