AVR & Karakteres LCD: enable puls width(high level)

Pal Lukacs ekegep at yahoo.com
Fri Oct 6 10:56:59 CEST 2006


Helo.
 
 avr+lcd.
 
 Ujra egy kis problemaba utkoztem az LCDkkel kapcsolatosan.
 A problema az hogy az adatlapban irottak ellenere a 'enable puls width(high level)' min: 230ns helyett nekem csak 380us korul sikerult mukodtetni a kijelzot.
 Van amelyik kijelzo kisebb delayel is mukodik,de semmi keppen nem 230ns korul van ez az ertek.
  Soknak tartom ezt az idot..hosszabb muveletnel szamit..
 
 Az egesznek a tapja egy kozep-elagazasos egyszeru 2X 1n4148 diodakbol epitett(ilyen volt keznel),azokkal parhuizamosan kapcsolt 100nf kodni, es a + fesz 1000uf -al van szurve, a -- fesz 100uf -al.(Ez a fesz kellett a kijelzo kontrasztjahoz.)
 Tovabba stabilizalva van a + fesz. (ami hajtja a kijelzot es az avr-t) egy 7805 -el.
 EGyik kijelzomon latszik valami zaj feleseg,hullamzik egy picit.
 Lehet hogy ezert kell nagyobb puls width(high level) ?
 
 A delayt es a toggle_E -t C-ben igy irtam:(nem tudom mennyire pontos igy a +ciklusidok miatt,ez kulon megerne egy tanulmanyozast szamomra.)
 
 lcd_delay_ms (uint16_t ms)
 {
   //delay time in us = ms*10*100
   uint16_t t = (10 * ms);
   while (t--)
     lcd_delay_us (100);
 }
 
 //enable pulse
 void
 lcd_toggle_E ()
 {//enable puls width(high level) min 230 ns
   LCD_PORT |= (1 << LCD_E);    // E=1
   lcd_delay_us (380);        //400us H
   LCD_PORT &= ~(1 << LCD_E);    // E=0
 }
 
 
 Minden segitseget koszonok!
 
 		
---------------------------------
Yahoo! Messenger with Voice. Make PC-to-Phone Calls to the US (and 30+ countries) for 2¢/min or less.


More information about the Elektro mailing list