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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1944|回復: 8
打印 上一主題 下一主題
收起左側

我這段單片機代碼為什么小車動不了?感覺沒什么問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:586622 發表于 2019-8-9 23:15 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#include<reg52.h>


typedef unsigned char u8;
typedef unsigned int  u16;
sbit IN1=P2^1;
sbit IN2=P2^0;
sbit ENA=P2^2;
sbit ENB=P2^3;
u8        time1;


void time()
{        
    TMOD|=0x01;
        TH0=0XFF;
        TL0=0Xff;
        EA=1;
        ET0=1;
        TR0=1;
}

void main()
{

        time();
        while(1)
        {

                if (time1>1000)time1=0;//定義周期
                IN1=0;
                IN2=1;
                   if(time1<=500)          //占空比50%
                   {
                        ENA=1;
                        ENB=1;
               
                }
                else
                {
                ENA=0;
                ENB=0;
               
                }
                IN1=1;
                IN2=0;
                if(time<=500)          //占空比50%
                   {
                        ENA=1;
                        ENB=1;
                }
                else
                {
                 ENA=0;
                ENB=0;
                }
                }
}
void time0() interrupt 1
{
        TH0=0XFF;
        TL0=0Xff;
        time1++;
        
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:332444 發表于 2019-8-10 03:58 | 只看該作者
time這個定義在哪?沒看到
回復

使用道具 舉報

板凳
ID:542954 發表于 2019-8-10 08:38 來自手機 | 只看該作者
你的這個定時中斷給的時間或許過于短了吧,這是一個機器周期一次中斷,算下來你pwm的周期也只有1000個機器周期,這個頻率可能超過了電機的接受范圍。你可以適量減少TH0和TL0的值試一下
回復

使用道具 舉報

地板
ID:586622 發表于 2019-8-10 09:37 | 只看該作者
xianfajushi 發表于 2019-8-10 03:58
time這個定義在哪?沒看到

主函數第一個就調用了
回復

使用道具 舉報

5#
ID:586622 發表于 2019-8-10 09:39 | 只看該作者
witheMe 發表于 2019-8-10 08:38
你的這個定時中斷給的時間或許過于短了吧,這是一個機器周期一次中斷,算下來你pwm的周期也只有1000個機器 ...

#include<reg52.h>


typedef unsigned char u8;
typedef unsigned int  u16;
sbit IN1=P2^1;
sbit IN2=P2^0;
sbit IN3=P2^2;
sbit IN4=P2^3;
                         
#define L_go      IN1=0;IN2=1 //左輪前進
#define L_back    IN1=1;IN2=0 //左輪后退   
#define L_stop    IN1=0;IN2=0        //左輪停止,兩個輸出1也可以
#define R_go            IN3=0;IN4=1 //右輪前進
#define R_back          IN3=1;IN4=0 //右輪后退
#define R_stop          IN3=0;IN4=0 //右輪停止,兩個輸出1也可以
void main()
{
        while(1)
        {
         L_go;
         R_go;
        }       
}
我這樣不用PWM直接讓他動,為什么也不行
回復

使用道具 舉報

6#
ID:542954 發表于 2019-8-10 10:22 | 只看該作者

那我覺得你或許需要檢查一下你的硬件問題了,看是不是線松動了,單片機出了啥差錯,穩壓模塊驅動模塊是不是正常工作,電機是否可以正常轉動
回復

使用道具 舉報

7#
ID:332444 發表于 2019-8-10 10:22 | 只看該作者
longtimenosee 發表于 2019-8-10 09:37
主函數第一個就調用了

     if(time<=500)     我說的是這個
回復

使用道具 舉報

8#
ID:586622 發表于 2019-8-10 12:56 | 只看該作者
witheMe 發表于 2019-8-10 10:22
那我覺得你或許需要檢查一下你的硬件問題了,看是不是線松動了,單片機出了啥差錯,穩壓模塊驅動模塊是不 ...

我現在就是排查到應該是單片機沒進入電路,但是我把L298N的GND和最小系統板的GND連在一起,這種接法沒有問題
回復

使用道具 舉報

9#
ID:586622 發表于 2019-8-10 12:56 | 只看該作者

這個打掉了一個1.。。
回復

使用道具 舉報

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

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 成人欧美一区二区三区在线观看 | 欧美9999 | 欧美乱人伦视频 | 黄色在线免费观看 | 国产精品一区二区福利视频 | 天堂综合| 中文字幕人成乱码在线观看 | 天堂网中文字幕在线观看 | 日韩二区| 欧美一级在线 | 99免费在线观看 | 国产一区二区三区视频在线观看 | 亚洲视频免费观看 | 国产精品久久久99 | 国产午夜精品一区二区三区四区 | 福利一区在线观看 | 国产精品区二区三区日本 | 中文字幕一区二区三 | 亚洲一区有码 | 国产黄色精品在线观看 | 欧美日韩激情 | 69av片| 亚洲一区二区在线 | aa级毛片毛片免费观看久 | 电影91久久久 | 国产视频久久久 | 中文字幕中文字幕 | 岛国av在线免费观看 | 羞羞的视频免费看 | 91亚洲国产成人久久精品网站 | 国产美女精品 | 中文天堂在线一区 | 亚洲国产一区二区三区 | 欧美电影在线观看网站 | 亚洲国产一区二区视频 | 免费 视频 1级| 成在线人视频免费视频 | 欧洲尺码日本国产精品 | av一级| 久久99国产精一区二区三区 | 欧美国产视频 |