Форум РадиоКот https://radiokot.ru/forum/ |
|
Pic ассемблер генератор импульсов https://radiokot.ru/forum/viewtopic.php?f=58&t=181329 |
Страница 1 из 1 |
Автор: | serega4789 [ Чт фев 17, 2022 08:13:35 ] |
Заголовок сообщения: | Pic ассемблер генератор импульсов |
Добрый день! Нужно снять с мк pic18f4520 минимально короткий импульс, прогу написал на ассемблере, импульсов нет На выходе rb5 |
Автор: | Alexey1969 [ Чт фев 17, 2022 08:18:27 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Загадочно ![]() |
Автор: | serega4789 [ Чт фев 17, 2022 08:29:06 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Код: ;****************************************************************************** ; Author: FABIO MACHADO ; GitHub: https://github.com/MrFMach ;****************************************************************************** ;****************************************************************************** ;List directives list p=18F4520 ;directive to define processor ;****************************************************************************** ;Includes #INCLUDE <P18F4520.INC> ;processor specific variable definitions ;****************************************************************************** ;Configuration bits CONFIG OSC = HS ;pic-board cristal cscillator = 20 MHz ;****************************************************************************** ;Reset Vector RES_VECT CODE 0x0000 ;processor reset vector GOTO START ;go to beginning of program ;****************************************************************************** ;Add interrupts here if used ;****************************************************************************** ;Main program MAIN_PROG CODE ;let linker place main program DCounter1 EQU 0x0C DCounter2 EQU 0x0D DCounter3 EQU 0x0E DELAY_1s: MOVLW 0x6D MOVWF DCounter1 MOVLW 0x5E MOVWF DCounter2 MOVLW 0x1A MOVWF DCounter3 LOOPD1: DECFSZ DCounter1, 1 GOTO LOOPD1 DECFSZ DCounter2, 1 GOTO LOOPD1 DECFSZ DCounter3, 1 GOTO LOOPD1 RETURN DELAY_200ms: MOVLW 0xAC MOVWF DCounter1 MOVLW 0x13 MOVWF DCounter2 MOVLW 0x06 MOVWF DCounter3 LOOPD2: DECFSZ DCounter1, 1 GOTO LOOPD2 DECFSZ DCounter2, 1 GOTO LOOPD2 DECFSZ DCounter3, 1 GOTO LOOPD2 NOP RETURN START: MOVLW B'00000000' MOVWF TRISB ;PORTB as output CLRF PORTB GOTO MAIN MAIN: BSF PORTB,5 ;set bit 5 BSF PORTB,6 ;set bit 6 BSF PORTB,7 ;set bit 7 CALL DELAY_200ms BCF PORTB,5 ;clear bit 5 BCF PORTB,6 ;clear bit 6 BCF PORTB,7 ;clear bit 7 CALL DELAY_1s GOTO MAIN ;****************************************************************************** ;End END Добавлено after 2 minutes 56 seconds: Взял с гитхаба, изменил только вкл rb5 и резкое отключение rb5 Далее пауза около 1,5 мкс импульс должен быть 100нс |
Автор: | 1en2 [ Чт фев 17, 2022 08:39:37 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
по-моему, время одной команды 200 нс.....поэтому хотеть 100 на выходе не реально...даже если импульс и появится... |
Автор: | Zikon [ Чт фев 17, 2022 10:39:26 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
BSF LATB, 5 NOP BCF LATB, 5 ???? |
Автор: | serega4789 [ Чт фев 17, 2022 11:42:35 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Да bsf portb.5 Bcf portb5 Nop Nop задержка через переменную инкримент Кварц 40мгц может на выходе дать 100нс Временно использовал генератор с али 150кгц импульс 1‰ Но выход взял напрямую с мк генератора, отриц сигнал инвертировал через sn74hc14n 5вольтовый, на выходе получил 80нс Добавлено after 5 minutes 26 seconds: Это нужно для поиска обрыва кабеля, 40 метров можно найти обрыв самодельным рефлектометром |
Автор: | КРАМ [ Пт фев 18, 2022 20:57:45 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Nop задержка через переменную инкримент Кварц 40мгц может на выходе дать 100нс Дебильный способ. Для формирования импульсов и подсчета времени есть аппаратные способы в наборе периферии МК. К слову, 1 метр UTP - 5,1 нс задержки (10,2 нс в обе стороны). ![]() ![]() |
Автор: | Martian [ Пт фев 18, 2022 22:37:31 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
хм... он так сильно закручен, что длина самого провода настолько значительно длиньше? |
Автор: | КРАМ [ Сб фев 19, 2022 03:51:08 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Причем тут "закрутка"? И "длиньшне" чем что? |
Автор: | Martian [ Сб фев 19, 2022 05:42:02 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Если отдельные жилы UTP выпрямить, их фактическая длина окажется больше метра. Но я уже нашёл ответ - тот самый коэффициент укорочения, о котором Вы упоминали ранее. |
Автор: | electroget [ Сб фев 19, 2022 05:42:30 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Причем тут "закрутка"? А при чём тут вообще UTP? Разве сабж про задержки в кабелях? |
Автор: | anatol378 [ Сб фев 19, 2022 06:53:17 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
![]() Такое дополнение к контроллеру рассматривалось? |
Автор: | КРАМ [ Сб фев 19, 2022 07:51:26 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
А при чём тут вообще UTP? Разве сабж про задержки в кабелях? ![]() ![]() serega4789 писал(а): Это нужно для поиска обрыва кабеля, 40 метров можно найти обрыв самодельным рефлектометром Добавлено after 4 minutes 32 seconds: Если отдельные жилы UTP выпрямить, их фактическая длина окажется больше метра. Вы правильно вспомнили про укорочение. И оно, естественно, связано с типом диэлектрика, а не физической длиной жил. Тем более, что в коаксиальном кабеле с полиэтиленом в диэлектрике задержка будет идентична. Добавлено after 6 minutes 45 seconds: Такое дополнение к контроллеру рассматривалось? Тут проблема не в длительности импульсов. Настоящий рефлектометр вообще работает на длительности фронта, а не импульса. Проблема в подсчете времени. Дискретность в 100 нс даст дискретность расстояния примерно в 10 метров. Да и 100 нс нопами в программе не посчитать. Есть модуль Input Capture для таких целей. |
Автор: | electroget [ Сб фев 19, 2022 08:31:11 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Такое дополнение к контроллеру рассматривалось? Так а зачем тогда вообще микроконтроллер, если есть готовое решение без микроконтроллера? Или потому, что без микроконтроллера "любой дурак сможет"? |
Автор: | КРАМ [ Сб фев 19, 2022 08:45:08 ] |
Заголовок сообщения: | Re: Pic ассемблер генератор импульсов |
Так а зачем тогда вообще микроконтроллер? Наверное затем, что бы измерять отраженный сигнал и на этом основании вычислять физическую длину кабеля от прибора до обрыва... Генерация импульса тут самая простая задача. Еще нужен усилитель для работы на кабель. Причем согласованный с кабелем. |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |