Открыть с помощью\ Дополнительно\ В самом низу: Найти другое приложение на этом компьютере. Открывается проводник, находите папку, куда установлен Баском. Выбираете bascavr.exe. Или, по правильному, но дольше: Панель управления\ программы по умолчанию\ Сопоставление типов файлов или протоколов с конкретными программами. И там выбираете.
Глюки в BASCOM
Сообщений 31 страница 60 из 108
Поделиться322021-10-30 21:11:04
///
Это все вначале пути перепробовал. Не работает. Выбираешь программу, а она в контекст не попадает, так блокнот и остается..
Поделиться352021-10-30 23:26:44
Выбирается только консольное приложение...
Странно...
А файлик выше - bascavr.exe в выборе не участвует ?
Его указать не получается ?
Насколько я помню, что укажешь в данной ситуации, то и будет выполняться.
Можно даже файлы автокад с экселем ассоциировать - и тот будет пытаться их открыть...
Отредактировано Nord (2021-10-30 23:28:15)
Поделиться362021-10-30 23:43:50
А через панель управления тоже не получается, как я выше писал?
Поделиться372021-10-31 11:10:06
///
ну через панель это тоже самое что и через контекст.. не работает.
А файлик выше - bascavr.exe в выборе не участвует ?
Его указать не получается ?
Участвует, просто он не выбирается, при нажатии на него ничего не происходит. Просто сбрасывается.
Поделиться382021-10-31 11:13:30
Очень странно. Именно этот файл я выбирал, всё получалось.
Поделиться392021-10-31 11:30:29
Ну как то так. До этого 8.1 версия все норм. а 8.3 не хочет.
Поделиться402021-10-31 13:03:42
При этом сам программатор в устройствах определяется нормально. Установлена lib usb 1.2.6
Убил два дня, ничего не помогает. Ставил студию 6, фиг вам. Похоже что накрылся сам?
На третий день всё получилось. Тривиальная вещь, надломился проводок в шлейфе которым подключаемся к контроллеру.
Недаром говорят, что электроника - это наука о контактах.
Поделиться412021-10-31 13:47:50
Ну как то так. До этого 8.1 версия все норм. а 8.3 не хочет.
8.1 и 8.3 - это про что ? Винда или Баском ?
У меня Win7, все нормально выбирается.
Bascom ....8.2
С удовольствием бы откатился на ХР, но материнка не позволяет, в биосе зашита проверка легетимности, дата закончилась три года назад...
"Семерку" и то подбирать пришлось, не каждая сборка встала...
Поделиться422021-10-31 18:27:32
8.1 и 8.3 - это про что ? Винда или Баском
Баском, с виндой все норм.
Поделиться432021-10-31 18:47:20
Баском, с виндой все норм.
Как же "нормально", если невозможно выполнить желаемое ?
А если из папки Баскома удалить этот "консольный" ехе-шник ?
Увидит Винда правильный файл ?
Попробовал у себя - Баском без него стартует в любом раскладе.
Поделиться442021-10-31 19:20:44
"нормально"
Поставил на другой комп все тоже самое.
удалить этот "консольный
Удалил, не открывает..
Отредактировано Yuriy.pv (2021-10-31 19:21:14)
Поделиться452021-10-31 19:29:21
А с какими версиями Баском все было нормально с Виндой ?
Я к тому, что Баском прекрасно "размножается копированием".
При всех переустановках Винды просто вытягивал ярлычок на Рабочий стол и все...
Поставить "рабочий" вариант, выполнить ассоциацию, на другом компе поставить желаемую версию и на флешке перенести поверх "рабочего".
Поделиться462021-10-31 20:10:25
с какими версиями Баском все было нормально с Виндой ?
до 8.1 все норм, 8.3 на двух компах не работает. Ну можно попробовать скопировать, все зачистить и распаковать обратно.
Поделиться472021-11-29 23:59:18
Решил побаловаться с WS2812
Столкнулся с проблемой компиляции строки:
Config Rainbow = 1 , Rgb = 3 , Rb0_len = 256 , Rb0_port = Portf , Rb0_pin = 0
При этом RGB=4 компилируется.
Ошибка компиляции:
Error : 303 Line : 41 #ELSE, #ELSEIF, OR #ENDIF without #IF , in File : C:\YandexDSK-RPRMSR\YandexDisk\Разработка\Цветомузыка\m128 - Цветомузыка.bas
Версия 2.0.8.3 и 2.0.8.4 одинаково ругаются.
Искал в библиотеке проблему, не нашёл. Где можно покопаться, точней какой файл отвечает за CONFIG Rainbow? SOS
P:S: На всякий случай написал на форум DE: https://www.mcselec.com/index2.php?opti … 1046#81046
Отредактировано Ev3658 (2021-11-30 00:19:59)
Поделиться482021-11-30 00:27:25
Решил побаловаться с WS2812
Столкнулся с проблемой компиляции строки
Попробуйте убрать Rgb = 3 (используется по умолчанию и можно не объявлять), а в Rb0_len = написать 255
UPD:
Сколько приходилось, использовал такое (неиспользуемое "заремить"):
$lib "Rainbow1.21.lib"
$external WS2812bDeclare Sub Select_Rainbow(byval Channel As Byte)
Declare Sub Setcolor(byval Lednr As Word , Color() As Byte)
Declare Sub Send()
Declare Sub Shift_left(byval Left_index As Word , Byval Width As Word) : $external Use_shift_left
Declare Sub Shift_right(byval Left_index As Word , Byval Width As Word) : $external Use_shift_right
Declare Sub Rotate_left(byval Left_index As Word , Byval Width As Word) : $external Use_rotate_left
Declare Sub Rotate_right(byval Left_index As Word , Byval Width As Word) : $external Use_rotate_right
Declare Sub Clear_colors() : $external Use_clear_colors
Declare Sub Fill(color() As Byte) : $external Use_fill'#Rainbow0
Const Rainbow0_len = 20
Const Rainbow0_port = PortB
Const Rainbow0_pin = PB4
Никаких Config.... не надо
Отредактировано Nord (2021-11-30 00:34:24)
Поделиться492021-11-30 15:38:42
Никаких Config.... не надо
ТОже не прокатило. Не, это Windows 10, в Win7 проблем никогда небыло, именно в Windows 10 то компилятор не запускается, то глюки всякие.
Поделиться502021-11-30 15:59:41
Глюк исправил через обновление 2.0.8.3
Запустил с правами администратора 2.0.8.3
Запустил обновление
Установил у другую папку "C:\MCS\BASCAVR2084-2"
На файл 2.0.8.4 в Win10 установил совместимость с Windows 7 + запуск с правами администратора
Запустил и ошибка пропала.
Вообще уже жуть как руки чешутся попробовать WS2812 с DMA и таймерами Xmega
Поделиться512021-11-30 16:19:17
попробовать WS2812 с DMA и таймерами Xmega
Так уже игрались мы с тобой с DMA, когда она работает, все процессы встают (а тут протокол ещё тормозной), чо толку от неё, будет тормозить весь МК, уж проще как есть (прерывания).
Отредактировано RDW (2021-11-30 16:19:54)
Поделиться522021-11-30 16:46:50
с DMA, когда она работает, все процессы встают
DMA работает в фоне и МК может выполнять другие задачи (пусть медленнее, но выполнять), а не заниматься только выводом в ленту.
уж проще как есть (прерывания).
Серьезно думаете что сохранение/восстановление 32 регистра + 1 + код, быстрее чем DMA?
Поделиться532021-11-30 17:24:02
DMA работает в фоне
Тут очень сложно с DMA будет. Вроде кто-то просто использует шину данных для внешней ОЗУ.
Я вот думаю попробовать взять тактирование по таймеру и через DMA заносить следующий бит для сдвига осциллятора (создание 0 или 1).
Поделиться542021-11-30 18:28:22
Серьезно думаете
У вас неправильный ход мысли. WS-ки отрабатывают в основном стволе кода, а остальное на прерываниях (без задержек).
DMA работает в фоне
Не рассказывайте мне сказки, когда с VGA проектом ковырялись, там всё и всплыло. МК же не двух ядерный.)
Я вот думаю попробовать взять тактирование по таймеру и через DMA заносить следующий бит для сдвига осциллятора (создание 0 или 1).
Ну по мне, сомнительный выигрыш - ИМХО. Но ради эксперимента можно и попробовать.
Поделиться552021-12-01 01:54:14
У вас неправильный ход мысли.
Правильный он у меня. Есть опыт использования DMA в том числе для вывода в ленту с WS2812.
WS-ки отрабатывают в основном стволе кода, а остальное на прерываниях (без задержек).
Зачем? В прерываниях DMA от половины и всего буфера, заполняем его (буфер) данными и пусть DMA + таймер выводят в ленту.
В основном коде и в других прерываниях (приоритет должен быть ниже чем у DMA) выполняем другие задачи. Это прекрасно работает на STM32F103. https://github.com/Silencer2K/stm32f10x-ws2812b-lib
Хмега что хуже?
Поделиться562021-12-01 16:57:48
Хмега что хуже?
Легче, проще, роднее
Просто у меня были проблемы с АЦП, чипы попались пракованной партии, не смог нормально изучить ADC и DAC в AtXmega256A3, но когда разжился AtXmega32A4U, то всё встало сразу на места, всё работает исправно.
Поделиться572021-12-22 15:01:26
В общем сдаюсь. Не мог осилить библиотеку RAINBOW. Перестало всё менять цвет.
На 3х разных ПК и Win7 и Win10, версии Bascom 2.0.8.1 до 2.0.8.4 ни одна не смогла работать исправно как от RC 8мГц, так и от кварца 12мГц.
Может беда в m328pb.
Глюк блин ещё такой интересный,
Config Rainbow = 1 , Rgb = 3 , Rb0_len = 5 , Rb0_port = Portd , Rb0_pin = 5
Rb0_len = 5 - зажгёт 5 лампочек белым светом, может зажечь нужное число, но цвет не могу менять.
Любой пример из HELP не работает, зажигает нужное кол-во светодиодов и всё.
Частота кварца роли не играет и не воздействует никак:
$regfile = "m328pbdef.dat"
$crystal = 8000000
$hwstack = 80
$swstack = 80
$framesize = 80
Осциллограф придётся раздобыть, чтоб понять что происходит.
Может виноваты новые чипы WS2812B
Отредактировано Ev3658 (2021-12-22 15:20:06)
Поделиться582021-12-22 15:19:18
Config Rainbow = 1 , Rgb = 3 , Rb0_len = 5 , Rb0_port = Portd , Rb0_pin = 5
Rb0_len = 5 - зажгёт 5 лампочек белым светом, может зажечь нужное число, но цвет не могу менять.
$lib "Rainbow1.21.lib"
$external WS2812bDeclare Sub Select_Rainbow(byval Channel As Byte)
Declare Sub Setcolor(byval Lednr As Word , Color() As Byte)
Declare Sub Send()
Declare Sub Shift_left(byval Left_index As Word , Byval Width As Word) : $external Use_shift_left
Declare Sub Shift_right(byval Left_index As Word , Byval Width As Word) : $external Use_shift_right
Declare Sub Rotate_left(byval Left_index As Word , Byval Width As Word) : $external Use_rotate_left
Declare Sub Rotate_right(byval Left_index As Word , Byval Width As Word) : $external Use_rotate_right
Declare Sub Clear_colors() : $external Use_clear_colors
Declare Sub Fill(color() As Byte) : $external Use_fill'#Rainbow0
Const Rainbow0_len = 4
Const Rainbow0_port = PortC
Const Rainbow0_pin = Pc5Dim Color(3) As Byte
Dim Led As Byte
Dim numl As Byte
Dim p As Integer
'Dim v As Byte
Dim c As Byte
Dim col As Byte
Dim rv As Byte
Dim gv As Byte
Dim bv As ByteR Alias Color(_base)
B Alias Color(_base + 1)
G Alias Color(_base + 2)'v = 200
c = 1'------------------------------------------------------------------------------------------------------------------------
Do
p = 250 ' установка паузыCall Select_rainbow(0)
rv = 200
gv = 0
bv = 0
R = rv : G = gv : B = bv
Gosub sdvig1'------------------------------------------------------------------------------------------------------------------------
'Gosub заполнение_цветом
'Waitms p
'Gosub бегущий_цвет
'Waitms p
'Gosub сдвиг_цвета
'Waitms pLoop
End
'------------------------------------------------------------------------------------------------------------------------
sdvig:For Led = 0 To Rainbow0_len
numl = Led
Call Setcolor(numl , Color())
' numl = numl + 2
' Call Setcolor(numl , Color())
' Call Shift_right(0 , Rainbow0_len)
Waitms p
Call Send()
NextReturn
'------------------------------------------------------------------------------------------------------------------------
sdvig1:'p = p / 2
For Led = 0 To Rainbow0_len
' numl = Led
Call Setcolor(numl , Color())
' numl = numl + 2
' Call Setcolor(numl , Color())
Call Shift_right(0 , Rainbow0_len)
' Waitms p
Call Send()
NextReturn
'------------------------------------------------------------------------------------------------------------------------
бегущий_цвет:'Gosub назначение_цвета
Call Select_rainbow(0)For c = 1 To Rainbow0_len
Gosub назначение_цвета
R = rv : G = gv : B = bv
Gosub sdvig
Waitms prv = 0
gv = 0
bv = 0
R = rv : G = gv : B = bv
Gosub sdvig
'Waitms pNext c
Return:
'------------------------------------------------------------------------------------------------------------------------
сдвиг_цвета:'Gosub назначение_цвета
Call Select_rainbow(0)For c = 1 To Rainbow0_len
Gosub назначение_цвета
R = rv : G = gv : B = bv
Gosub sdvig1
rv = 0
gv = 0
bv = 0
R = rv : G = gv : B = bv
Gosub sdvig1'Waitms p
Next c
Return
'------------------------------------------------------------------------------------------------------------------------
заполнение_цветом:'Gosub назначение_цвета
Call Select_rainbow(0)For c = 1 To Rainbow0_len
Gosub назначение_цвета
R = rv : G = gv : B = bv
Gosub sdvig'Waitms p
Next c
Return
'===================================================================
назначение_цвета:If c = 1 Then
rv = 200
gv = 0
bv = 0
End If
If c = 2 Then
rv = 0
gv = 200
bv = 0
End If
If c = 3 Then
rv = 0
gv = 0
bv = 200
End If
If c = 4 Then
rv = 200
gv = 200
bv = 0
End If
If c = 5 Then
rv = 200
gv = 50
bv = 0
End If
If c = 6 Then
rv = 0
gv = 100
bv = 50
End If
If c = 7 Then
rv = 0
gv = 50
bv = 200
End If
If c = 8 Then
rv = 200
gv = 100
bv = 0
End If
If c = 9 Then
rv = 200
gv = 0
bv = 50
End If
If c = 10 Then
rv = 50
gv = 100
bv = 0
End If
If c = 11 Then
rv = 100
gv = 0
bv = 200
End If
If c = 12 Then
rv = 50
gv = 200
bv = 0
End If
If c = 13 Then
rv = 200
gv = 0
bv = 100
End If
If c = 14 Then
rv = 50
gv = 200
bv = 50
End If
If c = 15 Then
rv = 50
gv = 50
bv = 200
End If
If c = 16 Then
rv = 50
gv = 0
bv = 200
End If
If c = 17 Then
rv = 0
gv = 50
bv = 100
End If
If c = 18 Then
rv = 100
gv = 50
bv = 100
End If
If c = 19 Then
rv = 50
gv = 100
bv = 50
End If
If c = 20 Then
rv = 50
gv = 100
bv = 50
End If
If c = 21 Then
rv = 200
gv = 50
bv = 50
End If
If c = 22 Then
rv = 50
gv = 100
bv = 100
End If
If c = 23 Then
rv = 50
gv = 50
bv = 200
End If
If c = 24 Then
rv = 100
gv = 200
bv = 0
End If
If c = 25 Then
rv = 100
gv = 100
bv = 200
End If
If c = 26 Then
rv = 200
gv = 200
bv = 200
End IfReturn
Поделиться592021-12-22 15:22:47
что показывает осциллограф?
Поделиться602021-12-22 15:27:47
Не могу запустить, ругается на отсутствие библиотеки, а если впихнуть RainbowBSC.LIB, то на Const Rainbow0_pin = Pc5.
Предполагаю проблема скорей в расчёте скважности импульсов. Версию Bascom 2.0.7.5 не могу попробовать, придётся Win7 ставить.
Похожие темы
BASCOM-AVR | Ссылки по теме BASCOM | 2018-07-18 |
BASCOM-AVR 1.11.8.5 | О программе BASCOM AVR | 2007-04-06 |
Вопросы по настройкам Bascom-AVR | О программе BASCOM AVR | 2019-11-05 |
Русский интерфейс компилятора BASCOM | О программе BASCOM AVR | 2012-10-09 |
Проблема с Bascom или МК? | О программе BASCOM AVR | 2018-06-14 |