Pomoc s displejem
Moderátor: Moderátoři
Pomoc s displejem
Název vlákna upraven.Viz PRAVIDLA, odst.7a)
Hill
Ve 2. kroku bych doporučoval přibližně to samé ale s použitím ohm metru.
Ve 3. kroku bych zkontroloval staticky napětí na důležitých pinech. (napájení jednotlivých součástek a pod.)
O dalším se můžeme bavit podle výsledku těchto třech kroků.
Zámek chodí, čili dělá, co má. Atmega zjevně funguje.
Neodbočujme tedy, prosím, k jinému procesoru.
Co byste řešil? Tady se řeší, proč ta stavebnice nezobrazuje. Jak může Arduino odhalit, proč ten display nezobrazuje? BTW, je něco, co byste přes Arduino NEřešil?Kurrur píše:... pouze říkám svůj názor že bych to spíše řešil přes arduino...
Zaky v těch kapkách chyba nebude. Zaměřil bych se na to co co napsal Jirka525
Tohle funguje spolehlivě:
Kód: Vybrat vše
void LCD_send(u08 data, u08 rs)
{
LCD_clock(data >> 4 , rs); // send upper nibbel
LCD_clock(data & 0x0F, rs); // send lower nibbel
}
void LCD_clock(u08 data, u08 rs)
{
LCD_DATA_D |= 0xF0;
LCD_CTRL_D |= _BV(LCD_EN)|_BV(LCD_RS); // initalize ports
if(rs == 1) // RS bit ?
sbi(LCD_CTRL_O, LCD_RS); // set RS line
LCD_DATA_O = (data << 4) | (LCD_DATA_O & 0x0F); // prepare data
// --------------------- send data ------------------------
sbi(LCD_CTRL_O,LCD_EN); // set EN signal
_delay_us(20); // wait
cbi(LCD_CTRL_O,LCD_EN); // reset EN signal
_delay_us(20); // wait
cbi(LCD_CTRL_O,LCD_RS); // reset RS line
}
Kurrur píše:Zaky v těch kapkách chyba nebude. Zaměřil bych se na to co co napsal Jirka525
Jak píše pan Tajovský, rychlé časování může a dost možná i bude problém, uváděl jsem to na posledním místě, když se na nic jiného nepřijde a bude to právě těmi kapkami