基於STM32的傳送帶系統

来源:https://www.cnblogs.com/couvrir/archive/2023/08/27/17660487.html
-Advertisement-
Play Games

功能 設計一個傳送帶系統,能夠實現傳送帶的開始/停止,正轉/反轉,加減速,對傳送帶的物品計數。 按鈕/app功能控制,oled屏幕/app顯示。 設計框圖 原理圖 軟體構建階段 利用STM32CubeMX生成模板 MCU選型:STM32F103C8T6,雙擊打開。 Ststem Core->SYS: ...


 

 

功能

設計一個傳送帶系統,能夠實現傳送帶的開始/停止,正轉/反轉,加減速,對傳送帶的物品計數。

按鈕/app功能控制,oled屏幕/app顯示。

 

設計框圖

 

原理圖

 

軟體構建階段

利用STM32CubeMX生成模板

MCU選型:STM32F103C8T6,雙擊打開。

Ststem Core->SYS:Serial Wire。Timebase Source:TIM1(供Freertos實時操作系統使用)。

Ststem Core->RCC:HSE、LSE--Crystal/Ceramic Resonator(不考慮低功耗,預設打開)。

Ststem Core->IWDG:Activated。psc--64、reload--625。(獨立看門狗1s定時喂狗,判斷系統正常運行)。

Connectivity->USART1:Asynchronous(藍牙模塊、調試輸出所需)、9600-8-N-1、開中斷。

搜索GPIO位置,選擇IO模式,取別名。

PC13--推輓輸出--SysLED。 

PB9----推輓輸出--BEEP。

PB12--推輓輸出--AIN2。

PB13--推輓輸出--AIN1。

PB14--推輓輸出--STBY。

PB15--上拉輸入--KEY_1。

PB11--上拉輸入--KEY_2。

PB10--上拉輸入--KEY_3。

PB1----上拉輸入--KEY_4。

PB0----上拉輸入--KEY_5。

PA3----上拉輸入--Photoelectric_detector1。

PA4----上拉輸入--Photoelectric_detector2。

PA0-WKUP----GPIO_EXIT0--Encoder。

配置時鐘樹。

配置I2C1(OLED屏幕通訊介面)。

配置TIM3、4(一個採集速度,一個PWM)。

配置FreeRTOS系統。

Project Manager->project:Toolchain/IDE:MDK-ARM。

Project Manager->Code Generator:勾上Generate peripheral initialization as a pair of '.c/.h' files per peripheral。

GENERATE CODE生成工程模板。

 

工程目錄個人規範

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • [TOC] spdlog是一個開源、跨平臺、無依賴、只有頭文件的C++11日誌庫,網上介紹的文章有很多這裡就不過多的介紹了,GitHub鏈接:[https://github.com/gabime/spdlog](https://github.com/gabime/spdlog)。 # 引用源碼 先下 ...
  • `fsnotify`是一個用Go編寫的文件系統通知庫。它提供了一種觀察文件系統變化的機制,例如文件的創建、修改、刪除、重命名和許可權修改。它使用特定平臺的事件通知API,例如Linux上的inotify,macOS上的FSEvents,以及Windows上的ReadDirectoryChangesW。 ...
  • 工具提示即 Tool Tip,當用戶把滑鼠移動到某個UI對象上並懸停片刻,就會出現一個“短小精悍”的視窗,顯示一些說明性文本。一般就是功能描述,讓用戶知道這個XX是幹啥用的。 在 Qt 中使用工具提示最方便的做法是直接用 QWidget 類的成員方法:setToolTip。從 QWidget 類派生 ...
  • # 什麼是主席樹 主席樹這個名字看上去很高級,其實不然,它還有另一個名字——可持久化線段樹。 ## 什麼是可持久化 可持久化顧名思義就是它可以變得~~**持久**~~,就是我們對他不斷進行單點修改後,突然查詢它的某一個歷史版本,這就叫可持久化。 # 引入例題 [洛谷3919:可持久化數組](http ...
  • ## 前言: 單例模式是創建型模式5種中的第1種,**關註對象的創建, 保證一個類僅有一個實例,並且提供一個全局訪問點**。在軟體系統中,經常有這樣一些特殊的類,必須保證它們在系統中只存在一個實例,才能確保它們的邏輯正確性、以及良好的效率。如何繞過常規的構造器,提供一種機制來保證一個類只創建一個實例 ...
  • ## 一、設計模式概述: ​ **設計模式(Design pattern)**代表了最佳的實踐,通常被有經驗的面向對象的軟體開發人員所採用。設計模式是軟體開發人員在軟體開發過程中面臨的一般問題的解決方案。這些解決方案是眾多軟體開發人員經過相當長的一段時間的試驗和錯誤總結出來的。是一套被反覆使用的、多 ...
  • 一、 ManualResetEvent ManualResetEvent是一個同步對象,可以使一個或多個線程等待另一個線程的信號,然後再同時繼續執行。它是通過兩個狀態來實現的:有信號和無信號。 以下是ManualResetEvent的各個方法的介紹: Set方法:將ManualResetEvent的 ...
  • S905L3A(M401A)拆解, 運行EmuELEC和Armbian. S905Lx系列屬於大客戶版本, 對外沒有公開資料, 最早的 S905L/S905LB 是 S905X 的馬甲, 而這個 S905L3A/S905L3AB 則是 S905X2 的馬甲, 因為在性能評測里這兩個U的得分幾乎一樣.... ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...