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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3083|回復: 1
打印 上一主題 下一主題
收起左側

電腦鼠走迷宮的STM32源程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:502682 發表于 2019-7-10 21:02 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
其中紅外參數讓我在程序里鎖死了,只能用藍牙寫入

單片機源程序如下:
  1. /* USER CODE END Header */

  2. /* Includes ------------------------------------------------------------------*/
  3. #include "main.h"
  4. #include "adc.h"
  5. #include "dma.h"
  6. #include "i2c.h"
  7. #include "tim.h"
  8. #include "usart.h"
  9. #include "gpio.h"

  10. /* Private includes ----------------------------------------------------------*/
  11. /* USER CODE BEGIN Includes */
  12. #include "sensor.h"
  13. #include "maze.h"

  14. #include <string.h>
  15. /* USER CODE END Includes */

  16. /* Private typedef -----------------------------------------------------------*/
  17. /* USER CODE BEGIN PTD */

  18. /* USER CODE END PTD */

  19. /* Private define ------------------------------------------------------------*/
  20. /* USER CODE BEGIN PD */

  21. /* USER CODE END PD */

  22. /* Private macro -------------------------------------------------------------*/
  23. /* USER CODE BEGIN PM */

  24. /* USER CODE END PM */

  25. /* Private variables ---------------------------------------------------------*/

  26. /* USER CODE BEGIN PV */

  27. /* USER CODE END PV */

  28. /* Private function prototypes -----------------------------------------------*/
  29. void SystemClock_Config(void);
  30. /* USER CODE BEGIN PFP */

  31. /* USER CODE END PFP */

  32. /* Private user code ---------------------------------------------------------*/
  33. /* USER CODE BEGIN 0 */

  34. /* USER CODE END 0 */

  35. /**
  36.   * @brief  The application entry point.
  37.   * @retval int
  38.   */
  39. int main(void)
  40. {
  41.     /* USER CODE BEGIN 1 */
  42.     //uint8_t ucLedRun = 0;
  43.     //uint8_t ucLedCount = 0;
  44.                
  45.     /* USER CODE END 1 */

  46.     /* MCU Configuration--------------------------------------------------------*/

  47.     /* Reset of all peripherals, Initializes the Flash interface and the Systick. */
  48.     HAL_Init();

  49.     /* USER CODE BEGIN Init */

  50.     /* USER CODE END Init */

  51.     /* Configure the system clock */
  52.     SystemClock_Config();

  53.     /* USER CODE BEGIN SysInit */

  54.     /* USER CODE END SysInit */

  55.     /* Initialize all configured peripherals */
  56.     MX_GPIO_Init();
  57.     MX_DMA_Init();
  58.     MX_TIM1_Init();
  59.     MX_TIM2_Init();
  60.     MX_TIM3_Init();
  61.     MX_ADC1_Init();
  62.     MX_I2C1_Init();
  63.     MX_USART3_UART_Init();
  64.     /* USER CODE BEGIN 2 */
  65.                
  66.     PIDInit();
  67.    
  68.     HAL_Delay(200);
  69.     getStaticAngle();
  70.                 HAL_Delay(200);
  71.                 mouseInit();
  72.     /* USER CODE END 2 */

  73.     /* Infinite loop */
  74.     /* USER CODE BEGIN WHILE */
  75.     while (1)
  76.     {
  77.         /* USER CODE END WHILE */

  78.         /* USER CODE BEGIN 3 */
  79.                                 mainTask();
  80.     }
  81.     /* USER CODE END 3 */
  82. }

  83. /**
  84.   * @brief System Clock Configuration
  85.   * @retval None
  86.   */
  87. void SystemClock_Config(void)
  88. {
  89.     RCC_OscInitTypeDef RCC_OscInitStruct = {0};
  90.     RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
  91.     RCC_PeriphCLKInitTypeDef PeriphClkInit = {0};

  92.     /**Initializes the CPU, AHB and APB busses clocks
  93.     */
  94.     RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
  95.     RCC_OscInitStruct.HSEState = RCC_HSE_ON;
  96.     RCC_OscInitStruct.HSEPredivValue = RCC_HSE_PREDIV_DIV1;
  97.     RCC_OscInitStruct.HSIState = RCC_HSI_ON;
  98.     RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  99.     RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
  100.     RCC_OscInitStruct.PLL.PLLMUL = RCC_PLL_MUL9;
  101.     if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  102.     {
  103.         Error_Handler();
  104.     }
  105.     /**Initializes the CPU, AHB and APB busses clocks
  106.     */
  107.     RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
  108.                                   |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
  109.     RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  110.     RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  111.     RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2;
  112.     RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;

  113.     if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_2) != HAL_OK)
  114.     {
  115.         Error_Handler();
  116.     }
  117.     PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_ADC;
  118.     PeriphClkInit.AdcClockSelection = RCC_ADCPCLK2_DIV6;
  119.     if (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)
  120.     {
  121.         Error_Handler();
  122.     }
  123. }

  124. /* USER CODE BEGIN 4 */

  125. /* USER CODE END 4 */

  126. /**
  127.   * @brief  This function is executed in case of error occurrence.
  128.   * @retval None
  129.   */
  130. void Error_Handler(void)
  131. {
  132.     /* USER CODE BEGIN Error_Handler_Debug */
  133.     /* User can add his own implementation to report the HAL error return state */

  134.     /* USER CODE END Error_Handler_Debug */
  135. }

  136. #ifdef  USE_FULL_ASSERT
  137. /**
  138.   * @brief  Reports the name of the source file and the source line number
  139.   *         where the assert_param error has occurred.
  140.   * @param  file: pointer to the source file name
  141.   * @param  line: assert_param error line source number
  142.   * @retval None
  143.   */
  144. void assert_failed(uint8_t *file, uint32_t line)
  145. {
  146.     /* USER CODE BEGIN 6 */
  147.     /* User can add his own implementation to report the file name and line number,
  148.        tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
  149.     /* USER CODE END 6 */
  150. }
  151. #endif /* USE_FULL_ASSERT */

  152. /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
復制代碼

所有資料51hei提供下載:
MouseOrgV0.9.7z (2.91 MB, 下載次數: 33)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:502682 發表于 2019-7-10 21:03 | 只看該作者
因為頭文件太多了,所以不方便張貼出來,所以想看的只能破費了
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲综合二区 | 中文字幕高清一区 | 精品在线99| 国产高清在线精品 | 国产精品一区二区久久 | 国产一级精品毛片 | h在线观看| 理论片免费在线观看 | 偷拍亚洲色图 | 91午夜在线 | 一区二区三区网站 | 色综合久久久久 | av毛片| 一区二区久久 | 东方伊人免费在线观看 | 日韩一级在线 | 嫩草研究影院 | 成人在线免费 | 日韩成人av在线播放 | 99久久久无码国产精品 | www.狠狠干| 日韩在线观看一区 | 成人自拍视频网站 | 精品一区二区电影 | 久久99精品久久久久久 | 亚洲乱码一区二区 | 欧美精品一区二区在线观看 | 日韩影院在线观看 | 最新超碰| 九九导航| 国产一区二区三区亚洲 | 国产精品一区二区欧美 | 色欧美综合 | www.日本精品| 日韩一级免费 | 视频一区二区在线观看 | 在线视频一区二区 | 中文字幕乱码视频32 | 成人精品一区二区 | 中文字幕高清av | 亚洲v日韩v综合v精品v |