Страница 288 из 304
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн янв 07, 2019 19:20:20
Вадимчик75
Уважаемые коты! Помогите котёнку
Начал осваивать Баском, и вот после пары простеньких устройств столкнулся с проблемой.
Не получается работа с ЖКИ дисплеем (TM164AD P-6 4 строки по 16 символов).
программа:
Спойлер
$regfile = "attiny2313.dat"
$crystal = 4000000
Dim Count As Byte
Dim Cur_vel As Integer
Dim Str_vel As String * 3
Dim Vel(6) As String * 3
Count = 0
Cur_vel = 1
Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.0 , Rs = Portd.6
Config Lcd = 16 * 4
Wait 1
Cls
For Count = 1 To 6
Str_vel = Str(cur_vel)
Vel(count) = Format(str_vel , "000")
Cur_vel = Cur_vel + 50
Next Count
Do
Upperline
Lcd "1. " ; Vel(1) ; " 2. " ; Vel(2);
Lowerline
Lcd "3. " ; Vel(3) ; " 4. " ; Vel(4);
Thirdline
Lcd "5. " ; Vel(5) ; " 6. " ; Vel(6);
Fourthline
Lcd "1234567890123456"
Loop
End
схема - стандартная, пины дисплея расписаны в программе. В симуляторе работает просто отлично, на реальном устройстве - хрень какая-то... 1 и 3 строка дисплея пустые, 2 и 4 - черные квадраты.
Вариантов два - или я туплю, или дисплей неисправный. И сразу дополнительный вопрос - как можно такой дисплей быстренько проверить на исправность?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн янв 07, 2019 20:30:42
kip96
R/W на землю не забудьте, и контрастность крутить.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн янв 07, 2019 20:36:26
Вадимчик75
[uquote="kip96",url="/forum/viewtopic.php?p=3543239#p3543239"]R/W на землю не забудьте, и контрастность крутить.[/uquote]
R/W на землю повесил, контраст крутил. Черные закоместа гаснут при изменении контраста и всё, больше ничего не происходит.
А вот D0-D3 я на землю не вешал. Это критично?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн янв 07, 2019 20:49:46
vem566
Вадимчик75 писал(а):А вот D0-D3 я на землю не вешал. Это критично?
Да нет. Хотя могут помехи ловить.
В баскоме есть команда INITLCD. Вроде она автоматически вызывается при обращении к дисплею, но может все же лучше поставить её перед началом. До цикла Do-Loop. Ну и проверить подключение ног. Не раз путал ноги подключения и прописанные в программе.
А дисплей б/у?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пн янв 07, 2019 21:08:37
Вадимчик75
initlcd ставил сразу после "Config Lcd = 16 * 4" - нет результата.
Ноги проверял и пересоединял - не помогает (((((((
Дисплей б/у, их у меня три штуки, все три ведут себя одинаково (((((
Нашел вот такую статейку - завтра еще по ней попробую:
http://cxem.net/izmer/izmer152.php
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вт янв 08, 2019 07:43:43
torneb
[uquote="Вадимчик75",url="/forum/viewtopic.php?p=3543192#p3543192"]Уважаемые коты! Помогите котёнку
Начал осваивать Баском, и вот после пары простеньких устройств столкнулся с проблемой.
Не получается работа с ЖКИ дисплеем (TM164AD P-6 4 строки по 16 символов).
программа:
Спойлер
$regfile = "attiny2313.dat"
$crystal = 4000000
Dim Count As Byte
Dim Cur_vel As Integer
Dim Str_vel As String * 3
Dim Vel(6) As String * 3
Count = 0
Cur_vel = 1
Config Lcdpin = Pin , Db4 = Portb.1 , Db5 = Portb.2 , Db6 = Portb.3 , Db7 = Portb.4 , E = Portb.0 , Rs = Portd.6
Config Lcd = 16 * 4
Wait 1
Cls
For Count = 1 To 6
Str_vel = Str(cur_vel)
Vel(count) = Format(str_vel , "000")
Cur_vel = Cur_vel + 50
Next Count
Do
Upperline
Lcd "1. " ; Vel(1) ; " 2. " ; Vel(2);
Lowerline
Lcd "3. " ; Vel(3) ; " 4. " ; Vel(4);
Thirdline
Lcd "5. " ; Vel(5) ; " 6. " ; Vel(6);
Fourthline
Lcd "1234567890123456"
Loop
End
схема - стандартная, пины дисплея расписаны в программе. В симуляторе работает просто отлично, на реальном устройстве - хрень какая-то... 1 и 3 строка дисплея пустые, 2 и 4 - черные квадраты.
Вариантов два - или я туплю, или дисплей неисправный. И сразу дополнительный вопрос - как можно такой дисплей быстренько проверить на исправность?[/uquote]
Попробуйте вместо Format использовать Fusing c соответствующей маской.
https://avrhelp.mcselec.com/index.html?fusing.htm
Да , и для начала просто выведите какое-нибудь число на экран.Или надпись на латинице .Можно вообще без Do.... Loop.
Если выводится- отлаживаем дальше..
Если индикатор с подсветкой- должны быть подключены: - Катод на общий,анод через резистор 470Ом на плюс и переменным резистором выставляется контраст
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вт янв 08, 2019 12:48:33
Moto_v3x
для начала было б неплохо узнать на каком контроллере дисплей, инициализация для HD44780 в баскоме не подходит для KS0066
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вт янв 08, 2019 13:29:32
Вадимчик75
Доброго дня всем!
И сразу приношу свои извинения всем кого потревожил своей проблемой!
Решение проблемы оказалось очень простым, схему собирал на макетнице проводами с наконечниками от доблестных "китайских друзей" с алиэкспресса . И что выяснилось... Два провода которые пришлись на "Е" и "D5" были с обрывом внутри.

Вот и вся проблема....
После замены - фсё заработало.
Большое спасибо всем помогавшим!!!
PS. Пойду ловить своего кота и буду уговаривать его попозировать для аватарки

Re: BASCOM AVR в вопросах и ответах
Добавлено: Пт янв 18, 2019 23:25:22
nikin_n
BASCOM 2.8.1 и Windows 10 x64 версии 1809 - несовместимая комбинация. ??
До обновления работал . Вот сегодня обновил "винду" и:

я один такой везунчик?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб янв 19, 2019 15:02:46
vem566
Ну так откатить обновления. Потом выяснить, которое из пакета вводит в ступор баском и его не ставить.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Сб янв 19, 2019 16:09:02
nikin_n
А смысл откатывать ? Все равно обновлять наде..
Нашел на форуме разработчика BASCOM упоминание о такой же проблеме. Не критично, в следующем выпуске исправят.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 20, 2019 06:48:18
vem566
nikin_n писал(а):Все равно обновлять наде..
А зачем? Сижу на семерке, года 4 назад поставил очередное обновление. Полезли глюки. Откатил, отключил обновления и прекрасно себя чувствую. Ставлю все, что нужно, все работает без проблем. Сношу, что не нужно. А последние художества микрософта по принципу "удаляем старые ошибки, добавляем новые" мне как то ни к чему.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 20, 2019 14:52:50
SIM31
[uquote="vem566",url="/forum/viewtopic.php?p=3552948#p3552948"]А последние художества микрософта по принципу "удаляем старые ошибки, добавляем новые" мне как то ни к чему.[/uquote]
В Windows 10 я вообще не могу заблокировать обновления, и утилиты специальные ставил, все равно лезет в интернет и обновляет. На ноутбуке винт 64 гб, места для обновлений нет и все равно пытается что-то поставить. Наверное надо откатываться на Windows 7 или 8
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 20, 2019 17:48:28
vem566
Когда я поставил себе десятку, то сразу заметил тормоза инета. Быстро выяснил, что исходящий трафик почти в 10 раз превышает входящий. Через полчаса стояла обратно семерка. Шпиёнов нам не надо.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 20, 2019 18:18:38
vanyap1

очень актуально
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс янв 20, 2019 18:22:09
vem566
Ну ХР все же крайность. Да и дочь в возрасте 7 лет расшифровала как Хреновая Программа.
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пт янв 25, 2019 17:34:11
Novice user
Вопрос по переходам call
Допустим в программе используется библиотека,и там полно CALL и возврат из библиотеки,сам вопрос-затрачивает ли атмега такты на эти переходы и возвраты?
например инициализация ILI9341
Lcd_reset = 0
Waitms 150
Lcd_reset = 1
Waitms 150
Call Lcd_write_command(&H01) '&H01 SWRESET
waitms 120
'Power Control 1
Call Lcd_write_command(&HC0)
Call Lcd_write_data(&h25)
'Power Control 2
Call Lcd_write_command(&HC1) 'step up
Call Lcd_write_data(&h11)
'VCOM Control 1
Call Lcd_write_command(&HC5) ' VCOMH - VCOML = 5.2V
Call Lcd_write_data(&h2B) 'VCOMH = 3.825
Call Lcd_write_data(&h2B) 'VCOML = -1.375
'VCOM Control 2
Call Lcd_write_command(&HC7) ' Vcom offset
Call Lcd_write_data(&h86) 'VML=58 VMH=58
'Memory Access Control
'TFT_SetOrientation(orient) ************
Call Lcd_write_command(&H36)
Call Lcd_write_data(&hE8)
'COLMOD: Pixel Format Set
Call Lcd_write_command(&H3A) '
Call Lcd_write_data(&h05)
'Frame Rate Control
Call Lcd_write_command(&HB1)
Call Lcd_write_data(&h00)
Call Lcd_write_data(&h18) 'Frame Rate 79Hz
'Display Function Control
Call Lcd_write_command(&HB6)
Call Lcd_write_data(&h0A)
Call Lcd_write_data(&h82) '
Call Lcd_write_data(&h27)
' Sleep Out
Call Lcd_write_command(&H11)
waitms 120
'Display On
Call Lcd_write_command(&H29)
Sub Lcd_write_command(byval Command As Byte)
Lcd_dc = 0
Spiout Command , 1
End Sub
Sub Lcd_write_data(byval Da_ta As Byte)
Lcd_dc = 1
Spiout Da_ta , 1
End Sub
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пт янв 25, 2019 18:13:26
vem566
Novice user писал(а):затрачивает ли атмега такты на эти переходы и возвраты?
А как иначе можно узнать адрес следующей команды, кроме как считать из памяти или рассчитать?
Re: BASCOM AVR в вопросах и ответах
Добавлено: Пт янв 25, 2019 18:46:14
Novice user
Спасибо,я тоже так думал но долго сомневался,пытаюсь ускорить графику на ILI9341 по SPI,в принципе получается если использовать ассемблерные вставки
Re: BASCOM AVR в вопросах и ответах
Добавлено: Вс фев 17, 2019 18:43:18
torneb
Здравствуйте
Никогда не работал с СОМ портом ,решил вот попробовать.
Написал простенькую программку
Код: Выделить всё
$regfile = "attiny2313.dat"
$crystal = 4000000
$hwstack = 40
$swstack = 16
$framesize = 32
$baud = 9600
'на адаптере; синий- общий
' ; зеленый-Rxd общий
' ; оранжевый- Txd
Do
Print "Hello"
wait 2
Loop
End
В симуляторе все прекрасно работает, в терминалке слово Hello видно превосходно.
Подключил вот такой девайс с али.

Настроил порт. Прошил контроллер.Но в терминале при приеме какие-то кракозябры вместо английского Hello.
Вопрос - такой преобразователь UART может работать корректно?
Спасибо)