欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 單片機(jī)軟硬件調(diào)試 怪事一堆… [打印本頁(yè)]

作者: 美琴的備胎    時(shí)間: 2022-6-2 23:59
標(biāo)題: 單片機(jī)軟硬件調(diào)試 怪事一堆…
最近的怪事真的多啊,最近打算用51單片機(jī)改裝下買的遙控車,電機(jī)驅(qū)動(dòng)換成了l298n驅(qū)動(dòng)板,我用一個(gè)最小系統(tǒng)板放到了遙控車上。然后怪事就來(lái)了,用開發(fā)板測(cè)試io口輸出是低電平,依據(jù)是開發(fā)板上有個(gè)公共端接vcc的led燈,它是亮的。但是放到車上就是高電平,依據(jù)是,l298n的電機(jī)控制邏輯是高電平控制電機(jī)轉(zhuǎn)動(dòng),電機(jī)動(dòng)了。真的搞不懂最近怎么了,還有昨天也是,改裝遙控器時(shí),用按鈕上拉電阻接到單片機(jī)的數(shù)字口,檢測(cè)到低電平代表按鈕按下了,但是始終是高電平,不管按不按,原以為是電路設(shè)計(jì)問(wèn)題,直到用模擬口檢測(cè)電壓為依據(jù),電壓<2.0v為按下,就正常了。不知道哪的問(wèn)題,郁悶啊……
作者: wc86110    時(shí)間: 2022-6-3 01:37
要看樓主用了什么芯片接了什么電路
作者: 美琴的備胎    時(shí)間: 2022-6-3 08:58
wc86110 發(fā)表于 2022-6-3 01:37
要看樓主用了什么芯片接了什么電路

51普通的點(diǎn)燈電路
作者: 君工創(chuàng)    時(shí)間: 2022-6-3 10:02
有些51的端口要設(shè)置模式啊。
作者: 浮云且留    時(shí)間: 2022-6-3 10:38
端口模式設(shè)置的問(wèn)題
作者: 雪玉寐影    時(shí)間: 2022-6-3 10:51
檢查電源電壓與開發(fā)板是否一致!
作者: 美琴的備胎    時(shí)間: 2022-6-3 12:38
雪玉寐影 發(fā)表于 2022-6-3 10:51
檢查電源電壓與開發(fā)板是否一致!

是一致的
作者: 美琴的備胎    時(shí)間: 2022-6-3 13:58
君工創(chuàng) 發(fā)表于 2022-6-3 10:02
有些51的端口要設(shè)置模式啊。

怎么說(shuō)呢,我不認(rèn)為是配置問(wèn)題,我是改裝的遙控車嘛,把io口輸出放在串口中斷函數(shù)里就不行,但是放到主函數(shù)里就正常了,應(yīng)該是程序的問(wèn)題
作者: 美琴的備胎    時(shí)間: 2022-6-3 13:58
浮云且留 發(fā)表于 2022-6-3 10:38
端口模式設(shè)置的問(wèn)題

怎么說(shuō)呢,我不認(rèn)為是配置問(wèn)題,我是改裝的遙控車嘛,把io口輸出放在串口中斷函數(shù)里就不行,但是放到主函數(shù)里就正常了,應(yīng)該是程序的問(wèn)題
作者: 美琴的備胎    時(shí)間: 2022-6-3 14:29
/*============================================================
= Q=P1^2;                                                                                                     =
= H=P1^3;                                                                                                     =
= Y=P1^4;                                                                                                     =
= Z=P1^5;                                                                                                     =
=============================================================*/
#include <reg52.h>                //器件配置文件
#include <intrins.h>
/*
sbit Z=P3^2;
sbit Y=P3^3;
sbit Q=P3^4;
sbit H=P3^5;
*/
#define fx P2
typedef unsigned char u8;
u8 r_buf; //接收數(shù)據(jù)緩存
u8 flag_q,flag_h,flag_z,flag_y;

//22.1184MHz波特率初始化9600
void InitUART()
{
TMOD = 0x20;
PCON = 0x00;
SCON = 0x50;   
TH1 = 0xFA;
TL1 = 0xFA;
TR1 = 1;
ES = 1;
EA = 1;
}
void SendOneByte(unsigned char c) //發(fā)送字符函數(shù)
{
    SBUF = c;
    while(!TI);
    TI = 0;
}
void UARTInterrupt(void) interrupt 4 //串口接受字符
{
        //while(1){
    if(RI){
     RI = 0;
     switch(SBUF){
         case 'Q':  {flag_q=1;flag_h=0;/*if(flag_q==1&&flag_h==0)*/  {fx=0x10;SendOneByte('q');}}break;
                  /*
         else if(r_buf=='H')  {flag_h=1;flag_q=0;if(flag_h==1&&flag_q==0)  {Q=0;H=1;Z=0;Y=0;CZ}}
         else if(r_buf=='Z')  {flag_z=1;flag_y=0;if(flag_z==1&&flag_y==0)  {Z=1;Y=0;Q=0;H=0;SendOneByte('z');}}
         else if(r_buf=='Y')  {flag_y=1;flag_z=0;if(flag_y==1&&flag_z==0)  {Z=0;Y=1;Q=0;H=0;SendOneByte('y');}}
         else if(r_buf=='q')  {flag_q=1;flag_z=1;if(flag_q==1&&flag_z==1)  {Q=1;Z=1;Y=0;H=0;SendOneByte('q');}}
         else if(r_buf=='h')  {flag_y=1;flag_q=1;if(flag_q==1&&flag_y==1)  {Q=1;Y=1;Z=0;H=0;SendOneByte('h');}}
         else if(r_buf=='z')  {flag_z=1;flag_h=1;if(flag_z==1&&flag_h==1)  {Z=1;H=1;Y=0;Q=0;SendOneByte('z');}}
         else if(r_buf=='y')  {flag_y=1;flag_h=1;if(flag_y==1&&flag_h==1)  {H=1;Y=1;Z=0;Q=0;SendOneByte('y');}}
         */
         default: fx=0x00; break;
          }
         }
//  }
}
//400ms延時(shí)
void Delay400Ms(void)
{
        unsigned char TempCycA = 5;
        unsigned int TempCycB;
        while(TempCycA--)
                {
                        TempCycB=7269;
                        while(TempCycB--);
                };
}

/********************************************************/
void delayms(unsigned int ms)
{
        unsigned char i=100,j;
        for(;ms;ms--)
        {
                while(--i)
                {
                        j=10;
                        while(--j);
                }
        }
}
/*********************************************************/
void main(void)
{       
    fx=0x00;
    InitUART();       
        while(1);       
}
在串口中斷里,io口無(wú)法操作,但是發(fā)送的數(shù)據(jù)可以收到。SendOneByte('z');就是這句是正常的


            
作者: 美琴的備胎    時(shí)間: 2022-6-4 21:36
改成arduino了,搭配lora模塊,距離100步加一面
作者: 7788李    時(shí)間: 2022-6-15 20:07
設(shè)置端口模式




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1