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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

STM32F10X ModBus RTU master code

[復(fù)制鏈接]
ID:656243 發(fā)表于 2019-12-4 20:39 | 顯示全部樓層 |閱讀模式
代碼經(jīng)測試有效  可參考

單片機(jī)源程序如下:

  1. #include "main.h"
  2. #include "stm32f0xx_hal.h"
  3. #include "modbus_master.h"
  4. /* USER CODE BEGIN Includes */

  5. /* USER CODE END Includes */

  6. /* Private variables ---------------------------------------------------------*/
  7. UART_HandleTypeDef huart2;

  8. /* USER CODE BEGIN PV */
  9. /* Private variables ---------------------------------------------------------*/

  10. /* USER CODE END PV */

  11. /* Private function prototypes -----------------------------------------------*/
  12. void SystemClock_Config(void);
  13. static void MX_GPIO_Init(void);
  14. static void MX_USART2_UART_Init(void);

  15. /* USER CODE BEGIN PFP */
  16. /* Private function prototypes -----------------------------------------------*/

  17. /* USER CODE END PFP */

  18. /* USER CODE BEGIN 0 */

  19. /* USER CODE END 0 */

  20. int main(void)
  21. {
  22.   uint8_t state=0;
  23.         uint16_t  Input_Result[2];
  24.   HAL_Init();
  25.   SystemClock_Config();
  26.   MX_GPIO_Init();
  27.         ModbusMaster_begin();
  28.   MX_USART2_UART_Init();
  29.   
  30.   while (1)
  31.   {
  32.                 uint8_t result;
  33.                 //測試Read Input Registers功能
  34.                 //從機(jī)地址0x01 ,寄存器地址 0x02 ,連續(xù)讀2個(gè)寄存器地址
  35.                 result = ModbusMaster_readInputRegisters(0x01,0x2, 2);
  36.                 if (result == 0x00)
  37.                 {
  38.                         Input_Result[0] = ModbusMaster_getResponseBuffer(0x00);
  39.                         Input_Result[1] = ModbusMaster_getResponseBuffer(0x01);
  40.                 }
  41.                         HAL_Delay(1000);
  42.   }

  43. }

  44. /** System Clock Configuration
  45. */
  46. void SystemClock_Config(void)
  47. {

  48.   RCC_OscInitTypeDef RCC_OscInitStruct;
  49.   RCC_ClkInitTypeDef RCC_ClkInitStruct;

  50.     /**Initializes the CPU, AHB and APB busses clocks
  51.     */
  52.   RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI48;
  53.   RCC_OscInitStruct.HSI48State = RCC_HSI48_ON;
  54.   RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
  55.   if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  56.   {
  57.     _Error_Handler(__FILE__, __LINE__);
  58.   }

  59.     /**Initializes the CPU, AHB and APB busses clocks
  60.     */
  61.   RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
  62.                               |RCC_CLOCKTYPE_PCLK1;
  63.   RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI48;
  64.   RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  65.   RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;

  66.   if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK)
  67.   {
  68.     _Error_Handler(__FILE__, __LINE__);
  69.   }

  70.     /**Configure the Systick interrupt time
  71.     */
  72.   HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);

  73.     /**Configure the Systick
  74.     */
  75.   HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);

  76.   /* SysTick_IRQn interrupt configuration */
  77.   HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
  78. }

  79. /* USART2 init function */
  80. static void MX_USART2_UART_Init(void)
  81. {

  82.   huart2.Instance = USART2;
  83.   huart2.Init.BaudRate = 115200;
  84.   huart2.Init.WordLength = UART_WORDLENGTH_8B;
  85.   huart2.Init.StopBits = UART_STOPBITS_1;
  86.   huart2.Init.Parity = UART_PARITY_NONE;
  87.   huart2.Init.Mode = UART_MODE_TX_RX;
  88.   huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
  89.   huart2.Init.OverSampling = UART_OVERSAMPLING_16;
  90.   huart2.Init.OneBitSampling = UART_ONE_BIT_SAMPLE_DISABLE;
  91.   huart2.AdvancedInit.AdvFeatureInit = UART_ADVFEATURE_NO_INIT;
  92.   if (HAL_UART_Init(&huart2) != HAL_OK)
  93.   {
  94.     _Error_Handler(__FILE__, __LINE__);
  95.   }
  96.   __HAL_UART_ENABLE_IT(&huart2,UART_IT_RXNE);
  97. }

  98. /** Configure pins as
  99.         * Analog
  100.         * Input
  101.         * Output
  102.         * EVENT_OUT
  103.         * EXTI
  104. */
  105. static void MX_GPIO_Init(void)
  106. {

  107.   /* GPIO Ports Clock Enable */
  108.   __HAL_RCC_GPIOA_CLK_ENABLE();

  109. }

  110. /* USER CODE BEGIN 4 */

  111. /* USER CODE END 4 */

  112. /**
  113.   * @brief  This function is executed in case of error occurrence.
  114.   * @param  None
  115.   * @retval None
  116.   */
  117. void _Error_Handler(char * file, int line)
  118. {
  119.   /* USER CODE BEGIN Error_Handler_Debug */
  120.   /* User can add his own implementation to report the HAL error return state */
  121.   while(1)
  122.   {
  123.   }
  124.   /* USER CODE END Error_Handler_Debug */
  125. }

  126. #ifdef USE_FULL_ASSERT

  127. /**
  128.    * @brief Reports the name of the source file and the source line number
  129.    * where the assert_param error has occurred.
  130.    * @param file: pointer to the source file name
  131.    * @param line: assert_param error line source number
  132.    * @retval None
  133.    */
  134. void assert_failed(uint8_t* file, uint32_t line)
  135. {
  136.   /* USER CODE BEGIN 6 */
  137.   /* User can add his own implementation to report the file name and line number,
  138.     ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
  139.   /* USER CODE END 6 */

  140. }

  141. #endif

  142. /**
  143.   * @}
  144.   */

  145. /**
  146.   * @}
  147. */

  148. /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

復(fù)制代碼

所有資料51hei提供下載:
ModBus-Master-master.7z (1.19 MB, 下載次數(shù): 74)



回復(fù)

使用道具 舉報(bào)

ID:111310 發(fā)表于 2021-8-27 01:04 | 顯示全部樓層
有從站的嗎?
回復(fù)

使用道具 舉報(bào)

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: www日本在线观看 | 97国产精品视频人人做人人爱 | 性色av一区二区三区 | 欧美一区精品 | 麻豆精品国产91久久久久久 | 男女啪啪高潮无遮挡免费动态 | 综合激情av| 国产视频一区在线 | 福利影院在线看 | 国产精品3区| 99资源| 精品一区二区三区免费视频 | 精品一区二区三区四区在线 | 亚洲啪啪一区 | 九九热精品在线视频 | 国产91在线精品 | 国产成人在线视频播放 | 国产 欧美 日韩 一区 | 国产精品视频在线免费观看 | 久久91| 成人免费视频网站在线看 | 天天操伊人 | 久久www免费视频 | 国产精品毛片久久久久久久 | 美女黄网站 | 欧美日韩在线免费观看 | 久久久.com | 一级毛片在线播放 | aaa国产大片| 国产精品免费在线 | 免费看片在线播放 | 999视频在线播放 | 久久99精品国产 | 超级碰在线 | 亚洲综合大片69999 | 一区二区三区四区国产 | 一区二区精品视频 | 欧美日韩视频在线 | 日韩一区二区在线播放 | 在线播放国产一区二区三区 | 久久精品一区二区三区四区 |