Например TDA7294

Форум РадиоКот • Просмотр темы - BASCOM AVR в вопросах и ответах
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 18, 2024 09:09:43

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


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 6019 ]     ... , , , 299, ,  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт мар 29, 2022 20:39:45 
Это не хвост, это антенна

Карма: 10
Рейтинг сообщений: 78
Зарегистрирован: Вт янв 05, 2016 10:14:25
Сообщений: 1395
Откуда: Мелеуз
Рейтинг сообщения: 0
Вы уж определитесь
Проблема в том, что в момент включения мотора концевик

находится в разомкнутом положении. Никак не могу это победить.

или
А по условиям концевик

замкнут все время до включения реле таймером.

Вот с проверкой размыкания концевиков
Код:
Do
 'обнуляем время,выключаем реле и светодиод
   v=0
   Reset Rele                                               'выключение мотора и диода
   Reset Red
   set green
'ждем когда истечет время
   while v<30
   wend

'время истекло
   reset green                                        'выключаем светодиод зеленый
   Set Rele                                           'реле включило мотор
   Set Red                                            'загорелся светодиод
'здесь проверка,разомкнулись ли концевики
   while R_end = 0 or L_end=0
   wend
   waitms 100
'ждем замыкания концевиков
   while R_end = 1 and L_end=1
   wend

Loop


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 03, 2022 09:23:18 
Встал на лапы

Зарегистрирован: Вс мар 27, 2011 07:48:48
Сообщений: 127
Откуда: г. Екатеринбург
Рейтинг сообщения: 0
Приветствую всех. Мне кажется, я нашел решение своей проблемы. Код приводить не буду, он получится очень маленьким. Прикладываю схему, нарисовал по быстрому от руки плюс небольшой комментарий.
Концевики включены последовательно, разрывают цепь питания мотора. Пара контактов Р1-1 включают мотор по команде с контроллера. А второе реле Р2 (твердотельное), будет шунтировать концевики за 5 сек до включения мотора, и выключаться через 5 сек после запуска мотора. Т.К полный цикл от концевика до концевика занимает примерно 15 сек. думаю, должно получиться нормально. Думаю, на этом тему можно закрыть.


Вложения:
Схема.jpg [85.17 KiB]
Скачиваний: 171
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вс апр 03, 2022 12:34:28 
Друг Кота
Аватар пользователя

Карма: 187
Рейтинг сообщений: 8255
Зарегистрирован: Пн ноя 30, 2009 03:00:01
Сообщений: 39540
Откуда: Нерезиновая
Рейтинг сообщения: 0
А как у вас реверс мотора делается? Я этого что-то не увидел!

зы.. Ещё раз- вы бы ещё туда не МК, а "управляющий компьютер" прилепили бы..
"по минимуму" это вообще на нескольких транзисторах решается, ну, или, на 555 таймере..
Если, конечно, движение мотора вам нужно не "с точностью до микросекунды"

зы.. А концевик "на размыкание" что, поставить нельзя?


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт апр 05, 2022 15:28:20 
Встал на лапы

Зарегистрирован: Вс мар 27, 2011 07:48:48
Сообщений: 127
Откуда: г. Екатеринбург
Рейтинг сообщения: 0
Реверс мотору не нужен - такая кинематика у механизма. Мотор вращается всегда в одну сторону.
Концевики будут работать на размыкание в цепи питания мотора, об этом я написал выше.
Уже второй человек в комментариях упоминает о схеме на 555, но никто не приводит рабочую схему.


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср апр 06, 2022 10:56:53 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 3
Зарегистрирован: Вс мар 11, 2012 23:06:08
Сообщений: 95
Откуда: Казань
Рейтинг сообщения: 0
Здравствуйте, подскажите кто сможет, вылезает ошибка при компиляции, ссылается на строку: Config Clockdiv = 1, пишет Invalid data type

$regfile = "m128def.dat"
$crystal = 8000000
$baud = 9600
$hwstack = 64
$swstack = 64
$framesize = 128

Config Clockdiv = 1
Mcucr.7 = 1
Mcucr.7 = 1


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср апр 06, 2022 15:12:27 
Первый раз сказал Мяу!
Аватар пользователя

Карма: 1
Рейтинг сообщений: 1
Зарегистрирован: Вс май 15, 2016 19:02:01
Сообщений: 28
Откуда: Украина
Рейтинг сообщения: 0
Наверное этот контроллер не поддерживает такой метод деления частоты. Поменял на m328def.dat, скомпилировалось без ошибок.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср апр 06, 2022 20:24:42 
Мучитель микросхем

Карма: 1
Рейтинг сообщений: 22
Зарегистрирован: Вт фев 09, 2010 17:52:26
Сообщений: 417
Рейтинг сообщения: 0
Реверс мотору не нужен - такая кинематика у механизма. Мотор вращается всегда в одну сторону.
Концевики будут работать на размыкание в цепи питания мотора, об этом я написал выше.
Уже второй человек в комментариях упоминает о схеме на 555, но никто не приводит рабочую схему.


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


Проще всего введите переменную "куда едем", если едем в лево, то проверять только левый концевик и наоборот.

Или второй вариант, после срабатывания левого концевика (размыкания), запускаете реле и проверяете, когда он замкнется и только после этого начинаете проверять состояние правого концевика.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср апр 06, 2022 21:25:22 
Друг Кота
Аватар пользователя

Карма: 187
Рейтинг сообщений: 8255
Зарегистрирован: Пн ноя 30, 2009 03:00:01
Сообщений: 39540
Откуда: Нерезиновая
Рейтинг сообщения: 0
Уже второй человек в комментариях упоминает о схеме на 555, но никто не приводит рабочую схему.

Я и третий раз упомяну.. Вы просто нормальное ТЗ и описание самой "механизьмы" сделайте!

зы.. Пока у меня впечатление, что вы пытаетесь запустить механизм от автомобильных дворников в прерывистом режиме- во всяком случае- очень похоже- там тоже- вращение в одну сторону с остановкой в определённом месте, и запуск с определённой периодичностью. :dont_know:


зызы.. 555 таймер- это наиболее дешевый (на сегодня) способ генерации импульсов заданной длительности, следующих с заданной частотой.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср апр 06, 2022 23:30:32 
Мучитель микросхем

Карма: 1
Рейтинг сообщений: 22
Зарегистрирован: Вт фев 09, 2010 17:52:26
Сообщений: 417
Рейтинг сообщения: 0
Приветствую всех. Мне кажется, я нашел решение своей проблемы. Код приводить не буду, он получится очень маленьким. Прикладываю схему, нарисовал по быстрому от руки плюс небольшой комментарий.
Концевики включены последовательно, разрывают цепь питания мотора. Пара контактов Р1-1 включают мотор по команде с контроллера. А второе реле Р2 (твердотельное), будет шунтировать концевики за 5 сек до включения мотора, и выключаться через 5 сек после запуска мотора. Т.К полный цикл от концевика до концевика занимает примерно 15 сек. думаю, должно получиться нормально. Думаю, на этом тему можно закрыть.

Похоже, что в вашей схеме, реле Р1 вообще можно выкинуть, это если по середине не надо останавливать.
Достаточно реле 2 включать на время, что бы успел замкнуться разомкнутый концевик, но не успел разомкнуться второй концевик.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт июл 26, 2022 13:17:21 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 3
Зарегистрирован: Вс мар 11, 2012 23:06:08
Сообщений: 95
Откуда: Казань
Рейтинг сообщения: 0
Здравствуйте, существует ли некое переполнение EPROOM?
Делал GSM сигнализацию, ситуация следующая, есть программа на меге 328, занимает порядка 60% , при работе спустя около 3 дней происходит некий глюк связанный с епром. Проявляется это в том, что например, номер, сохраненный в памяти МК перестает отвечать, или на экране вылезают выходят лишние символы которые каким то образом загоняются и заменяются в епром

Список всех переменных:
Цитата:
$regfile = "m328pdef.dat"
$crystal = 8000000
$baud = 9600
$hwstack = 68
$swstack = 68
$framesize = 120

Config Clockdiv = 1
Mcucr.7 = 1 'Turn OFF JTAG
Mcucr.7 = 1


'---------- I2C bus ----------
$lib "i2c_twi.lbx" ' hardware I2C
Config Scl = Portc.5 ' used i2c pins
Config Sda = Portc.4
Config Twi = 400000 ' i2c speed
I2cinit
Waitms 5
'---------- Display ----------
$lib "glcdSSD1306-I2C-Buf.lib"
Config Graphlcd = Custom , Cols = 128 , Rows = 64 , Lcdname = "SSD1306"
Dim Lcd_auto As Byte
Lcd_auto = 1
Const Rotate_180 = 0

#if _build < 20784
Dim ___lcdrow As Byte , ___lcdcol As Byte ' dim these for older compiler versions
#endif


Dim I As Byte , N As Byte
'---------- ВСЕ ЧТО ВЫШЕ ЭТО НАСТРОЙКИ ЭКРАНА



Config Watchdog = 4096 ' (4096) Ватчдог


'Cюда лепим 18b20
'=======================
Config Serialin = Buffered , Size = 60
Config 1wire = PortC.0

'Подключение динамика
'=======================
Config Portb.3 = Output : Set Portc.3 ' Кнопка постановки и снятия с охраны
Spkr Alias Pinb.3 ' Динамик
Pc817 Alias Pinc.3

'Для проверки подключения зарядки
'=======================
Config Portd.5 = Input
Kn2 Alias Pind.5

'Пин для включения модуля, вывод DTR
'=======================
Config Portc.1 = Output
Pkey Alias Portc.1
Pkey = 0

'Выход для 1 удаленного управления - реле 1
'=======================
Config Portb.2 = Output : Set Portd.7 ' PIR СЕНСОР
Outpin1 Alias Portb.2
Outpin1 = 0
Pir Alias Pind.7


'Выход для 2 удаленного управления - реле 2
'=======================
Config Portb.1 = Output
Outpin2 Alias Portb.1
Outpin2 = 0


'Выход для 2 удаленного управления - реле 3
'=======================
Config PortB.0 = Output : Set Portd.3 ' Вход для подключения геркона или кнопки - механического датчика
Outpin3 Alias PortB.0
Outpin3 = 0
Gerkon Alias Pind.3


'Вход для RC5
'=======================
Config Rc5 = Pind.6 , Wait = 1500
Config Pind.6 = Input
Dim Address As Byte
Dim Command As Byte


Enable Interrupts

Declare Sub Getline(s As String)
Declare Sub Flushbuf()


' Настройка АЦП для датчика ВОДЫ
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim W As Integer
Dim Wsingl As Single
Dim Wstr As String * 5


'---------- << ПЕРЕМЕННЫЕ
Config Debounce = 50 ' Антидребезг
Dim F As Byte ' Счетчик
Dim M As Byte ' Счетчик как F - запасной
Dim M1 As Byte ' Счетчик для задержки для повторного звонка, чтобы не названивал если дверь открыта.
M1 = 0
Dim M2 As Byte ' Для входа в меню прямо в рабочем режиме.
M2 = 0

Dim Y As Word ' Счетчик для датчика воды
Dim J As Word ' Счетчик для датчика температуры
M = 0
Y = 0
J = 0
Dim Count As Byte ' Счетчик удержания кнопки

Dim Sms_chg As String * 3 ' Состояние входа зарядки для СМС
Dim Chgs As Byte ' Для запрета отправки СМС, если пропало 220 придет СМС 1 раз до след постановки на охрану

Dim Number As String * 11 ' Номер телефона
Dim Temp As String * 10
Dim Temp1 As String * 10
Dim Temp2 As String * 10
Dim Rs As Byte
Dim A As Byte
Dim S As String * 50
Dim B As Byte
Dim R As Byte
Dim Z As String * 15
Dim Sms_num As String * 2 ' Порядковый номер смс
Dim Stmp As String * 1
Dim Sms As String * 120
Dim Otvet As String * 160 ' Сообщение, которое модуль будет отправлять
Dim Sk As String * 66
Dim Tmr As Byte
Dim Sms_val As Byte

Dim Loadpin1 As Bit ' Значение пина выхода 1
Dim Loadpin2 As Bit ' Значение пина выхода 2
Dim Loadpin3 As Bit ' Значение пина выхода 3

Dim Wtrspk As Byte ' Вкл Выкл динамика ( пока настроен на датчик воды, можно настроить так чтобы вообще вырубать звук)
Dim Eeprom_infa5 As Eram Byte
Wtrspk = Eeprom_infa5
'If Wtrspk = 225 Then Wtrspk = 0


Dim Sendsms As Byte ' Переменная для разрешения отправки сообщения по срабатыванию датчик воды - связан с счетчиком количества трех срабатываний
Dim Eeprom_infa3 As Eram Byte
Sendsms = Eeprom_infa3

Dim Zvonok As Byte ' Переменная для разрешения вызовов
Dim Eeprom_infa2 As Eram Byte
Zvonok = Eeprom_infa2
'Zvonok = 0 ' На время тестов

Dim Chargesms As Byte ' Cтатус для контроля зарядки


'---------- << Для динамика
Dim Frq As Word
Dim D As Word

'---------- << Для меню
Dim Temper As Byte ' Значение температуры введенная с пульта RC5
Dim Eeprom_infa1 As Eram Byte
Temper = Eeprom_infa1
If Temper = 255 Then Temper = 45

Dim Rlc As Byte '<<< Разрешаем или запрещаем управлять реле по датчику температуры
Dim Eeprom_infa4 As Eram Byte
Rlc = Eeprom_infa4
If Rlc > 1 Or Rlc < 0 Then Rlc = 0

Dim Wlc As Byte '<<< Разрешаем или запрещаем управлять реле по датчику воды
Dim Eeprom_infa6 As Eram Byte
Wlc = Eeprom_infa6
If Wlc > 1 Or Wlc < 0 Then Wlc = 0

Dim Tsms As Byte '<<< Разрешаем или запрещаем отправку СМС по достижению температуры, работает независимо от постановки и снятия с охраны
Dim Eeprom_infa7 As Eram Byte
Tsms = Eeprom_infa7
If Tsms > 1 Or Tsms < 0 Then Tsms = 0

'Dim Zv As byte ' Переменная для перезвона в случае зависания
'Dim Eeprom_infa11 As Eram Byte
'Zv = Eeprom_infa11

Dim Zad As byte ' Задержка перед вызовом по мех.датчику (пока)
Dim Eeprom_infa12 As Eram Byte
Zad = Eeprom_infa12
If Zad < 0 or Zad > 3 Then Zad = 1

Dim Mm As Byte
Mm = 1 ' Для навигации по меню
'----------

Dim 3sms As Word ' Если три раза сработал датчик воды то больше СМСки не отправляем, т.е. смски шлем только 3 раза до повторной постановки на охрану
Dim Eeprom_infa As Byte
'Soff = 0
If 3sms > 1 Or 3sms < 0 Then 3sms = 0


'''' СОХРАНЕНИЕ РАБОТЫ РЕЛЕ В СЛУЧАЕ ЗАВИСАНИЯ И ПЕРЕЗАГРУЗКИ
Dim k1 As Byte ' 1 релейный канал
Dim Eeprom_infa8 As Eram Byte
k1 = Eeprom_infa8

Dim k2 As Byte ' 2 релейный канал
Dim Eeprom_infa9 As Eram Byte
k2 = Eeprom_infa9

Dim k3 As Byte ' 3 релейный канал
Dim Eeprom_infa10 As Eram Byte
k3 = Eeprom_infa10


Dim Load1 As String * 3 ' RL1 (Статус в СМС словами ОN или OFF)
Dim Load2 As String * 3 ' RL2
Dim Load3 As String * 3 ' RL1


Dim Wtrinf As String * 1 ' Для отображения на экране и в СМС
Dim Kninf As String * 1
Dim Pirinf As String * 1

Dim Secinf As String * 3 ' Сообщение состояния охраны в СМC и на ЖК, YES-NO (Охрана включена или выключена, ОБЩЕЕ СОСТОЯНИЕ СИСТЕМЫ)

Dim Pitanie As String * 3 ' Сообщение для СМС, YES-NO для контроля зарядки

Dim Stwtr As String * 1 ' Статус для СМС было срабатывание или нет (не путать с текущим состоянием)
Dim Stkn As String * 1
Dim Stpir As String * 1
Stwtr = ""
Stkn = ""
Stpir = ""


Dim T As Byte ' Температура
Dim Sign As String * 5 ' Знак температуры
Dim Byte0 As Byte
Dim Byte1 As Byte
Dim T1 As Byte
Dim T2 As Byte
Dim Tstr As String * 4

Dim Numb As Byte
Dim Connect As String * 6 ' Уровень сигнала
Dim Connectvar As Byte ' Уровень сигнала в числовом значении
Dim Operator As String * 20
'Dim Date_str As String * 20
Dim Time_str As String * 20
Dim Bat_str As String * 9 ' Для показа зарядки в процентах
Dim Bat_str1 As String * 9 ' Показ знака напряжения до запятой
Dim Bat_str2 As String * 9 ' Показ знака напряжения после запятой

Dim Phonenumbereeprom As Eram String * 12
Dim Phonenumber As String * 12
Phonenumber = Phonenumbereeprom


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт авг 09, 2022 15:02:11 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 3
Зарегистрирован: Вс мар 11, 2012 23:06:08
Сообщений: 95
Откуда: Казань
Рейтинг сообщения: 0
Вопрос решил, теперь другой вопрос.

Есть проект наверняка всем известный - http://avrproject.ru/forum/13-26-13 или вот http://avrproject.ru/publ/sistema_udale ... /1-1-0-112

Почему при получении СМС от оператора например при пополнении баланса номер телефона ранее сохраненный в EPROOM заменяется разными цифрами? именно при СМС от оператора

участок кода отвечающий за это:

Код:
$regfile = "m328pdef.dat"
$crystal = 8000000
$baud = 9600
$hwstack = 68
$swstack = 68
$framesize = 120

часть переменных.
Dim Sms_num As String * 2                                   ' Порядковый номер смс
Dim Sms As String * 120
Dim Otvet As String * 160                                   ' Сообщение, которое модуль будет отправлять
Dim Sk As String * 66
...

Dim Phonenumbereeprom As Eram String * 12
Dim Phonenumber As String * 12
Phonenumber = Phonenumbereeprom

...

Обработка смски:
If Sms = "savenumber" Then                                   ' Если сообщение содержит данный текст
   Phonenumber = Number                                      ' Номер с которого пришла смс используется как номер для отправки сообщений
   Phonenumbereeprom = Phonenumber                           ' Записываем номер в энергонезависимую память
   Otvet = "Saved: " + Phonenumber
   Setfont Font8x8tt
   Lcdat 1 , 1 , "                "
   Lcdat 1 , 15 , "Save the number"
   Wait 1
   Lcdat 1 , 1 , "                "
   Gosub Atd
   Gosub Cls1
End If


То есть все работает отлично, с любых номеров команды обрабатываются, стоит пополнить баланс - сохраненный номер телефона слетает


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт авг 09, 2022 21:40:37 
Родился

Карма: -3
Рейтинг сообщений: 0
Зарегистрирован: Ср ноя 04, 2009 12:49:25
Сообщений: 17
Откуда: Урал
Рейтинг сообщения: 0
Подключите модуль к компу и пообщайтесь с ним через терминал, увидите что именно он шлет.
Dim Sms As String * 120 - может и не хватить, оператор любит рекламу пихать в USSD ответ.
Bascom не контролирует переполнение строковых переменных.
Вполне возможно затирание других переменных при переполнении строки.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт сен 13, 2022 07:12:32 
Грызет канифоль

Карма: 5
Рейтинг сообщений: 6
Зарегистрирован: Ср май 26, 2010 20:40:47
Сообщений: 291
Рейтинг сообщения: 0
Mcselec тоже для России закончился? :kill:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Вт сен 13, 2022 07:31:35 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вс сен 27, 2009 20:49:06
Сообщений: 87
Откуда: Советск
Рейтинг сообщения: 0
Mcselec тоже для России закончился? :kill:

не могу выйти на сайт и форум


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Пт сен 16, 2022 13:44:21 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вс сен 27, 2009 20:49:06
Сообщений: 87
Откуда: Советск
Рейтинг сообщения: 0
через Psiphon можно зайти


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Ср ноя 23, 2022 20:42:43 
Мучитель микросхем
Аватар пользователя

Зарегистрирован: Пт авг 29, 2008 09:22:37
Сообщений: 438
Рейтинг сообщения: 0
Народ ,а как можно склеить 8 байт в переменную типа double?

_________________
Все мы работаем по методу Робинзона Крузо – ждем пятницу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Чт ноя 24, 2022 15:18:53 
Мучитель микросхем
Аватар пользователя

Зарегистрирован: Пт авг 29, 2008 09:22:37
Сообщений: 438
Рейтинг сообщения: 0
Вопрос снимается . Не думал что всё так просто ...)

_________________
Все мы работаем по методу Робинзона Крузо – ждем пятницу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Чт ноя 24, 2022 16:00:29 
Сверлит текстолит когтями

Карма: 20
Рейтинг сообщений: 296
Зарегистрирован: Сб май 05, 2012 20:24:52
Сообщений: 1220
Откуда: KN34PC, Болгария
Рейтинг сообщения: 0
dimon-790, разве мы не увидим, что получилось? (Иначе смысл форумов теряется :/).


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Пт ноя 25, 2022 07:38:02 
Мучитель микросхем
Аватар пользователя

Зарегистрирован: Пт авг 29, 2008 09:22:37
Сообщений: 438
Рейтинг сообщения: 0
Да собсно и рассказывать нечего . Сделал побитовое копирование а баском на автомате преобразовал в double . Вот и весь код...
Код:
  N_bits_double = 0
      For N_byte = 1 To 8                                   'перебираем байты
       For N_bits_byte = 0 To 7
       Vpls.n_bits_double = Value(n_byte).n_bits_byte       'копируем биты
        Incr N_bits_double
       Next                                                 '
      Next

_________________
Все мы работаем по методу Робинзона Крузо – ждем пятницу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: BASCOM AVR в вопросах и ответах
СообщениеДобавлено: Пт дек 02, 2022 18:06:22 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 3
Зарегистрирован: Вс мар 11, 2012 23:06:08
Сообщений: 95
Откуда: Казань
Рейтинг сообщения: 0
Всем привет, коллеги.

Сломал всю голову, уже планирую собрать схему которая будет отслеживать зависание и перезагружать МК.
- - -

Работа s SIM900 SIM800, МК зависает если например замкнуть RX и TX, видимо в буфер сыпится мусор и из за этого программа застревает в цикле и не может из него выйти, я так понимаю.
Как решить этот ребус?

Пробовал задавать переменную и увеличивать ее, например если F=100 то выходим из цикла - см. код ниже

Код:
Sub Getline(s As String)
   S = ""
  dim F as byte
Do

      B = Inkey()                    'берем символ из буфера в формате ASCII
      Select Case B
          Case 0                    'возвращает в случае пустого буфера
          Case 13                    'возврат каретки (Enter), заместо него можно поставить пробел
          Case 10 : If S <> "" Then Exit Do                 'конец строки, значит выходит из подпрограммы
          Case Else : If B > 31 Then S = S + Chr(b)         'печатаемые
символы начинаются с кода 32 по таблице АСКИ, из них составляем строку
      End Select
incr F
  if F>100 then  'выйдем после 100 итераций
   exit do
end if
   Loop
F=0   'обнуляем переменную
End Sub


Но в этом случае программа перестает читать смс сообщения


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6019 ]     ... , , , 299, ,  

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


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 24


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

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


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y