-
Сообщения
-
By Александр Шибин · Posted
Резистор заменил, напряжение на коллекторах изменилось чуть - 3,9 до 4.26. Еще увеличить R20? -
По моему в основном в курсе что происходило. Но по различным причинам отрицают.
-
Мсье знает толк в извращениях...
-
А вот вопрос всем модераторам . Личку то зачем банить ? Ну хотя бы в этой теме . Я договорился с людьми на оправку , они обещают оплатить почту . В итоге я в бане , они мне пишут , а я ответить не могу . Не сочтите за оверквокинг ...
-
Известно. Они об этом пишут, что думают на самом деле. Разумеется, речь идет о тех "немогликах", кто уже умеет писать и излагать свои мысли. Иногда, правда, приходится по несколько раз переспрашивать и уточнять у них вопросы.
-
-
Similar Content
-
By Дмитрий -
Программа для говорящей GSM-сигнализации на языке BASCOM-AVR
' Авторская работа. Автор: Дмитрий Абловацкий.
'Программа для говорящей GSM сигнализации на модуле SIM800L.
'SIM800L Revision:1418B04SIM800L24.
'Настройка микроконтроллера Attiny85: фюзы, изменение только LOW на $E2
$regfile = "attiny85.dat"
$crystal = 8000000
$hwstack = 40
$swstack = 16
$framesize = 32
Config Portb.0 = Input
Config Portb.1 = Output
Config Portb.2 = Input
Open "comb.3:9600,8,n,1" For Input As #2 'RXD - вход
Open "comb.4:9600,8,n,1" For Output As #1 'TXD - выход
Dim Buffered As String * 300
Dim On_off As Bit
Dim In_str As Byte
Dim I As Byte
Dim I1 As Long
Dim Telephone As String * 12
Config Debounce = 100
Telephone = "registered"
' - - - - - - - - - - -Подготовка модуля - - - - - - - - - -
Reset Portb.1 'выход модуля из спящего режима
Wait 12 ' время для самоподготовки модуля
Print #1 , "AT" ' Проверка на готовность модуля к работе
Input #2 , Buffered ' Ответ
In_str = Instr(buffered , "0")
If In_str = 0 Then
Waitms 250
Print #1 , "ATE0V0+CMEE=0;+CLIP=0" 'Выкл эха, только код ошибки, выключить АОН
Input #2 , Buffered ' Ответ
'Waitms 250
'Print #1 , "AT+CNMI=1,2,0,0,0" ' СМС не сохранять, направлять в микроконтроллер
'Input #2 , Buffered ' Ответ
Waitms 250
Print #1 , "ATS0=0" ' автоответ ручной
Input #2 , Buffered ' Ответ
Waitms 250
Print #1 , "AT+CSCLK=1" ' спящий режим
Input #2 , Buffered ' Ответ
Waitms 250
Print #1 , "AT+CLCC=1" ' установить автоматическое отображение статуса
Input #2 , Buffered ' Ответ
Waitms 250
Print #1 , "AT&W" ' сохранить
Input #2 , Buffered ' Ответ
End If
Print #1 , "AT+CPIN?" ' Готовность модуля к работе с картой
Input #2 , Buffered ' Ответ +CPIN READY или 4- нет карты
In_str = Instr(buffered , "SIM PIN")
Input #2 , Buffered ' Ответ 0 - OK или нет ответа
If In_str <> 0 Then 'если карта есть, но нужен PIN - код
Print #1 , "AT+CPIN=0000" 'PIN - код !Возможно Сим-карта заблокируется после 3 неправильных
Input #2 , Buffered ' Ответ 0 - OK или 4- неправильный PIN - код
Input #2 , Buffered ' Ответ +CPIN READY или нет ответа
Input #2 , Buffered ' Ответ Call Ready или нет ответа
Input #2 , Buffered ' Ответ SMS Ready или нет ответа
End If
Wait 2
For I = 1 To 3
Print #1 , "AT+CPAS" 'Готовность к выполнению команд
Input #2 , Buffered ' Ответ
In_str = Instr(buffered , "0")
If In_str <> 0 Then 'Если модуль готов к работе
Wait 1
Print #1 , "AT+CREG?" ' проверка на регистрацию в сети
Input #2 , Buffered ' Ответ
In_str = Instr(buffered , ",1")
If In_str <> 0 Then ' если зарегистрирован
Goto M1 ' выход , иначе ещё попытки
End If
End If
If I = 2 Then
Wait 1
Print #1 , "AT+CFUN=1,1" 'перезагрузка модуля
Input #2 , Buffered ' Ответ
Wait 5
End If
Wait 5
Next
M1:
Do
' - - - - - - - - - - - PIR датчик - - - - - - - - - -
If Pinb.2 = 1 And On_off = 1 And Pinb.0 = 1 Then ' если 1
Wait 3 ' время для пробуждения SIM800L
For I = 1 To 3 ' три попытки дозвониться
Print #1 , "AT+CCALR?" ' идентификатор готовности совершить звонок
Input #2 , Buffered ' Ответ
Input #2 , Buffered ' Ответ
In_str = Instr(buffered , " 1")
If In_str <> 0 Then ' если готов совершить звонок ' если 2
Wait 1
Print #1 , "ATD" ; Telephone ; ";" ' набор номера
Input #2 , Buffered 'ответ
Input #2 , Buffered 'ответ
Input #2 , Buffered 'ответ ' голосовое соединение
In_str = Instr(buffered , "3,0,0") '
If In_str <> 0 Then ' если голосовое соединение ' если 3
For I1 = 1 To 4000000 ' примерно 40 сек ожидание, если соединение и бездействие до сброса
If Pinb.3 = 0 Then ' если абонент возьмёт трубку или сбросит соединение
Input #2 , Buffered 'ответ
Wait 1
For I1 = 1 To 500000 ' примерно 5 сек ожидание сброса
If Pinb.3 = 0 Then ' если сброс соединения
Input #2 , Buffered 'ответ
Goto M2
End If
Next
In_str = Instr(buffered , "0,0,0")
If In_str <> 0 Then ' если голосовое соединение
Print #1 , "AT+CREC=4,C:\User\3__.amr,1,100" ' передача речевого сообщения
Input #2 , Buffered ' Ответ
Wait 8 'Время речевого сообщения + добавленное
M2:
Waitms 250
Print #1 , "ATH0"
Input #2 , Buffered
Bitwait Pinb.2 , Reset
Goto M1
End If
End If
Next
End If ' 3-End If
End If ' 2-End If
Wait 1
Print #1 , "ATH0"
Input #2 , Buffered
Wait 10
Next
End If ' 1-End If
' - - - - - - - - - - -Проверка на входящий звонок по RING - - - - - - - - - -
If Pinb.0 = 0 Then ' если поступил звонок
' - - - - - - - - - - - включение и выключение сигнализации - - - - - - - - - -
Input #2 , Buffered ' Ответ +CLCC: 1,1,4,0,0,"+7**********",145,""
In_str = Instr(buffered , "+7" )
If Telephone = "registered" Then
Telephone = Mid(buffered , In_str , 12 )
Else
In_str = Instr(buffered , Telephone )
End If
Input #2 , Buffered ' Ответ 2 - первый звонок
Input #2 , Buffered ' Ответ 2 - второй звонок
If In_str <> 0 Then ' если зарегистрированный номер телефона
In_str = Instr(buffered , "1,6,0,0,") ' если сброс
If In_str = 0 Then ' если входящий звонок продолжается
Waitms 250
Print #1 , "ATA"
Input #2 , Buffered ' Ответ
Input #2 , Buffered ' Ответ +CLCC: 1,1,0,0,0,"+7**********",145,""
If On_off = 0 Then
On_off = 1
Wait 1
Print #1 , "AT+CREC=4,C:\User\1__.amr,1,100" ' передача речевого сообщения
Input #2 , Buffered ' Ответ
Wait 8 'Время речевого сообщения + добавленное
Print #1 , "ATH0"
Input #2 , Buffered ' Ответ
Else
On_off = 0
Wait 1
Print #1 , "AT+CREC=4,C:\User\2__.amr,1,100" ' передача речевого сообщения
Input #2 , Buffered ' Ответ
Wait 8 'Время речевого сообщения + добавленное
Print #1 , "ATH0"
Input #2 , Buffered ' Ответ
End If
End If
Else ' если незарегистрированный номер телефона
Wait 1
Print #1 , "ATH0"
Input #2 , Buffered ' Ответ
Bitwait Pinb.0 , Set
End If
End If
Set Portb.1 ' в спящий режим SIM800L
Enable Interrupts
Enable Int0
Enable Pcint0
Idle ' в спящий режим микроконтроллер
Reset Portb.1 ' выход модуля из спящего режима
Disable Interrupts
Disable Int0
Disable Pcint0
Loop
End
Источник https://178654.blogspot.com/p/gsm.html
-
By Guest NickL
Всем привет.
Имеется датчик давления под управлением микрухи MLX90308. Микруха сия собирает показания с 4-х включенных мостом тензометрических датчиков, и отдает обработанное значение в виде аналогового сигнала. Так же есть пин для получения данных в цифре и калибровки/прошивки этой микрухи. Производитель микрухи предлагает бесплатный софт и свою отладочно-прошивочную плату (EVB90308) за 250 бакинских (дорого), которую ждать 8 недель (долго)
Судя по докам, там обычный UART, но с другими уровнями. Логический 0 = 0.3*Uвх, т.е. 1.5в, Логическая 1 = 0.7*Uвх, т.е. 3,5в. И всё это засунуто в единственный пин и на прием и на передачу.
Универ был давно, да и учился я плохо, подскажите пожалуйста пример схемы чтобы 1) свести tx и rx на одну ногу 2)согласовать уровни для чтения/записи сей микрухи доступными средствами. Например, FTDI.
Даташит микрухи:
https://www.melexis.com/-/media/files/documents/datasheets/mlx90308-datasheet-melexis.pdf
Спасибо заранее! Это датчик из блока АБС мотоцикла, замены нет, б/у запчастей нет, а новый блок стоит как сам мотоцикл.
-
By Viktor Golubov
Почему может неправильно работать uart? Подключил 1 uart к пк через usb/uart переходник, а второй к gsm модему. В первый уарт вывожу инфу для дебага, а во второй AT команды. Суть в том, что сообщения для 2 уарта выводятся в 1 уарт
и выводятся как то странно
не полностью
Вот такой вывод постоянно:
Begin
End
AT+CNMI=2,2,0,0,0
AT+CMGEnd
AT+CNMI=2,2,0,0,0
а должно быть просто
begin
end
и все
полный код https://pastebin.com/zBBZmZue
-
By IgnatiusF
Появилась надобность в микроконтрллере STM32 для проектирования устройства. И вопрос вот в чем - в программировании этих стм-ов. Прочитал несколько статей по их программированию - что вообще для этого нужно. Выяснил, что в них (во всех?) есть вшитый bootloader, который может сам прошить МК.
То есть для этого необходимо подключить какой-либо ...to UART преобразователь, а именно TX, RX, VCC и gnd к соответсвующим ногам микроконтроллера и все? Или надо еще куда-то подавать управляющий сигнал?
Еще вопрос по поводу бутлоадера - если он занимает 8 КБ (или по разному?), то МК с 16 КБ памяти, по сути, будет иметь 8 КБ для программ?
Datasheet я только начинаю читать и пока еще не нашел точной информации, так что за помощь буду очень признателен
-
By Guest Proton
Здравствуйте.
Имеется сигнальный трансформатор 1:1, которому нужно работать на пару сотнях кГц. Одна его обмотка идёт на линию, вторая служит для приёма и передачи сигнала, например с UART. Но как это реализовать? Выходной каскад, скорее всего, на биполярном транзисторе, входной - на ОУ, но имею малые представления о совмещении этого воедино.
Прошу объяснить и направить на необходимую литературу.
Спасибо.
-