標題: 有誰遇到過51單片機的LCD對pwm波的輸出有影響 [打印本頁]

作者: ADC0832    時間: 2017-12-10 20:46
標題: 有誰遇到過51單片機的LCD對pwm波的輸出有影響
普中的stc89c52LCD會影響到pwm的輸出嗎,LCD用到了p2^5---p2^7和p2口,pwm的用到的是p3^4口#include "lcd.h"#include <REG52.H>
#define PLUS_PER 330
extern int  interruptcounter;        //ía2¿ÖD¶Ï′Îêy
extern unsigned int speed ;
extern unsigned long PlusCounter;       //ía2¿Âö3å¸öêy
void LCD_Write_String(unsigned char *p);
void LcdWriteData(uchar dat);                                     //D′èëêy¾Y
void LcdWriteCom(uchar com)        ;                 //D′èëÃü
void LcdInit();                                                                    //LCD3õê¼»ˉ×ó3ìDò
void gotoxy(unsigned char x,unsigned char y); //ÔúxDDyáDÏÔê¾êy¾Y
void ClacSpeed()                             //êy¾Y′|àíoˉêy
    {    int speed ;
                           unsigned long PlusCounter;  
         PlusCounter =interruptcounter;
         speed =(PlusCounter/PLUS_PER)*60;//ÿ·ÖÖóμÄ×aêy
                           {   
//                                                 gotoxy(1,1);
//                                                 LCD_Write_String("V= ");
//                                                 gotoxy(1,3);
//                                                 LcdWriteData((speed/1000)%10+0x30);
//                                                 gotoxy(1,4);
//                                                 LcdWriteData((speed/100)%10+0x30);       
//                                                 gotoxy(1,5);
//                                                 LcdWriteData((speed/10)%10+0x30);
//                                                 gotoxy(1,6);
//                                                 LcdWriteData(speed%10+0x30);
//                                                 gotoxy(1,7);
//                                                 LCD_Write_String("r");
//                                                 gotoxy(1,8);
//                                                 LCD_Write_String("/");
//                                                 gotoxy(1,9);
//                                                 LCD_Write_String("m");
//                                                 gotoxy(1,10);
//                                                 LCD_Write_String("i");
//                                                 gotoxy(1,11);
//                                                 LCD_Write_String("n");
                                                 interruptcounter=0;                       
          }       
  }                                 
void gotoxy(unsigned char x,unsigned char y) //ÔúxDDyáDÏÔê¾êy¾Y
{
        if(x==1)
        {
                 LcdWriteCom(0x80+y-1);
        }
        if(x==2)
         {
                 LcdWriteCom(0xc0+y-1);
         }
}


作者: hange_v    時間: 2017-12-10 21:54
看電路圖
作者: slovef2199    時間: 2017-12-10 22:00
先把LCD的顯示關(guān)掉,看看PWM是否正常。
這樣就能判斷是LCD影響,還是PWM本身的程序或電路有問題
作者: gudashou    時間: 2017-12-10 22:24
理論上不會影響
作者: 遇見1111111    時間: 2017-12-11 09:47
你的LCD肯定有延時函數(shù),pwm也有延時,兩個一起工作肯定會影響,想讓他沒影響就用帶硬件的pwm的單片機,你可以在延時函數(shù)上做點功夫,或者把LCD的刷新放在定時器中斷里,這樣影響可能就小了
作者: ADC0832    時間: 2017-12-11 14:56
謝謝大佬們的解答,已找到問題了,現(xiàn)在就想怎么解決了
作者: ADC0832    時間: 2017-12-11 15:04
LCD的顯示和pwm的輸出不能同時擁有
作者: 胡歌11    時間: 2017-12-11 15:29
不知道




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