|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 10:51 pm
|
Страница 1 от 1
|
[ 3 мнения ] |
|
| Автор |
Съобщение |
|
Ugeen
Ранг: Новодошъл
Регистриран на: Пон Яну 16, 2006 5:20 pm Мнения: 122 Местоположение: гр. Горна Оряховица
|
 Питане за LCD JM161A
Колеги ,най-накрая и аз реших да си направя нещо с LCD,но пак ударих на камък.Имам индикатор JM161A,едноредов с 16 символа на ред.Ползвах примера за LCD от CodevisionAVR и готовата библиотека.Програмата е следната:
/*****************************************************
#include <mega8.h>
#asm
.equ __lcd_port=0x12 ;PORTD
#endasm
#include <lcd.h>
void main(void)
{
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;
DDRC=0x00;
PORTD=0x00;
DDRD=0xFF;
lcd_init(16);
lcd_gotoxy(0,0);
lcd_putsf("Hello world");
while (1)
{
};
}
Не мога да разбера защо ми изписва само първите 8 символа от стринга
(Hello wo); .От начало си помислих да не е скапано LCD-то ,но после пробвах да изместя началната позиция на стринга с функцията gotoxy(4,0);.Оказа се че работи коректно,но пак не иска да изпише по-вече от 8символа .Къде според вас е проблема.
|
| Пет Мар 02, 2007 3:50 pm |
|
 |
|
Ки4о
Ранг: Форумен бог
Регистриран на: Съб Юли 22, 2006 9:50 pm Мнения: 1638
|
Командата ти трябва да е от 2 позиционирания: 1 задаваш адрес 00 и пишеш 8 символа,след това адрес 40 - останалите 8 може и да има и друг начин но в момента нямам време да чета документацията му
|
| Пет Мар 02, 2007 4:20 pm |
|
 |
|
didofen
Ранг: Популярен
Регистриран на: Вто Юни 27, 2006 11:13 am Мнения: 381 Местоположение: Варна
|
така е, няма друг начин. адресите са 00-07 и 40-47.
|
| Пет Мар 02, 2007 5:14 pm |
|
|
|
Страница 1 от 1
|
[ 3 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|