国产免费AV|泡泡玛特欧洲总部将设在伦敦|中文天堂网www新版资源在线|一本久道综合在线中文|国精产品一二三产区的使用方法|香蕉鱼在线观看|www.27eee

 找回密碼
 注冊
搜索

51單片機串口控制3-L298N直流電機方向速度 Proteus仿真代碼

[復制鏈接]
樓主
eng 發表于 2021-7-21 00:38:46 | 只看該作者 |只看大圖 |倒序瀏覽 |閱讀模式
此次實驗將通過窗口輸入來控制直流電機的正反轉并將輸入的數值在數碼管上顯示出來。本次實驗的另一個目的便是了解L298芯片的工作原理和通過PWM控制電機轉動的工作機理。
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51單片機串口控制3-L298N直流電機方向速度 Proteus仿真代碼 3.gif

部分源碼:完整源碼見附件
  1. #include <reg51.h>
  2. #define u8 unsigned char
  3. #include "uart.h"
  4. sbit M1=P3^6;
  5. sbit M2=P3^7;
  6. bit fang=0;//0順 1逆
  7. bit sudu=0;//0慢 1快
  8. //串口接收,0順 1逆 2慢 3快
  9. u8 i=0;
  10. void delay(long k){while(k--);}
  11. void main (void)
  12. {
  13.         u8 key=0;//按鍵狀態
  14.         UART1_init();
  15.         UART1_Sends("Phuck u everyday");
  16.         UART1_Send(0x0d);UART1_Send(0x0a);//回車、換行
  17.         while(1)
  18.         {               
  19.                 if(key!=P1)//如果按下了按鍵
  20.                 {
  21.                         key=P1;//獲取最新的按鍵狀態
  22.                         SBUF=key;//發送
  23.                 }
  24.                 if(fang==0)
  25.                 {
  26.                         if(sudu==0) {M1=0;M2=1;delay(1000);
  27.                                                                          M1=0;M2=0;delay(500);}
  28.                         if(sudu==1) {M1=0;M2=1;delay(10000);}//補充順時針代碼,含速度
  29.                 }
  30.                 else
  31.                 {
  32.                         if(sudu==0) {M1=1;M2=0;delay(1000);
  33.                                                                          M1=0;M2=0;delay(500);}
  34.                         if(sudu==1) {M1=1;M2=0;delay(10000);}//補充逆時針代碼,含速度
  35.                 }
  36.         }
  37. }

  38. void UART_INT(void) interrupt 4
  39. {
  40.         if(RI)//串口輸入引起的中斷
  41.         {
  42.                 P2=SBUF;//獲取用戶命令SBUF,并顯示ASCII
  43.                 i=SBUF & 0x0F;
  44.                 switch(i)
復制代碼
串口控制3-直流電機方向速度.rar (79.52 KB, 售價: 2 E幣)
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規則

手機版|小黑屋|ELEOK |網站地圖

GMT+8, 2026-5-26 02:11

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回復 返回頂部 返回列表