51單片機編程學習筆記——點亮LED

大綱

  • 器件
    • 51單片機
    • 開發板
    • 總結
  • 安裝驅動
  • 點亮LED
    • 燒錄

隨著最近機器人爆火,之前寫的ROS2系列博客《Robot Operating System》也獲得了更多的關注。我決定在機器人領域里再走一步,于是想到可以學習單片機。研究了下學習路徑,最后還是選擇先從51單片機入手。由淺入深,循序漸進。

51 單片機的歷史可追溯到 20 世紀 80 年代,英特爾公司推出了經典的 8051 單片機。它以其結構簡單性能穩定易于學習和開發成本低等顯著優勢,迅速在嵌入式系統領域嶄露頭角。此后,眾多半導體廠商對 8051 內核進行了仿制和改進,推出了一系列兼容的 51 單片機,進一步豐富了其產品線和應用場景。

經過幾十年的發展,51 單片機憑借其獨特的優勢,在眾多領域得到了廣泛應用。在工業控制領域,51 單片機可用于對生產過程中的溫度、壓力、流量等參數進行實時監測和控制,確保生產過程的穩定和高效。在智能家居領域,它可以作為智能家電的控制核心,實現家電的遠程控制、自動化運行和節能管理。在消費電子領域,51 單片機廣泛應用于電子玩具、電子秤、遙控器等產品中,為人們的生活帶來了更多的便利和樂趣。此外,在汽車電子、醫療設備、儀器儀表等領域,51 單片機也發揮著重要的作用。

盡管隨著科技的不斷發展,出現了許多功能更強大、性能更卓越的微控制器,但 51 單片機憑借其簡單易學、成本低廉、開發資源豐富等特點,仍然是電子愛好者和初學者入門嵌入式系統開發的首選。通過學習 51 單片機編程,我們不僅能夠掌握嵌入式系統開發的基本原理和方法,還能培養自己的邏輯思維能力和實踐動手能力,為今后學習更高級的微控制器和開發更復雜的系統打下堅實的基礎。

這個系列我將使用C語言進行編碼,穿插著研究51單片機以及其開發板,做到理論和實踐結合。

器件

首先我們需要決定買什么器件。到底是買51單片機還是51開發板呢?

51單片機

51 單片機是指以 Intel 8051 內核為基礎發展而來的一系列單片機統稱。它是一種集成電路芯片,把中央處理器 CPU、隨機存儲器 RAM、只讀存儲器 ROM、多種 I/O 口和中斷系統、定時器 / 計數器等功能(可能還包括顯示驅動電路、脈寬調制電路、模擬多路轉換器、A/D 轉換器等電路)集成到一塊硅片上構成的一個小而完善的微型計算機系統。
在下圖中,我們看到該單片機導出了40個引腳。在實際應用中,我們需要將這些引腳與其他傳感器等連接,以傳輸信號。
在這里插入圖片描述

開發板

51 開發板是為了幫助用戶學習和開發 51 單片機而設計的一種電路板。它以 51 單片機為核心,配備了各種外圍電路和接口,如 LED 燈、數碼管、按鍵、蜂鳴器、串口通信接口、液晶顯示屏等,用戶可以直接利用這些資源進行各種實驗和項目開發,無需額外搭建復雜的電路。
通過下圖,我們看到位于中間綠色的TEXTOOL上安裝著一個51單片機。它就是整個電路板的核心。
在這里插入圖片描述

總結

因為開發板已經幫我們把很多元器件和引腳連接好了,而我們當前關注的重點不是接引腳,而是編程,所以我們選擇購買開發板。
下面是我購買板子的商家提供的地址:

https://pan.baidu.com/s/1t4M7p-WfYE7tDi36qqa-cQ?pwd=1234 提取碼:1234

安裝驅動

我們如圖連接開發板和電腦
在這里插入圖片描述
此時電腦的“設備管理器”中,可能存在未知的USB設備。這個時候我們就需要安裝“5–開發工具\2-開發板CH340驅動”下的驅動程序。
我的開發環境是Win11,會自動安裝驅動。(不需要安裝“5–開發工具\2-開發板CH340驅動”下的驅動)
待驅動安裝成功后,可以在“設備管理器”中看到“CH340”。需要注意的是:CH340 是一個USB總線的轉接芯片,實現USB轉串口、USB轉IrDA紅外或者USB轉打印口。我們將通過該設備,將電腦上的程序燒錄到單片機中。
在這里插入圖片描述

點亮LED

在“4–實驗程序\1–基礎實驗”中有個文件“2-點亮第一個LED.zip”。解壓這個文件后,可以看到如下目錄結構。其中以hex為后綴的就是我們需要燒錄到開發版中的二進制程序。
在這里插入圖片描述

燒錄

我們可以使用“–開發工具\3-程序下載軟件\PZ-ISP(推薦使用)”下的PZ-ISP來將電腦中的hex文件傳輸到單片機上。
在芯片類型下拉框中,我們需要選擇與芯片匹配的類型。
在這里插入圖片描述
如上,我們芯片的類型是89C52RC,則PZ-ISP程序中選擇STC89C5xx-RC Series類型。
在這里插入圖片描述
串口號選擇CH340,波特率保持不變。
在這里插入圖片描述
然后將“文件路徑”選擇為直接解壓文件夾中的hex文件。
按下開發板usb接口旁邊的開關鍵,可以看到一些燈亮了。
在這里插入圖片描述
在PZ-ISP中,點擊“程序下載”。
在這里插入圖片描述
稍等片刻,可以看到提示燒錄成功。
在這里插入圖片描述
此時,開發版上的LED燈區第一個燈被點亮了。
在這里插入圖片描述

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/896251.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/896251.shtml
英文地址,請注明出處:http://en.pswp.cn/news/896251.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java String 類

Java String 類常用方法詳解 在 Java 編程里,字符串操作十分常見,而 String 類作為 Java 標準庫的核心類,用于表示不可變的字符序列。任何對字符串的修改操作都會返回一個新的字符串對象,不會改變原始字符串。本文將詳細介紹 Str…

9.【線性代數】—— 線性相關性, 向量空間的基,維數

九 線性相關性, 向量空間的基,維數 Ax0 什么情況下無解(x不為零向量)1. 向量組的線性無關性2.向量組生成一個空間(S)3. 向量空間的一組基:都滿足向量個數相同4. 空間維數 基向量的個數 Ax0 什么情況下無解(x不為零向量) Ax0無解&#xff0c…

藍橋杯單片機組第十二屆省賽第二批次

前言 第十二屆省賽涉及知識點:NE555頻率數據讀取,NE555頻率轉換周期,PCF8591同時測量光敏電阻和電位器的電壓、按鍵長短按判斷。 本試題涉及模塊較少,題目不難,基本上準備充分的都能完整的實現每一個功能,并…

opencv:距離變換 cv2.distanceTransform

函數 cv2.distanceTransform() 用于計算圖像中每一個非零點像素與其最近的零點像素之間的距離(Distance Transform, DT算法),輸出的是保存每一個非零點與最近零點的距離信息;圖像上越亮的點,代表了離零點的距離越遠。 …

基于Spring Boot的黨員學習交流平臺設計與實現(LW+源碼+講解)

專注于大學生項目實戰開發,講解,畢業答疑輔導,歡迎高校老師/同行前輩交流合作?。 技術范圍:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬蟲、數據可視化、安卓app、大數據、物聯網、機器學習等設計與開發。 主要內容:…

自動駕駛兩個傳感器之間的坐標系轉換

有兩種方式可以實現兩個坐標系的轉換。 車身坐標系下一個點p_car,需要轉換到相機坐標系下,旋轉矩陣R_car2Cam,平移矩陣T_car2Cam。點p_car在相機坐標系下記p_cam. 方法1:先旋轉再平移 p_cam T_car2Cam * p_car T_car2Cam 需要注…

k8s ssl 漏洞修復

針對Kubernetes集群中SSL/TLS協議信息泄露漏洞(CVE-2016-2183)的修復,需重點修改涉及弱加密算法的組件配置。以下是具體修復步驟及驗證方法: 一、漏洞修復步驟 1. 修復etcd服務 修改配置文件 : 編輯 /etc/kubernetes/…

數字IC后端培訓教程| 芯片后端實戰項目中base layer drc violation解析

今天分享一個咱們社區IC后端訓練營學員遇到的一個經典DRC案例。這個DRC Violation的名字為PP.S.9(這里的PP就是Plus P)。這一層是屬于管子的base layer。更多關于base layer的介紹,可以查看下面這份教程。 https://alidocs.dingtalk.com/api/doc/transit?spaceId5…

從零到一學習c++(基礎篇--筑基期十一-類)

從零到一學習C(基礎篇) 作者:羨魚肘子 溫馨提示1:本篇是記錄我的學習經歷,會有不少片面的認知,萬分期待您的指正。 溫馨提示2:本篇會盡量用更加通俗的語言介紹c的基礎,用通俗的語言去…

DeepSeek技術全景解析:架構創新與行業差異化競爭力

一、DeepSeek技術體系的核心突破 架構設計:效率與性能的雙重革新 Multi-head Latent Attention (MLA):通過將注意力頭維度與隱藏層解耦,實現顯存占用降低30%的同時支持4096超長上下文窗口。深度優化的MoE架構:結合256個路由專家…

插入排序:一種簡單而直觀的排序算法

大家好!今天我們來聊聊一個簡單卻非常經典的排序算法——插入排序(Insertion Sort)。在所有的排序算法中,插入排序是最直觀的一個。 一、插入排序的基本思想 插入排序的核心思想是:將一個待排序的元素,插…

2025年校園網絡招聘會匯總

1、衛生健康行業2025屆畢業生春季校園網絡招聘會 企業數量職位數量崗位數量10020002000 訪問地址: https://www.weirenjob.com/zph/zph_wsjkxy2025jbyscjxywlzph/ 2、山東地區面向2025屆高校畢業生網絡招聘活動 企業數量職位數量崗位數量909271052434 訪問地址&a…

Windows 10 GPU STACK 0.5.1 安裝

Windows 10 GPU STACK 0.5.1 安裝 1 GPUStack 安裝1.Python安裝(3.10/11/12)2.GPUStack 下載3.生成密碼4.訪問5.設置模型下載目錄6.禁用開機自啟并重啟服務7.安裝模型8.查看安裝的進度 2.試驗場聊天測試1.對話模式 3.API Key 測試 1 GPUStack 安裝 1.Py…

【數據結構】快指針和慢指針

一、 給你單鏈表的頭結點 head ,請你找出并返回鏈表的中間結點。如果有兩個中間結點,則返回第二個中間結點。 要求:只遍歷一遍鏈表 可以使用快慢指針:fast 一次走兩步,slow 一次走一步。當 fast NULL(偶數個結點)或…

1.3 嵌入式系統的固件

嵌入式系統的固件,一般情況下的作用是: 1.硬件抽象層(HAL):固件提供了一個硬件抽象層,它將硬件的復雜性隱藏起來,為上層軟件提供了一套標準的接口。這樣,操作系統和應用程序不需要直接與硬件打交…

中國工業互聯網研究院:人工智能大模型年度發展趨勢報告

當前,以大模型為代表的人工智能正快速演進,激發全球科技之變、產業之變、時代之變,人工智能發展迎來新高潮。隨著大模型推理、多模態生成、智能體等創新技術的發展,大模型賦能千行百業將進一步提速。中國工業互聯網研究院全方位剖…

【cv】vs2022配置opencv

release下配置包含目錄和庫目錄 E:\sdk\sdk_cuda12.3\opencv490\include E:\sdk\sdk_cuda12.3\opencv490\include\opencv2 E:\sdk\sdk_cuda12.3\opencv490\lib release下配置包含鏈接器輸入的依附依賴項 opencv_world490.lib release編譯文件夾下需手動復制opencv_world49…

Python Pandas庫使用指南:從入門到精通

1. 引言 Pandas 是 Python 中用于數據處理和分析的核心庫之一。它提供了高效的數據結構(如 DataFrame 和 Series),能夠輕松處理結構化數據,支持數據清洗、過濾、聚合、合并等操作。Pandas 在數據分析、機器學習和科學計算領域中被廣泛使用。 本文將詳細介紹 Pandas 的基本…

Visual Studio中打開多個項目

1) 找到解決方案窗口 2) 右鍵添加→ 選擇現有項目 3) 選擇.vcxproj文件打開即可

react路由總結

目錄 一、腳手架基礎語法(16~17) 1.1、hello react 1.2、組件樣式隔離(樣式模塊化) 1.3、react插件 二、React Router v5 2.1、react-router-dom相關API 2.1.1、內置組件 2.1.1.1、BrowserRouter 2.1.1.2、HashRouter 2.1.1.3、Route 2.1.1.4、Redirect 2.1.1.5、L…