首页下载资源硬件开发stm32f103c8+proteus8.9+温度传感器ds18b20

ZIPstm32f103c8+proteus8.9+温度传感器ds18b20

mym3513818695.79MB需要积分:1

资源文件列表:

stm32f103c8+proteus8.9+ds18b20.zip 大约有177个文件
  1. keil/
  2. keil/18b20.uvgui.1 136KB
  3. keil/18b20.uvopt 17.72KB
  4. keil/18b20.uvproj 20.5KB
  5. keil/CORE/
  6. keil/CORE/core_cm3.c 16.87KB
  7. keil/CORE/core_cm3.h 83.71KB
  8. keil/CORE/startup_stm32f10x_ld.s 12.09KB
  9. keil/Listings/
  10. keil/Listings/18b20.map 111.41KB
  11. keil/Listings/startup_stm32f10x_ld.lst 38.18KB
  12. keil/Objects/
  13. keil/Objects/18b20.axf 456.32KB
  14. keil/Objects/18b20.build_log.htm 1.19KB
  15. keil/Objects/18b20.hex 10.88KB
  16. keil/Objects/18b20.hex.asm 21B
  17. keil/Objects/18b20.htm 41.77KB
  18. keil/Objects/18b20.lnp 1.03KB
  19. keil/Objects/18b20.sct 479B
  20. keil/Objects/18b20_Target 1.dep 44.89KB
  21. keil/Objects/core_cm3.crf 3.85KB
  22. keil/Objects/core_cm3.d 107B
  23. keil/Objects/core_cm3.o 10.68KB
  24. keil/Objects/delay.crf 338.7KB
  25. keil/Objects/delay.d 1.51KB
  26. keil/Objects/delay.o 372.15KB
  27. keil/Objects/main.crf 342.95KB
  28. keil/Objects/main.d 1.45KB
  29. keil/Objects/main.o 393.68KB
  30. keil/Objects/misc.crf 338.36KB
  31. keil/Objects/misc.d 1.46KB
  32. keil/Objects/misc.o 372.79KB
  33. keil/Objects/startup_stm32f10x_ld.d 63B
  34. keil/Objects/startup_stm32f10x_ld.o 5.63KB
  35. keil/Objects/stm32f10x_adc.crf 345.36KB
  36. keil/Objects/stm32f10x_adc.d 1.75KB
  37. keil/Objects/stm32f10x_adc.o 417.86KB
  38. keil/Objects/stm32f10x_bkp.crf 339.28KB
  39. keil/Objects/stm32f10x_bkp.d 1.75KB
  40. keil/Objects/stm32f10x_bkp.o 382.22KB
  41. keil/Objects/stm32f10x_can.crf 346.93KB
  42. keil/Objects/stm32f10x_can.d 1.75KB
  43. keil/Objects/stm32f10x_can.o 403.69KB
  44. keil/Objects/stm32f10x_cec.crf 339.82KB
  45. keil/Objects/stm32f10x_cec.d 1.75KB
  46. keil/Objects/stm32f10x_cec.o 384.71KB
  47. keil/Objects/stm32f10x_crc.crf 337.92KB
  48. keil/Objects/stm32f10x_crc.d 1.75KB
  49. keil/Objects/stm32f10x_crc.o 373.76KB
  50. keil/Objects/stm32f10x_dac.crf 339.95KB
  51. keil/Objects/stm32f10x_dac.d 1.75KB
  52. keil/Objects/stm32f10x_dac.o 382.84KB
  53. keil/Objects/stm32f10x_dbgmcu.crf 337.72KB
  54. keil/Objects/stm32f10x_dbgmcu.d 1.85KB
  55. keil/Objects/stm32f10x_dbgmcu.o 370.02KB
  56. keil/Objects/stm32f10x_dma.crf 341.39KB
  57. keil/Objects/stm32f10x_dma.d 1.75KB
  58. keil/Objects/stm32f10x_dma.o 382.35KB
  59. keil/Objects/stm32f10x_exti.crf 338.9KB
  60. keil/Objects/stm32f10x_exti.d 1.79KB
  61. keil/Objects/stm32f10x_exti.o 376.7KB
  62. keil/Objects/stm32f10x_flash.crf 345.2KB
  63. keil/Objects/stm32f10x_flash.d 1.82KB
  64. keil/Objects/stm32f10x_flash.o 407.2KB
  65. keil/Objects/stm32f10x_fsmc.crf 343.74KB
  66. keil/Objects/stm32f10x_fsmc.d 1.79KB
  67. keil/Objects/stm32f10x_fsmc.o 393.31KB
  68. keil/Objects/stm32f10x_gpio.crf 341.77KB
  69. keil/Objects/stm32f10x_gpio.d 1.79KB
  70. keil/Objects/stm32f10x_gpio.o 392.2KB
  71. keil/Objects/stm32f10x_i2c.crf 344.15KB
  72. keil/Objects/stm32f10x_i2c.d 1.75KB
  73. keil/Objects/stm32f10x_i2c.o 412.21KB
  74. keil/Objects/stm32f10x_it.crf 338.02KB
  75. keil/Objects/stm32f10x_it.d 1.7KB
  76. keil/Objects/stm32f10x_it.o 380.36KB
  77. keil/Objects/stm32f10x_iwdg.crf 338.02KB
  78. keil/Objects/stm32f10x_iwdg.d 1.79KB
  79. keil/Objects/stm32f10x_iwdg.o 373.73KB
  80. keil/Objects/stm32f10x_pwr.crf 339.18KB
  81. keil/Objects/stm32f10x_pwr.d 1.75KB
  82. keil/Objects/stm32f10x_pwr.o 378.27KB
  83. keil/Objects/stm32f10x_rcc.crf 345.26KB
  84. keil/Objects/stm32f10x_rcc.d 1.75KB
  85. keil/Objects/stm32f10x_rcc.o 410.96KB
  86. keil/Objects/stm32f10x_rtc.crf 339.18KB
  87. keil/Objects/stm32f10x_rtc.d 1.75KB
  88. keil/Objects/stm32f10x_rtc.o 384.25KB
  89. keil/Objects/stm32f10x_sdio.crf 342.37KB
  90. keil/Objects/stm32f10x_sdio.d 1.79KB
  91. keil/Objects/stm32f10x_sdio.o 405.96KB
  92. keil/Objects/stm32f10x_spi.crf 342.24KB
  93. keil/Objects/stm32f10x_spi.d 1.75KB
  94. keil/Objects/stm32f10x_spi.o 398.38KB
  95. keil/Objects/stm32f10x_tim.crf 359.93KB
  96. keil/Objects/stm32f10x_tim.d 1.75KB
  97. keil/Objects/stm32f10x_tim.o 493.2KB
  98. keil/Objects/stm32f10x_usart.crf 343.84KB
  99. keil/Objects/stm32f10x_usart.d 1.82KB
  100. keil/Objects/stm32f10x_usart.o 407.23KB
  101. keil/Objects/stm32f10x_wwdg.crf 338.46KB
  102. keil/Objects/stm32f10x_wwdg.d 1.79KB
  103. keil/Objects/stm32f10x_wwdg.o 376.52KB
  104. keil/Objects/system_stm32f10x.crf 339.49KB
  105. keil/Objects/system_stm32f10x.d 1.77KB
  106. keil/Objects/system_stm32f10x.o 372.05KB
  107. keil/STM32LIB/
  108. keil/STM32LIB/inc/
  109. keil/STM32LIB/inc/misc.h 8.77KB
  110. keil/STM32LIB/inc/stm32f10x_adc.h 21.18KB
  111. keil/STM32LIB/inc/stm32f10x_bkp.h 7.38KB
  112. keil/STM32LIB/inc/stm32f10x_can.h 26.91KB
  113. keil/STM32LIB/inc/stm32f10x_cec.h 6.42KB
  114. keil/STM32LIB/inc/stm32f10x_crc.h 2.11KB
  115. keil/STM32LIB/inc/stm32f10x_dac.h 14.88KB
  116. keil/STM32LIB/inc/stm32f10x_dbgmcu.h 3.73KB
  117. keil/STM32LIB/inc/stm32f10x_dma.h 20.27KB
  118. keil/STM32LIB/inc/stm32f10x_exti.h 6.66KB
  119. keil/STM32LIB/inc/stm32f10x_flash.h 24.85KB
  120. keil/STM32LIB/inc/stm32f10x_fsmc.h 26.38KB
  121. keil/STM32LIB/inc/stm32f10x_gpio.h 19.7KB
  122. keil/STM32LIB/inc/stm32f10x_i2c.h 29.33KB
  123. keil/STM32LIB/inc/stm32f10x_iwdg.h 3.74KB
  124. keil/STM32LIB/inc/stm32f10x_pwr.h 4.28KB
  125. keil/STM32LIB/inc/stm32f10x_rcc.h 29.74KB
  126. keil/STM32LIB/inc/stm32f10x_rtc.h 3.77KB
  127. keil/STM32LIB/inc/stm32f10x_sdio.h 21.35KB
  128. keil/STM32LIB/inc/stm32f10x_spi.h 17.31KB
  129. keil/STM32LIB/inc/stm32f10x_tim.h 51.2KB
  130. keil/STM32LIB/inc/stm32f10x_usart.h 16.16KB
  131. keil/STM32LIB/inc/stm32f10x_wwdg.h 2.9KB
  132. keil/STM32LIB/src/
  133. keil/STM32LIB/src/misc.c 6.88KB
  134. keil/STM32LIB/src/stm32f10x_adc.c 46.09KB
  135. keil/STM32LIB/src/stm32f10x_bkp.c 8.26KB
  136. keil/STM32LIB/src/stm32f10x_can.c 44.05KB
  137. keil/STM32LIB/src/stm32f10x_cec.c 11.38KB
  138. keil/STM32LIB/src/stm32f10x_crc.c 3.27KB
  139. keil/STM32LIB/src/stm32f10x_dac.c 18.64KB
  140. keil/STM32LIB/src/stm32f10x_dbgmcu.c 5.03KB
  141. keil/STM32LIB/src/stm32f10x_dma.c 28.91KB
  142. keil/STM32LIB/src/stm32f10x_exti.c 6.8KB
  143. keil/STM32LIB/src/stm32f10x_flash.c 61.08KB
  144. keil/STM32LIB/src/stm32f10x_fsmc.c 34.65KB
  145. keil/STM32LIB/src/stm32f10x_gpio.c 22.68KB
  146. keil/STM32LIB/src/stm32f10x_i2c.c 44.71KB
  147. keil/STM32LIB/src/stm32f10x_iwdg.c 4.8KB
  148. keil/STM32LIB/src/stm32f10x_pwr.c 8.55KB
  149. keil/STM32LIB/src/stm32f10x_rcc.c 50.07KB
  150. keil/STM32LIB/src/stm32f10x_rtc.c 8.4KB
  151. keil/STM32LIB/src/stm32f10x_sdio.c 28.25KB
  152. keil/STM32LIB/src/stm32f10x_spi.c 29.52KB
  153. keil/STM32LIB/src/stm32f10x_tim.c 106.6KB
  154. keil/STM32LIB/src/stm32f10x_usart.c 37.41KB
  155. keil/STM32LIB/src/stm32f10x_wwdg.c 5.6KB
  156. keil/USER/
  157. keil/USER/digit.c 414B
  158. keil/USER/digit.h 153B
  159. keil/USER/led.c 848B
  160. keil/USER/led.h 175B
  161. keil/USER/led.h.bak
  162. keil/USER/main.c 7.55KB
  163. keil/USER/stm32f10x.h 619.08KB
  164. keil/USER/stm32f10x_conf.h 3.18KB
  165. keil/USER/stm32f10x_it.c 4.71KB
  166. keil/USER/stm32f10x_it.h 2.11KB
  167. keil/USER/system_stm32f10x.c 35.69KB
  168. keil/USER/system_stm32f10x.h 2.04KB
  169. protues/
  170. protues/18b20.pdsprj 94.12KB
  171. protues/18b20.pdsprj.DESKTOP-J4OK9VH.1.workspace 15.17KB
  172. protues/18b20.pdsprj.MOHEN.mym35.workspace 26.13KB
  173. protues/18b20t.pdsprj 94.68KB
  174. protues/18b20t.pdsprj.DESKTOP-J4OK9VH.1.workspace 15.18KB
  175. protues/Backup Of 18b20.pdsbak 94.13KB
  176. protues/Last Loaded 18b20.pdsbak 94.12KB
  177. protues/Last Loaded 18b20t.pdsbak 83.63KB

资源介绍:

实验要求 使用proteus仿真+keil编译 用Proteus设计一个STM32最小系统板+温度传感器ds18b20实验原理图,仿真运行。 以STM32最小系统核心板(STM32F103C8T6)编写程序,驱动ds18b20,使用proteus8.9编写原理图。 用stm32标准库编写,有必要的注释。
/** ****************************************************************************** * @file stm32f10x_tim.c * @author MCD Application Team * @version V3.5.0 * @date 11-March-2011 * @brief This file provides all the TIM firmware functions. ****************************************************************************** * @attention * * THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS * WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE * TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING * FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY CUSTOMERS OF THE * CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS. * *

© COPYRIGHT 2011 STMicroelectronics

****************************************************************************** */ /* Includes ------------------------------------------------------------------*/ #include "stm32f10x_tim.h" #include "stm32f10x_rcc.h" /** @addtogroup STM32F10x_StdPeriph_Driver * @{ */ /** @defgroup TIM * @brief TIM driver modules * @{ */ /** @defgroup TIM_Private_TypesDefinitions * @{ */ /** * @} */ /** @defgroup TIM_Private_Defines * @{ */ /* ---------------------- TIM registers bit mask ------------------------ */ #define SMCR_ETR_Mask ((uint16_t)0x00FF) #define CCMR_Offset ((uint16_t)0x0018) #define CCER_CCE_Set ((uint16_t)0x0001) #define CCER_CCNE_Set ((uint16_t)0x0004) /** * @} */ /** @defgroup TIM_Private_Macros * @{ */ /** * @} */ /** @defgroup TIM_Private_Variables * @{ */ /** * @} */ /** @defgroup TIM_Private_FunctionPrototypes * @{ */ static void TI1_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection, uint16_t TIM_ICFilter); static void TI2_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection, uint16_t TIM_ICFilter); static void TI3_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection, uint16_t TIM_ICFilter); static void TI4_Config(TIM_TypeDef* TIMx, uint16_t TIM_ICPolarity, uint16_t TIM_ICSelection, uint16_t TIM_ICFilter); /** * @} */ /** @defgroup TIM_Private_Macros * @{ */ /** * @} */ /** @defgroup TIM_Private_Variables * @{ */ /** * @} */ /** @defgroup TIM_Private_FunctionPrototypes * @{ */ /** * @} */ /** @defgroup TIM_Private_Functions * @{ */ /** * @brief Deinitializes the TIMx peripheral registers to their default reset values. * @param TIMx: where x can be 1 to 17 to select the TIM peripheral. * @retval None */ void TIM_DeInit(TIM_TypeDef* TIMx) { /* Check the parameters */ assert_param(IS_TIM_ALL_PERIPH(TIMx)); if (TIMx == TIM1) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM1, DISABLE); } else if (TIMx == TIM2) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM2, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM2, DISABLE); } else if (TIMx == TIM3) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM3, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM3, DISABLE); } else if (TIMx == TIM4) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM4, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM4, DISABLE); } else if (TIMx == TIM5) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM5, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM5, DISABLE); } else if (TIMx == TIM6) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM6, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM6, DISABLE); } else if (TIMx == TIM7) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM7, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM7, DISABLE); } else if (TIMx == TIM8) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM8, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM8, DISABLE); } else if (TIMx == TIM9) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM9, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM9, DISABLE); } else if (TIMx == TIM10) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM10, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM10, DISABLE); } else if (TIMx == TIM11) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM11, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM11, DISABLE); } else if (TIMx == TIM12) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM12, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM12, DISABLE); } else if (TIMx == TIM13) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM13, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM13, DISABLE); } else if (TIMx == TIM14) { RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM14, ENABLE); RCC_APB1PeriphResetCmd(RCC_APB1Periph_TIM14, DISABLE); } else if (TIMx == TIM15) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM15, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM15, DISABLE); } else if (TIMx == TIM16) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM16, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM16, DISABLE); } else { if (TIMx == TIM17) { RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM17, ENABLE); RCC_APB2PeriphResetCmd(RCC_APB2Periph_TIM17, DISABLE); } } } /** * @brief Initializes the TIMx Time Base Unit peripheral according to * the specified parameters in the TIM_TimeBaseInitStruct. * @param TIMx: where x can be 1 to 17 to select the TIM peripheral. * @param TIM_TimeBaseInitStruct: pointer to a TIM_TimeBaseInitTypeDef * structure that contains the configuration information for the * specified TIM peripheral. * @retval None */ void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct) { uint16_t tmpcr1 = 0; /* Check the parameters */ assert_param(IS_TIM_ALL_PERIPH(TIMx)); assert_param(IS_TIM_COUNTER_MODE(TIM_TimeBaseInitStruct->TIM_CounterMode)); assert_param(IS_TIM_CKD_DIV(TIM_TimeBaseInitStruct->TIM_ClockDivision)); tmpcr1 = TIMx->CR1; if((TIMx == TIM1) || (TIMx == TIM8)|| (TIMx == TIM2) || (TIMx == TIM3)|| (TIMx == TIM4) || (TIMx == TIM5)) { /* Select the Counter Mode */ tmpcr1 &= (uint16_t)(~((uint16_t)(TIM_CR1_DIR | TIM_CR1_CMS))); tmpcr1 |= (uint32_t)TIM_TimeBaseInitStruct->TIM_CounterMode; } if((TIMx != TIM6) && (TIMx != TIM7)) { /* Set the clock division */ tmpcr1 &= (uint16_t)(~((uint16_t)TIM_CR1_CKD)); tmpcr1 |= (uint32_t)TIM_TimeBaseInitStruct->TIM_ClockDivision; } TIMx->CR1 = tmpcr1; /* Set the Autoreload value */ TIMx->ARR = TIM_TimeBaseInitStruct->TIM_Period ; /* Set the Prescaler value */ TIMx->PSC = TIM_TimeBaseInitStruct->TIM_Prescaler; if ((TIMx == TIM1) || (TIMx == TIM8)|| (TIMx == TIM15)|| (TIMx == TIM16) || (TIMx == TIM17)) { /* Set the Repetition Counter value */ TIMx->RCR = TIM_TimeBaseInitStruct->TIM_RepetitionCounter; } /* Generate an update event to reload the Prescaler and the Repetition counter values immediately */ TIMx->EGR = TIM_PSCReloadMode_Immediate; } /** * @brief Initializes the TIMx Channel1 according to the specified * parameters in the TIM_OCInitStruct. * @param TIMx: where x can be 1 to 17 except 6 and 7 to select the TIM peripheral. * @param TIM_OCInitStru
100+评论
captcha