Easyelectronics.ru

Электроника для всех
Текущее время: 20 ноя 2018, 11:03

Часовой пояс: UTC + 5 часов



    • JLCPCB - Прототипы 10 PCBs всего за 2$ (100*100mm, 2-layer)
    • Как мы делаем платы, смотрите на YouTube
    • Крупнейшая китайская фабрика прототипов. 300000+ заказчиков и 10000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин комплектующих.

Начать новую тему Ответить на тему  [ Сообщений: 134 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.
Автор Сообщение
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 июн 2012, 12:26 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Leon11t писал(а):
На главном сайте, в учебном курсе для АВР есть стаття как запустить дисплей и есть еще одна стаття из библиотекой под ассемблер.

1. Я пытался запустить библитеку из статти. Не получилось.
2. Там все сделано на макросах, поэтому я не смог разобраться с логикой работы.
Leon11t писал(а):
А на форуме, в етой ветке есть топик типа "Глючит либа для ЛСД" там есть рабочая библиотека на Си.

С си я пока не хочу даже париться, т.к. хочу разобраться с логикой работы микроконтроллеов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 июн 2012, 16:18 
Старожил
Аватара пользователя

Зарегистрирован: 15 мар 2010, 00:39
Сообщения: 240
Откуда: Украина, Львов
В таком случае могу посоветовать не библиотеку запускать, а писать инициализацыю самому. В учебном курсе, том что я советовал, есть логика запуска лсд, а в даташыте на лсд, есть таблица из всеми таймингами которые нужно выдержать чтоб лсд адекватно прохавал все команды от контролера. Си как то проще изучать. Ассемблер я пытался год выучить, прочел кучу литературы, но так кроме мигалки на светодиодах, написать ничего не удалось. Считаю что его нужно знать, но не писать на нем. За 2 месяца изучения Си, я больше успел понять, чем год тупления в Си. Но ето только мое мнение!

_________________
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 июн 2012, 16:27 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Leon11t писал(а):
В таком случае могу посоветовать не библиотеку запускать, а писать инициализацыю самому. В учебном курсе, том что я советовал, есть логика запуска лсд, а в даташыте на лсд, есть таблица из всеми таймингами которые нужно выдержать чтоб лсд адекватно прохавал все команды от контролера.

Вы вопрос читали то? Там ссылка на мой код. И была просьба, чтобы знающие люди посмотрели его и сказали, в чем там ошибка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 июн 2012, 16:33 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Для тех кому лень качать:
Код:
.include "m16def.inc" ; ATMega16

.CSEG
.ORG 0x0000 ; проц стартует
JMP Reset ; Переход на начало программы
//таблица векторов прерываний
;---------------------------------------------------
.ORG INT0addr ; External Interrupt Request 0
RETI
.ORG INT1addr ; External Interrupt Request 1
.
.
.
.ORG SPMRaddr ; Store Program Memory Ready
RETI
.ORG INT_VECTORS_SIZE ; Конец таблицы прерываний
;-----------------------------------------------

// DATA_PORT шина данных
// CMD_PORT[0..2] линии управления
//(0-E (строб); 1-R/W (0-запись,1-чтение); 2-RS (0-команда, 1-данные))

.equ CMD_PORT = PORTB
.equ CMD_DDR = DDRB
.equ E = 1
.equ RW = 2
.equ RS = 3

.equ DATA_PORT = PORTC
.equ DATA_PORT_DDR = DDRC
.equ DATA_PORT_PIN = PINC

Reset:
LDI R16,low(RAMEND) ; Инициализация стека
OUT SPL,R16
LDI R16,High(RAMEND)
OUT SPH,R16

;Инициализация
CALL DPORT_In ; Порт шины данных на выход
SBI CMD_DDR, E ; Ноги управляющих сигналов
SBI CMD_DDR, RW ; настроили на
SBI CMD_DDR, RS ; выход

CBI CMD_PORT,RS ; убрали управляющие сигналы
CBI CMD_PORT,RW
CBI CMD_PORT,E

// Пауза перед стартом LCD
CALL wait_4mkc

// Начинаем инизиализацию дисплея (8бит)

// 1 команда 8бит 2 строки
CALL DPORT_Out ; порт шины данных на выход.
CBI CMD_PORT,RS ; команда RS=0
CBI CMD_PORT,RW ; Будем писать данные R/W=0

LDI R16,0x38 ; 8бит‚ 2строки
OUT DATA_PORT,R16 ; выставили данные в порт
NOP
CALL strob ; Стробирующий импульс
CALL wait_4mkc ; пауза 4 мкс

// 2 команда 8бит 2 строки
CALL DPORT_Out
CBI CMD_PORT,RS
CBI CMD_PORT,RW

LDI R16,0x38
OUT DATA_PORT,R16
NOP
CALL strob

// Режим указали, готовим дисплей к выводу информации
//Команда очистки экрана
CALL LCD_busy ; проверка готовности ЖКИ
//
CALL DPORT_Out ; Порт шины данных на выход

CBI CMD_PORT,RS ;  команда RS=0
CBI CMD_PORT,RW ; пишем данные R/W=0

LDI R16,0x01 ; очистка экрана
OUT DATA_PORT,R16 ;
NOP
CALL strob ; строб

// Команда вкл экрана
CALL LCD_busy ; проверка готовности ЖКИ
CALL DPORT_Out ; порт данных на выход
CBI CMD_PORT,RS ; команда RS=0
CBI CMD_PORT,RW ; пишем данные R/W=0
LDI R16,0x0C ; включим экран
OUT DATA_PORT,R16 ; данные в порт
NOP
CALL strob ; строб
// Задаем режим смещения курсора
CALL LCD_busy ; проверка готовности
CALL DPORT_Out ; шину данных на выход
CBI CMD_PORT,RS ; команда RS=0
CBI CMD_PORT,RW ; пишем данные R/W=0
LDI R16,0x06 ; вкл. экран
OUT DATA_PORT,R16
NOP
CALL strob

CALL LCD_busy ;
CALL DPORT_Out ; шина данных на выход
CBI CMD_PORT,RS ;команда  RS=0
CBI CMD_PORT,RW ; пишем данные R/W=0
LDI R16,0x80
OUT DATA_PORT,R16
NOP
CALL strob
// Инициализация закончена, можно слать данные
CALL wait_4mkc
// Шлем букву
CALL LCD_busy
CALL DPORT_Out
SBI CMD_PORT,RS ; пишем данные RS=1
CBI CMD_PORT,RW ; пишем данные R/W =0
LDI R16,'A' ;код буквы A
OUT DATA_PORT,R16
NOP
CALL strob
// Посылаем букву
CALL LCD_busy ; проверка готовности ЖКИ
CALL DPORT_Out
SBI CMD_PORT,RS ; будут данные RS=1
CBI CMD_PORT,RW ; будем писать данные R/W =0
LDI R16,'a' ; Код буквы А
OUT DATA_PORT,R16
NOP
CALL strob
// Посылаем код буквы
CALL LCD_busy
CALL DPORT_Out
SBI CMD_PORT,RS
CBI CMD_PORT,RW
LDI R16,0x41 ; Код буквы A
OUT DATA_PORT,R16 ;
NOP
CALL strob
// Порт в исходное состояние
CALL DPORT_In ; Шину данных на вход
loop:
NOP
RCALL LED_blink ; мигаем светодиодом бит5 portА
NOP
RJMP loop ; Цикл
; Подпрограммы
////////////////////////////////////////////////////////////////////////
DPORT_In:
LDI R16,0x00
OUT DATA_PORT_DDR, R16
LDI R16,0xFF
OUT DATA_PORT, R16
RET

DPORT_Out:
//Порт шины данных на выход
LDI R16,0x00 ;
OUT DATA_PORT,R16 ; разгрузили ноги
LDI R16,0xFF ;
OUT DATA_PORT_DDR,R16 ; Порт на выход
RET

strob:
// Стробируэщий импульс
SBI CMD_PORT,E ; строб вкл
CALL delay ; пауза
CBI CMD_PORT,E ; строб выкл
CALL delay ; пауза
RET

LCD_busy:
//Проверка готовности ЖКИ
CALL DPORT_In ;порт шины данных на выход
busy:
CBI CMD_PORT,RS ;команда RS=0
SBI CMD_PORT,RW ; читаем данные R/W=1
SBI CMD_PORT,E ; строб вкл
CALL delay ; короткая пауза
IN R16,DATA_PORT_PIN ; читаем данные
CBI CMD_PORT,0 ; строб выкл
ANDI R16,0x80 ; Продавливаем по маске. Есть флаг?
BRNE Busy ; Если нет, то ждем дальше (опасность тут)
RET
delay:
// фронт строба ~500 нсек
LDI R17,0x04
d0: DEC R17
BRNE d0
RET

wait_05:
//Задержка 0,5 сек
ldi R17, $24
WGLOOP0: ldi R18, $BC
WGLOOP1: ldi R19, $C4
WGLOOP2: dec R19
brne WGLOOP2
dec R18
brne WGLOOP1
dec R17
brne WGLOOP0
; -----------------------------
; delaying 3 cycles:
ldi R17, $01
WGLOOP3: dec R17
brne WGLOOP3
; -----------------------------
; delaying 1 cycle:
nop
; =============================
RET

wait_4mkc:
; =============================
; delay loop generator
; 32 cycles:
; -----------------------------
; delaying 30 cycles:
ldi R17, $0A
WGLOOP4: dec R17
brne WGLOOP4
; -----------------------------
; delaying 2 cycles:
nop
nop
; =============================
RET


LED_blink:

SBI PORTA,1 ;Включить светодиод
CALL wait_05
CBI PORTA,1 ; Выключить светодиод
CALL wait_05
RET


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 июн 2012, 19:26 
Старожил
Аватара пользователя

Зарегистрирован: 15 мар 2010, 00:39
Сообщения: 240
Откуда: Украина, Львов
Попробуйте увеличить время задержки перед стартом лсд не на 4мкс , на 20мс. Посмотрите здесь "Начальная установка модуля" http://www.gaw.ru/html.cgi/txt/lcd/lcm/melt/char/MT-16S2H.htm Там есть таблица последовательности старта. Я свой модуль зарустил именно по ней. Лсд просто не успевает прохавать команды при включении питания, и модуль не успевает иницыализироватся.

_________________
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 25 июн 2012, 15:03 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Leon11t писал(а):
Попробуйте увеличить время задержки перед стартом лсд не на 4мкс , на 20мс.

Увеличил до секунды. По фигу


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 27 июн 2012, 01:36 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Мне тут подсказали, что такое может быть из за включенного фьюза JTAGEN. На этой плате может быть это причиной? И если может, то как его выключить?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 30 июн 2012, 16:34 
Старожил
Аватара пользователя

Зарегистрирован: 15 мар 2010, 00:39
Сообщения: 240
Откуда: Украина, Львов
BinBash писал(а):
Мне тут подсказали, что такое может быть из за включенного фьюза JTAGEN. На этой плате может быть это причиной? И если может, то как его выключить?


DI HALT писал(а):
На порту С висит JTAG. Он по умолчанию включен, потому линии TDI, TDO, TCK, TMS недоступны для программирования. Пиши туда что хошь, а толку будет ноль.

Жтаг проще всего отключить в регистре MCUCSR установив бит JTD

_________________
Изображение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 02 июл 2012, 15:10 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Leon11t писал(а):
BinBash писал(а):
Мне тут подсказали, что такое может быть из за включенного фьюза JTAGEN. На этой плате может быть это причиной? И если может, то как его выключить?


DI HALT писал(а):
На порту С висит JTAG. Он по умолчанию включен, потому линии TDI, TDO, TCK, TMS недоступны для программирования. Пиши туда что хошь, а толку будет ноль.

Жтаг проще всего отключить в регистре MCUCSR установив бит JTD


Уже методом тыка сам понял, что его лучше не использовать. Перенес на порт А - все заработало. А теперь подскажите, что нужно изменить в программе, чтобы на 4х битный режим перейти?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 02 июл 2012, 15:36 
Старожил
Аватара пользователя

Зарегистрирован: 26 сен 2011, 18:19
Сообщения: 222
Откуда: г. Омск
Чтобы перейти в 4х битный нужно при инициаизации посыласть вместо команды 0х38, 0х20. Желетельно это сделать раза два три. Работает он на низкой частоте и иногда бывает тупит, не съедает команду с первого раза.
Необходимо помнить, что когда Вы объявляете режим работы с 4-х разрядной шиной, то есть выдаете команду $20, то делаете это обычно из 8-ми разрядного режима, который устанавливается автоматически после подачи напряжения питания, а значит вы не сможете адекватно объявить необходимое значение флагов N и F, располагающихся в младшей тетраде команды установки разрядности шины. Поэтому команду необходимо повторить в уже установившемся 4-х разрядном режиме путем последовательной передачи двух тетрад, то есть для 4-х разрядного режима образом!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: LCD
СообщениеДобавлено: 09 июл 2012, 22:50 
Только пришел

Зарегистрирован: 20 июн 2012, 20:30
Сообщения: 12
Приветствую!
Помогите разобраться с LCD, суть проблемы:
LCD модель wh1602b-ygk-ctk подключается к Pinboard2 демо программа работает, но вот мои потуги успеха пока не пренесли
Вот используемый мною код:
Код:

#include <avr/io.h>
#include <util/delay.h>

void Clear_ports(void) // 0 на всех пинах.
{
   PORTD=0b00000000;
   PORTC=0b0000000;
}


void Init_ports(void) // настройка портов
{
   DDRD=0b11111111;
   DDRC=0b0000111;
   Clear_ports(); // очистка портов.
}

void Impuls(void) // импульс готовности
{
   PORTC |= _BV(PC0); // на пин E устанавливаем логическую единичку.
   _delay_ms(2); // пауза
   PORTC &= ~_BV(PC0); //Убираем сигнал
}


void Init_LCD(void) // функция инициализации модуля.
{
   _delay_ms(40);
   
   

   PORTD=0b00111000; // 8 bit, 2 line, 5*8 (команда Function Set)
   PORTC=0b0000000;
   Impuls();
   
_delay_us(39);


   PORTD=0b00111000; // 8 bit, 2 line, 5*8 (команда Function Set)
   PORTC=0b0000000;
   Impuls();
   
_delay_us(37);


   PORTD=0b00001101; //display ON OFF
   PORTC=0b0000000;
   Impuls();
   
_delay_us(37);   


   PORTD=0b00000001;//Clear all
   PORTC=0b0000000;
   Impuls();

_delay_ms(2);   

   PORTD=0b00000110; //Entry mode set
   PORTC=0b0000000;
   Impuls();

}

void Char_To_LCD ( char TXT )
{
   PORTD=TXT; //*
   PORTC |= _BV(PC1);
   Impuls();
}

int main (void)
{
   
   while (1==1)
   {
      
      Init_ports();
      Init_LCD();       
      
      Char_To_LCD('H');
      Char_To_LCD('E');
      Char_To_LCD('L');
      Char_To_LCD('L');
      Char_To_LCD('O');
      Char_To_LCD('!'); // !
      _delay_ms(10000);
      
   }

   return 0;
}


Proteus симулирует, все работает, прошиваю не работает (просто на дисплее горит подсветка) - в чем может быть проблема ?
Спасибо!
Схема используемого подключения:


Вложения:
Комментарий к файлу: Схема используемого подключения
1.jpg
1.jpg [ 212.57 Кб | Просмотров: 7317 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: LCD
СообщениеДобавлено: 10 июл 2012, 00:34 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6251
Откуда: Челябинск
Jtag не выключен. А значит считай, что пина пц2 у тебя нет.

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: LCD
СообщениеДобавлено: 10 июл 2012, 15:51 
Только пришел

Зарегистрирован: 20 июн 2012, 20:30
Сообщения: 12
DI HALT писал(а):
Jtag не выключен. А значит считай, что пина пц2 у тебя нет.

Спасибо помогло!
Только теперь другая проблема: символы не соответствуют таблице в даташит, и это нормально если после ввода каждого символа мне приходится сдвигать вручную курсор?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 12 июл 2012, 20:15 
Только пришел

Зарегистрирован: 20 июн 2012, 20:30
Сообщения: 12
Почему пины D0 и D1 находятся в состоят в состоянии "1" ?
реализуется на Pinboard2
вот используемый код:
Код:
#include <avr/io.h> 
#include <util/delay.h>
int main (void)
{   
   while (1==1)
   {
      DDRD=0b11111111;
      DDRB=0b00000111;
      PORTD=0b0000000;
      
      PORTB |= _BV(PB1); // RS=1 1 seg
      PORTD = (0b11100000);
      
      _delay_ms(10000);
            
   }

   return 0;
}

Спасибо


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 12 июл 2012, 20:56 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6251
Откуда: Челябинск
Это остатки от бутлоадера. Т.к. включен UART

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 13 июл 2012, 14:40 
Только пришел

Зарегистрирован: 22 июн 2012, 12:58
Сообщения: 9
Откуда: Владивосток
Denis_K писал(а):
Чтобы перейти в 4х битный нужно при инициаизации посыласть вместо команды 0х38, 0х20. Желетельно это сделать раза два три. Работает он на низкой частоте и иногда бывает тупит, не съедает команду с первого раза.
Необходимо помнить, что когда Вы объявляете режим работы с 4-х разрядной шиной, то есть выдаете команду $20, то делаете это обычно из 8-ми разрядного режима, который устанавливается автоматически после подачи напряжения питания, а значит вы не сможете адекватно объявить необходимое значение флагов N и F, располагающихся в младшей тетраде команды установки разрядности шины. Поэтому команду необходимо повторить в уже установившемся 4-х разрядном режиме путем последовательной передачи двух тетрад, то есть для 4-х разрядного режима образом!

В общем у меня наконец то дошли руки до дисплея. Сделал как Денис рекомендует-и нифига опять. Или там что то еще поменять нужно все таки?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 авг 2012, 09:20 
Заглядывает иногда

Зарегистрирован: 24 авг 2012, 09:06
Сообщения: 67
Откуда: Златоуст
А ЛСД с ПБ2 русские символы поддерживает? Я пытаюсь вывести у мя кракозабры. Мб что делаю не так.
И еще такой вопрос, сначала не мог избавиться от зиг руны, не хотел затираться. Теперь затер кое-как, пропали 3 верхних пиксельных строчки.... на 2 ряду все нормально, на верхнем 3 верхних не горят хоть тресни, шозанах?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 авг 2012, 11:57 
Заглядывает иногда

Зарегистрирован: 24 авг 2012, 09:06
Сообщения: 67
Откуда: Златоуст
Хм, туплю маленько, в демке же "канал АЦП".... но вот с негорящими пиксельными рядами беда.....
З.Ы. не хочу плодить тему, задам маленький вопрос тут. В демопрограмме Ди вектора прерываний вынесены отдельным файлом, а в основной есть такое
Код:
.ORG   INT_VECTORS_SIZE      ; Конец таблицы прерываний

Что это за переменная, точнее как МК определяет ее размер?

..... в свой программу добавил таблицу векторов прерываний, сделал инициализацию стека.... теперь горят только 3 верхних пиксельных рядя 1 верхней строки, то, что я ему говорю выводить ему до лампочки.... убрал инициализацию стека стало все показывать... моск начинает вскипать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 авг 2012, 13:27 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6251
Откуда: Челябинск
Русский поддерживается, но вот только кодировка дисплея не соответствует ни одной из комповых. Так что надо русский текст вбивать кодами символов или искать прогу перекодировщик и вставлять кракозябры в прогу.

INT_VECTOR_SIZE определен в m16def.inc файле. Это стандартная константа, как PORTA, например.

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 авг 2012, 14:43 
Заглядывает иногда

Зарегистрирован: 24 авг 2012, 09:06
Сообщения: 67
Откуда: Златоуст
Спасибо, DI. Не мог ты линкануть на то место, где обсуждалось как вывести на экран данные с порта "для чайников". Сидел читал комменты к статье по подкл. но там довольно все размазано. Ведь все равно это где-то обсуждалось.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 24 авг 2012, 17:34 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6251
Откуда: Челябинск
http://easyelectronics.ru/avr-uchebnyj- ... 44780.html
http://easyelectronics.ru/avr-uchebnyj- ... 44780.html

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 27 авг 2012, 13:28 
Заглядывает иногда

Зарегистрирован: 24 авг 2012, 09:06
Сообщения: 67
Откуда: Златоуст
Да, конечно же. Но там этого нету. Нашел только
Цитата:
Fonarik говорит:
4 Сентябрь 2011 в 19:08

Подсккажите пожалуйста, как при помощи этих библиотек вывести содержимое регистра целяком? то есть выводить не каждый символ отдельно, а содержимое регистра, например я хочу вывести код АЦП на дисплей. как это сделать?
ЗЫ: ассамблер только учу
Войдите, чтобы ответить

DI HALT говорит:
5 Сентябрь 2011 в 19:58

Преобразовать код в символы и вывести. Гугли алгоритм bin2bcd он без проблем находится. После него у тебя будут три числа, которые несложно превратить в ascii код который легко поймет знакогенератор дисплея


Вот и спрашиваю, может уже есть готовый кусок кода, или какая нибудь твоя обновленная библиотека, которая бы позволяла своей командой выводить данные регистра на экран. Чтоб на ранних стадиях не забивать голову сложными конструкциями.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 27 авг 2012, 14:12 
Администратор
Аватара пользователя

Зарегистрирован: 16 янв 2010, 06:09
Сообщения: 6251
Откуда: Челябинск
Моего нет. Я не люблю библиотеки. У меня обычно есть некоторые заготовки, Которые допиливаются на месте и втыкаются на место программы исходя из ее архитектуры.

_________________
Хозяин дома


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 27 авг 2012, 14:41 
Старожил
Аватара пользователя

Зарегистрирован: 28 дек 2011, 11:24
Сообщения: 3773
Откуда: г. Липецк
Как говорилось в одном смешном фильме - "Все уже украдено придумано за нас".
Достаточно задать Гуглу внятный вопрос, получите кучу ответов. Например "ByteToAsc" или "8BitsToAsc".
Непонятно зачем тут библиотека, весь макрос на ассемблере займет менее 10 строк. Применил 3 раза- получил результат. Если нужен макрос и пример, скажите.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Pinboard2 & LCD
СообщениеДобавлено: 27 авг 2012, 16:05 
Заглядывает иногда

Зарегистрирован: 24 авг 2012, 09:06
Сообщения: 67
Откуда: Златоуст
anakost писал(а):
Если нужен макрос и пример, скажите.

Дак уже 3 поста подряд прошу....


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 134 ]  На страницу Пред.  1, 2, 3, 4, 5, 6  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: shooroop


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB