一、單片機學習——流水燈實驗

来源:https://www.cnblogs.com/breads/archive/2020/04/14/12676178.html
-Advertisement-
Play Games

實驗目的: 理解並掌握 led 燈的點亮原理; 理解並掌握單片機的 C 語言編程方法; 理解並掌握單片機位操作與埠操作的方法;實驗模塊:核心板+8 位流水燈與獨立按鍵模塊 模塊連接圖: 電路原理圖: 電路原理:將8位流水燈LED1——LED8的陰極與單片機的I/O口P1埠相連,當單片機P1埠相 ...


實驗目的: 理解並掌握 led 燈的點亮原理;
      理解並掌握單片機的 C 語言編程方法;
      理解並掌握單片機位操作與埠操作的方法;
實驗模塊:核心板+8 位流水燈與獨立按鍵模塊

模塊連接圖:

                                       

 

電路原理圖:

             

 

 

電路原理:將8位流水燈LED1——LED8的陰極與單片機的I/O口P1埠相連,當單片機P1埠相應的位賦低電平時,LED燈被點亮

 

 

 

實驗源碼:使用單片機的P1口做輸出口,依次全部點亮8位發光二極體。

  

#include "reg51.h"       //包含頭文件
sbit led=P1^5;           //表示用led等效於P1^5, P1^0就是指頭文件里定義的P1寄存器的第5BIT #define uchar unsigned char
#define uint  unsigned int //延時函數
//************************************************************************************************** delay(uint time)         //int型數據為16位,所以最大值為65535           
 {
  uint  i,j;             //定義變數i,j,用於迴圈語句
  for(i=0;i<time;i++)    //for迴圈,迴圈50*time次
     for(j=0;j<50;j++);  //for迴圈,迴圈50次
 } //**************************************************************************************************
//主函數
//**************************************************************************************************
void main()             //主函數
{
 uchar  i,j;            //定義變數i,j;
 while(1)               //進入while死迴圈
  {                    
   j=0xfe;              //0xfe即為二進位1111 1110,即最低位為0,其他位為1
   for(i=0;i<8;i++)     //進入for迴圈,迴圈8次
     {
      P1=j;             //依次點亮8位LED
      delay(5000);      //延時,修改延時即可修改時間間隔
      j<<=1;            //j左移1位,j<<=1等效於j=j<<1
     }       
  }        
}

 


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

-Advertisement-
Play Games
更多相關文章
  • System.Net.Http.Json Json的序列化和反序列化是我們日常常見的操作,通過 System.Net.Http.Json 我們可以用少量的代碼實現上述操作.正如在github設計文檔中所描述 Serializing and deserializing JSON payloads fr ...
  • 在Linux上進行上傳下載時很容易就會用到壓縮和解壓操作,其中用的較多的算是tar命令了,其他命令也可以瞭解下。 gzip/gunzip命令gzip 文件:以.gz格式壓縮文件。壓縮完成後文件名預設是以.gz結尾的(但是註意Linux中是沒有尾碼名一說的)。gunzip 壓縮文件:解壓.gz格式的壓 ...
  • 轉載請註明原文地址: "程式員的 Ubuntu 19.10 配置與優化指南" 0x00 環境 CPU: Intel Core i9 9900k GPU: GeForce RTX 2070 SUPER RAM: DDR4 16GBx2 OS 1: Ubuntu 19.10 eoan OS 2: Win ...
  • 可能在某些情況下,自己運行的程式不想或者不方便被其他人看到,就需要隱藏運行的進程。或者某些攻擊者採用了本文介紹的隱藏技術,也可以讓大家看到如何進行對抗。 隱藏有兩種方法: 1. kernel 層面,不對用戶層暴露該進程的信息,進程不被看見; 2. 用戶層可以看到該進程信息,但不是以真實的身份出現,而 ...
  • 在上一篇文章的最後,痞子衡給出了這個專題的五個階段推進計劃。第一階段是學習標準QR Code原理,使用Python搭建一個二維碼生成與識別平臺(基於現有開源庫)。你可能會問,為什麼第一階段是基於Python,這其實是痞子衡的習慣。痞子衡每次學習新東西,總喜歡用Python,一是成熟的庫多,二是代碼簡... ...
  • 一、對稱加密與非對稱加密 對稱加密: 加密和解密的秘鑰使用的是同一個. 非對稱加密: 非對稱加密演算法需要兩個密鑰:公開密鑰(publickey)和私有密鑰;簡稱公鑰和私鑰對稱加密 對稱加密的密碼強度高、較難破解。但是秘鑰的保存成為了一個重要的問題,特別是如果機群龐大的時候,一旦某個客戶端暴露了秘鑰, ...
  • tcpdump想要捕獲發送給imap伺服器的數據 , 可以使用下麵的參數 , 預設埠是143 tcpdump -i any dst port 143 -l -s 0 -w -|strings dst port 是目標埠 , 只獲取發送的數據 , 不獲取返回的數據 -l 是監聽模式 -s 0 不限 ...
  • Spire.Cloud支持的Linux伺服器系統包括CentOS和Ubuntu(推薦使用CentOS 7和Ubuntu 18版本),本教程主要介紹如何在CentOS 7系統上實現Spire.Cloud私有化部署。 詳細步驟如下: 一、安裝CentOS 7系統 首先,需要在伺服器上安裝CentOS 7 ...
一周排行
    -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# ...