Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Компорт
Компорт
tolyan249 Дата: Чт, 24.11.2022, 15:10  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 172
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Привет всем ,.есть у кого рабочий пример работы pic16F628а c компртом ,ни хрена ни идёт. и кварц уже поставил 20мгц ,типа эхо отправить обратно данные в компорт то что принял,вообще ни чего не происходит ,светодиод моргает и всё.

;-------------------------- Общие настройки------------------------------------

Device = 16F628A   ' Используемый микроконтроллер
Xtal = 20   ' Частота осциллятора   МГц

'-------------------------- Конфигурация программирования --------------------

Config  BODEN_OFF, BOREN_OFF, CP_OFF, DATA_CP_OFF, PWRTE_ON, WDT_OFF, LVP_OFF, MCLRE_OFF

'''-------------------------- Настройки USART ----------------------------------
Declare  Hserial_Baud  9600   ' Скорость передачи данных, бод
Declare  Hserial_Parity  ODD   ' Проверка на четность/нечетность
Declare  Hserial_TXSTA = %00000000   ' Выключить передатчик USART
Declare  Hserial_RCSTA = %10000000   ' Выключить приемник USART
Declare  Hserial_SPBRG  32   ' Значение регистра SPBRG для выбранной скорости
Declare  Hserial_Clear = On   ' Автоматическая очистка бита ошибки переполнения

Dim TXTSMS As Dword
Symbol LED = PORTA.2 'Светодиод

CMCON = 7 'Отключим компараторы
TRISB = %11110010 'Каналы - на вход, ключ - на вход, остальные - на выход
TRISA = %00101010

main:
GoSub TURN_LED 'Могрнем, показывая, что идет обмен с телефоном
HSerIn 1000, main,
[TXTSMS]HSerOut
[TXTSMS]GoTo  main

TURN_LED: 'ÏÏ ìîðãàíèÿ ñâåòîäèîäîì
LED = 1
DelayMS 250
LED = 0
Return


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Чт, 24.11.2022, 15:12
ЯНДЕКС Дата: 24.11.2022
dimvad Дата: Чт, 24.11.2022, 16:29  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Понимаю
Сообщений: 74
Репутация: 52   ±
Замечания:   ±
На сайте с 20.07.2012

Статус: Offline

Вот тренировочный примерчик. Вбиваем в монитор любое число, жмем ENTER, смотрим результат.
Прикрепления: HRSIN-OUT.rar(43.6 Kb)
tolyan249 Дата: Чт, 24.11.2022, 16:38  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 172
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Спасибо огромное cranky

если знаешь,помоги.
Bogdanvrw Дата: Пт, 25.11.2022, 02:14  |                                                                                                                Сообщение # 4
Группа: Заблокированные
Ранг:  Пытаюсь разобраться
Сообщений: 46
Репутация: -3   ±
Замечания:   ±
На сайте с 21.05.2020

Статус: Offline

Приветствую Вас товарищи.

Предлагаем Вашему вниманию замечательный сайт для заказа услуг стоматологии в Минске.К вашим услугам лучшие стоматологи Минска с многолетним стажем.стоматология минск,удаление зуба, отбеливание зубов,лечение зуба,удаление зуба мудрости,стоматология минск цены и стоматология платные услуги минск.
У нас работают стоматологи высшей категории, доценты и профессора — врачи с высоким уровнем профессионализма и личной ответственности, способные действовать в команде и постоянно совершенствоваться. Наша профессия — это ваша здоровая и красивая улыбка!Мы всегда на связи с вами! Мы предлагаем комплексный подход в решении стоматологических проблем.это команда единомышленников, одни из лучших специалистов в области эстетической и восстановительной стоматологии, ортопедии, ортодонтии, челюстно-лицевой хирурги и периодонтологии, эндодонтии, что позволяет достигать наилучших результатов лечения.Мы верим в построение отношений, основанных на доверии и взаимопонимании. Наши пациенты становятся нашими друзьями.
Увидимся!
имплантация при отсутствии зубов
вырвать зуб без анестезии
профессиональная ультразвуковая чистка зубов
лучшие съемные зубные протезы на верхнюю челюсть
бюгельный зубной протез на огнеупорной модели
удаление передних зубов
ставят мост после удаления зуба
изготовление металлокерамической коронки зуба
удаление ретинированного дистопированного зуба мудрости
сделать зубы металлокерамика
удаление зуба быстро
удаление 2 зубов
микропротезирование cerec
снятие мягкого зубного налета
удаление зуба через десну
купить зубные виниры в минске
стоматология пломбирование зуба
пломбирование зуба световой пломбой
бугорок после удаления зуба
прибор для отбеливания зубов
протезирование на имплантах при полном отсутствии зубов
лечение пульпита и периодонтита зубов
какую анестезию делают при удалении зуба
системы имплантов минск
керамические виниры в минске цена
набор кап для отбеливания зубов
удаление зуба рядом
наращивание костной ткани при имплантации зубов
гигиена полости рта беременных
губка в лунке после удаления зуба
удаление зуба с одномоментной имплантацией
профессиональное отбеливание зубов цена
протезирование зубов металлокерамика
показать съемные зубные протезы
гингивэктомия зуба
удаление зубов на верхней челюсти
анестезия укол в зуб
удаление зуба восьмерки
система отбеливания зубов
удаление четвертых зубов
заказать съемный зубной протез
имплантация зубов под ключ минск
типы имплантации зубов
временные коронки на импланты зубов
отбеливание передних зубов
практическая терапевтическая стоматология купить
композитные виниры какие
каппа для реминерализации зубов
обезболивающие средства при удалении зуба
стоматология хирургия минск

Добавлено (25.11.2022, 02:15)
---------------------------------------------
Здравствуйте господа.

Есть такой замечательный сайт для заказа услуг стоматологии в Минске.К вашим услугам лучшие стоматологи Минска с многолетним стажем.стоматология минск,удаление зуба, отбеливание зубов,лечение зуба,удаление зуба мудрости,стоматология минск цены и стоматология платные услуги минск.
Перед нами поставлена амбициозная задача: создать самую лучшую стоматологическую службу в Беларуси. И с каждым днем мы приближаемся к своей цели.Последние десять лет наблюдается большой спрос на оказание стоматологических услуг – только в одном Минске сегодня действует около двухсот зубных клиник и частных кабинетов. Наличие огромной конкуренции привело к тому, что Дентистри отвечает самым высоким стандартам качества.Мы уделяем большое внимание профессиональному развитию команды, для чего регулярно направляем сотрудников на обучение и мастер-классы как в Беларуси, так и за рубежом. Хирурги и ортопеды успешно прошли необходимое обучение и имеют допуски к осуществлению одномоментной имплантации и применению систем All-on-4 и All-on-6. Все доктора и медицинские сестры имеют первую квалификационную категорию.Выделим три наиболее важных:Специализация на решении сложнейших клинических случаев имплантации и протезирования.Принятая к исполнению политика качества и внедрение аналитических инструментов позволяет нам спрогнозировать возможные риски и принять наиболее оптимальный вариант. Многие наши Клиенты рассказывали, что по своему месту жительства им просто отказывали в лечении!Демократичная ценовая политика.Мы грамотно оптимизировали рабочий процесс и снизили затраты. У нас единый прейскурант вне зависимости от гражданства пациента;Гарантийная поддержка пациентов.На медицинские услуги предоставляются широкие гарантии. В случае наступления гарантийного случая все работы будут проведены бесплатно.За последние два года мы стали реальными лидерами в организации и проведении стоматологического лечения. Мы приняли пациентов из России, Казахстана, Украины, Литвы, Латвии, Эстонии, Польши, Германии, Швеции, Финляндии, Израиля, США, Канады, Австралии и еще десятка государств. Кроме того, к нам обращаются и со всех уголков Беларуси.По результатам проведенного в ноябре-декабре 2018 года опроса пациентов получили великолепную оценку работы: 96,4% респондентов поставили нам высшую оценку. Большое вам спасибо за доверие!самостоятельно оказывает сервисные услуги по организации лечения “под ключ”: дистанционные бесплатные консультации, трансферы, прохождение дополнительного медицинского обследования в Минске.формируем положительный имидж белорусской стоматологии и медицинской отрасли в целом. Мы открыты всему миру.Популярные стоматологические услуги в Беларуси.Самой популярной стоматологической услугой, несомненно, является имплантация зубов. Благодаря высокому качеству работ, гарантии положительного результата мы заслужили уважение и отличную репутацию среди Клиентов.Мы работаем с линейкой имплантов Megagen, Noris, а также системой премиум-уровня Straumann и Nobel. В нашем распоряжении собственные зуботехническая лаборатория и рентген-кабинет с компьютерным томографом последнего поколения.
От всей души Вам всех благ!
временное пломбирование каналов зуба
лечение кариеса пульпита периодонтита
микропротезирование в стоматологии
отбеливание зубов цена
имплантация зубов синус
композитные виниры минск
удаление шатающегося зуба
установка абатмента зуба
циркониевые коронки для зубов цена
протезирование зубов на имплантах
удаление зуба по острой боли
циркониевые коронки консультация
съемный зубной протез рядом
абатмент straumann
полная реминерализация зубов
имплантация жевательных зубов
зуб мудрости удаление гайморита
контроль гигиены полости рта
удаление воспаленного зуба
установка виниров на зубы
сухая лунка после удаления зуба
имплантация зубов с наращиванием костной
анестезия зуба больно
сделать зубы металлокерамика
платная стоматология в минске
стоматология удаление зуба цены
съемный частичный зубной протез на нижнюю челюсть
варианты съемных зубных протезов
аппарат снятия зубных отложений
киста десны удаление зубов
стоимость бюгельных зубных протезов
виды имплантации зубов
имплантация зубов всей челюсти цена
капы для отбеливания зубов
какое отбеливание зубов безопаснее
сложное удаление зуба
имплантация зубов десна
лечение десны удаления зуба
имплантация московский район
циркониевые коронки на жевательные зубы
временные коронки при протезировании зубов
удаление нерва зуба и пломбирование каналов
опыт имплантации зубов
заживление лунки после удаления зуба мудрости
болит соседний зуб после удаления
скуловая имплантация зубов
металлокерамические коронки на передние зубы
лечение зубов в платной клинике
быстрое заживление после удаления зубов
удаление второго зуба


сверло по дереву 30 купить
tolyan249 Дата: Вс, 27.11.2022, 07:08  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 172
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Заработало ,Спасибо.
Другой вопрос :
Как мне выдернуть и приходящего SMS ,номер телефона и текст отдельно в разные переменные ?
Получаю вот такой текст 
+CMT: "+7962*******","","22/11
/27,10:18:37+28"
ON_1
На протоне ,как работать с текстом в протоне я не знаю ,скопировать часть текста и так далее.

Спасибо.


если знаешь,помоги.
xvovanx Дата: Вс, 27.11.2022, 17:31  |                                                                                                                Сообщение # 6
Группа: Модераторы
Ранг:  Помогаю всем
Сообщений: 302
Репутация: 55   ±
Замечания:   ±
На сайте с 02.05.2013

Статус: Offline

Цитата tolyan249 ()
Как мне выдернуть и приходящего SMS ,номер телефона и текст отдельно в разные переменные ?

А если сначала всё полученное записать в массив CData, а потом посчитать по знакоместам, допустим первые 12 знакомест это номер телефона, остальное текст.
tolyan249 Дата: Ср, 30.11.2022, 15:00  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 172
Репутация: 0   ±
Замечания:   ±
На сайте с 11.10.2007

Статус: Offline

Попробую так .
Спасибо.

Добавлено (01.12.2022, 14:05)
---------------------------------------------
Работает как то странно ,пик длинные sms принимает ,короткие ,нет.
Сам модуль мне даёт в терминале то что он принял смс ,просто отправляю число ,"123", смс приходит с модуля сим900 а пик ждёт смс ,как будто его он не видит что оно пришло ,если отправить на английском "proba otpravki teksta privet kak dela" , то пик обратно мне отправляет это предложение ,что он его принял.

   ;-------------------------- Общие настройки------------------------------------

Device = 16F628A   ' Используемый микроконтроллер
Xtal = 12 ' Частота осциллятора  4 МГц

'''-------------------------- Настройки USART  12 МГЦ ----------------------------------

Declare Hserial_Baud 9600
Declare Hserial_TXSTA=%00100100
Declare Hserial_RCSTA=%10010000
Declare Hserial_SPBRG 77   '26
Declare Hserial_Clear = On

All_Digital True

'-------------------------- Настройки портов ---------------------------------

PortB_Pullups = OFF   ' Выключить подтягивающие резисторы на PORTB
Declare  All_Digital = On   ' Установить все порты цифровыми входами/выходами

' ----------------------Переменные--------------------------------------------------

Dim PN[14] As Byte 'Массив для считывания телефонных номеров
Dim SF[84] As Byte 'Массив для считывания текста SMS
Dim i Byte
Dim var1 As Byte

Symbol LED = PORTA.2 'Светодиод
Symbol dq   = PORTA.1            'Датчик температуры на улице

'Clear 'Очистим RAM

CMCON = 7 'Отключим компараторы
TRISB = %11110010 'Каналы - на вход, ключ - на вход, остальные - на выход
TRISA = %00000000
OPTION_REG = %10000000 'Отключим подтяжку на portb

var1=0

ld:
GoSub TURN_LED 'Моргнем светодиодом
Inc var1
If var1 = 20 Then GoTo main
GoTo ld

'---Послать команду на SIM900 ,работа модуля ------------------------
main:
HRSOut   "AT",13
HRSIn {10000,main},Wait("OK")'Ждем ответа, если нет

TXT:
GoSub TURN_LED
HRSOut "AT+CMGF=1" ,13  'Отправить команду на включение текстового режима
HRSIn {10000,TXT},Wait("OK")'Ждем ответа, если нет ,
DelayMS 1000

AON:
GoSub TURN_LED
HRSOut "AT+CLIP=1" ,13  'Включить режим АОН
HSerIn 10000, AON,[Wait("OK")]'Ждем ответа, если нет ,
DelayMS 1000

DEL_SMS:
HRSOut "AT+CMGDA=\"DEL ALL\"" ,13 'Удалить все СМС
HRSIn {10000, DEL_SMS},Wait("OK")'Ждем ответа, если нет ,
DelayMS 1000

loop:
'Ждем SMS 24 символа
HRSIn {1000, loop},Wait("+CMT"),Str SF \83

For i=3 To 12' скопировать с массива номер телефона
PN[i-3]=SF
Next

For i=40 To 83 'скопировать текст смс
SF[i-40]=SF

Next

DelayMS 5000

HRSOut Str  PN \10 ' номер телефона  'отправим обратно для контроля в ком порт ,что бы было видать в терминале что пик принял смс
DelayMS 1000
HRSOut Str SF \ 43 ' текст SMS  'номер телефона  'отправим обратно для контроля в ком порт ,что бы было видать в терминале что пик принял смс

var1=0
ld1:
GoSub TURN_LED 'Моргнем светодиодом
Inc var1
If var1 = 4 Then GoTo main
GoTo ld1

end

Добавлено (02.12.2022, 05:52)
---------------------------------------------
Выяснил для себя , что команды serin ждёт заполнения всего массива  ,так как я массив  сделал 84 символа, то длинные sms принимаются ,а короткие нет . подключил пик чисто к терминалу и отправляю данные ,пока не отправлю именно 84 символа ,то мне обратно в терминал ни чего не возвращается .

HRSIn {10000, loop},str SF \ 8 ,делаю так ,то принимает токо минимум 8 символов ,если меньше то не отрабатывает.

---------------------------------------------------------------------------------------------------------------------------------------------------
Как сделать ? если количество символов переданных не известно. , как правильно принимать всё что приходит в порт Serin не понятно ,может кто что подскажет ?
Может по прерываниям как то ,что в приёмном порту есть данные или их нет
Тут нашёл что можно использовать вот это
------------------------------------------------------------------------------

RCIF VAR PIR1.5 ' Alias RCIF (USART Receive Interrupt Flag)
OERR VAR RCSTA.1 ' Alias OERR (USART Overrun Error Flag)
CREN VAR RCSTA.4 ' Alias CREN (USART Continuous Receive Enable)
---------------------------------------------------------------------------------------------------------------
А как их использовать я не знаю.

Или как то по другому можно принимать  все данные с компорта данные ?

Cпасибо.


если знаешь,помоги.
Сообщение отредактировал tolyan249 - Пт, 02.12.2022, 07:48
Форум Picbasic.ru » Программирование МК » Proton PicBasic » Компорт
  • Страница 1 из 1
  • 1
Поиск: