| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
AVR и экран MT10T7
16.07.2010, 00:37
|
#21
|
|
Прописка
Регистрация: 28.09.2006
Сообщений: 144
Сказал спасибо: 11
Сказали Спасибо 95 раз(а) в 51 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от SHIM1
|
|
Не помню, правда, чтобы были километры строк программы
|
Если у Вас на один порт все подключено, то и не будет стока кода
Lockdog, а исходник из main.rar?
|
|
|
|
16.07.2010, 00:42
|
#22
|
|
Временная регистрация
Регистрация: 11.06.2006
Сообщений: 89
Сказал спасибо: 25
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от harchenko_pavel
|
Lockdog, а исходник из main.rar?
|
И из main.rar и с форума пробовал...
|
|
|
|
16.07.2010, 00:48
|
#23
|
|
Временная регистрация
Регистрация: 19.04.2010
Сообщений: 90
Сказал спасибо: 29
Сказали Спасибо 83 раз(а) в 37 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от harchenko_pavel
|
|
Если у Вас на один порт все подключено, то и не будет стока кода
|
Не понял взаимосвязи... Причем тут длина кода и место подключения. Всегда лепил выводы из соображений оптимизации разводки ПП.
|
|
|
|
16.07.2010, 00:53
|
#24
|
|
Прописка
Регистрация: 28.09.2006
Сообщений: 144
Сказал спасибо: 11
Сказали Спасибо 95 раз(а) в 51 сообщении(ях)
|
Re: AVR и экран MT10T7
Нашел ошибку!!!!!!
воспользовался твоим макросом
#define ClrBit(reg, bit) reg |= (1‹‹bit)
#define SetBit(reg, bit) reg &= (~(1‹‹bit))
и даже не обратил внимание что нада:
#define SetBit(reg, bit) reg |= (1‹‹bit)
#define ClrBit(reg, bit) reg &= (~(1‹‹bit))
!!!!!!!
Последний раз редактировалось harchenko_pavel; 16.07.2010 в 01:01.
|
|
|
|
Сказали "Спасибо" harchenko_pavel
|
|
|
16.07.2010, 00:53
|
#25
|
|
Вид на жительство
Регистрация: 03.06.2007
Сообщений: 368
Сказал спасибо: 3
Сказали Спасибо 59 раз(а) в 52 сообщении(ях)
|
Re: AVR и экран MT10T7
Lockdog,извините,не могу понять чего вы так долго мучаетесь.На сайте радиокота есть пример работы с этим дисплеем,правда написан он асме,но немного пошевелив мозгой его легко можно перевести в C.
А разблакировка шины,в зависимости от подключения выглядит примерно так:
void dysplay_mt_init(void)
{
PORT=0x3F; //снятие блокировки
PORT.4=0;
}
|
|
|
|
16.07.2010, 00:57
|
#26
|
|
Прописка
Регистрация: 28.09.2006
Сообщений: 144
Сказал спасибо: 11
Сказали Спасибо 95 раз(а) в 51 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от SHIM1
|
|
Не понял взаимосвязи... Причем тут длина кода и место подключения. Всегда лепил выводы из соображений оптимизации разводки ПП.
|
Как вы думаете проще написать PORTA |= (1‹‹0) | (1‹‹1) | (1‹‹2);
или
PORTA |= (1‹‹0) ;
PORTB |= (1‹‹0) ;
PORTC |= (1‹‹0);
|
|
|
|
16.07.2010, 01:01
|
#27
|
|
Временная регистрация
Регистрация: 11.06.2006
Сообщений: 89
Сказал спасибо: 25
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от harchenko_pavel
|
Нашел ошибку!!!!!!
воспользовался твоим макросом
#define ClrBit(reg, bit) reg |= (1‹‹bit)
#define SetBit(reg, bit) reg &= (~(1‹‹bit))
и даже не обратил внимание что нада:
#define SetBit(reg, bit) reg |= (1‹‹bit)
#define ClrBit(reg, bit) reg &= (~(1‹‹bit))
!!!!!!!
|
Точно!, но всё равно как-то странно работает, он пытается вывести последовательно 123... но идёт сдвиг на две позиции и отображаются не все сегоменты.
|
|
|
|
16.07.2010, 01:03
|
#28
|
|
Временная регистрация
Регистрация: 11.06.2006
Сообщений: 89
Сказал спасибо: 25
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: AVR и экран MT10T7
Сообщение от Vov123
|
Lockdog,извините,не могу понять чего вы так долго мучаетесь.На сайте радиокота есть пример работы с этим дисплеем,правда написан он асме,но немного пошевелив мозгой его легко можно перевести в C.
А разблакировка шины,в зависимости от подключения выглядит примерно так:
void dysplay_mt_init(void)
{
PORT=0x3F; //снятие блокировки
PORT.4=0;
}
|
Сам не знаю, почему так долго с этим экраном вожусь, так и кроме меня ещё один человек мучается...
P.S. в IAR не покатит строка PORT.4=0
|
|
|
|
16.07.2010, 01:08
|
#29
|
|
Прописка
Регистрация: 28.09.2006
Сообщений: 144
Сказал спасибо: 11
Сказали Спасибо 95 раз(а) в 51 сообщении(ях)
|
Re: AVR и экран MT10T7
Надо так
|
Код:
|
//Устанавливаем на шине данных значение запиываемое в старшую тетраду
if (digits_h[c]&0x02) DB1_high; //Если бит 0010=H устанавливаем DB1=H
else DB1_low; //Иначе устанавливаем DB1=L
if (digits_h[c]&0x04) DB2_high; //Если бит 0100=H устанавливаем DB2=H
else DB2_low; //Иначе устанавливаем DB2=L
if (digits_h[c]&0x08) DB3_high; //Если бит 1000=H устанавливаем DB3=H
else DB3_low; //Иначе устанавливаем DB3=L
if (point) DB0_high; //Если point-TRUE устанавливаем DB0=H
else DB0_low; //Иначе устанавливаем DB0=L
delay_mt; //Задержка между записью - tHW
WR1_high; //Записываем в старшую тетраду значения DB0,DB1,DB2,DB3
delay_mt; //Задержка сигнала записи - tWR
WR1_low; //Конец записи
delay_mt; //Задержка удержания - tHAD
DB_all_low; //Устанавливаем шину данных в LOW
delay_mt; //Задержка между записью - tHW |
Без девайса сложно
Надеюсь усе!
Последний раз редактировалось harchenko_pavel; 16.07.2010 в 01:11.
|
|
|
|
Сказали "Спасибо" harchenko_pavel
|
|
|
16.07.2010, 01:24
|
#30
|
|
Временная регистрация
Регистрация: 11.06.2006
Сообщений: 89
Сказал спасибо: 25
Сказали Спасибо 12 раз(а) в 12 сообщении(ях)
|
Re: AVR и экран MT10T7
Теперь вот так стало
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:48.
|
|