Перейти к содержанию
    

Mari-999

Участник
  • Постов

    16
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Mari-999

  • Звание
    Участник
    Участник
  • День рождения 04.08.1980

Контакты

  • Сайт
    Array
  1. Что за ошибки? Я же не ясновидящий!.. Скопируйте их сюда У нас mpasmwin, он когда переводишь в hex выдает 5 ошибок, одну нашла не обьявлена перем.count, осталось три, он не указывает какие, но когда комментируешь те две строки MOVLW 0x09 и GOTO V0, он выдает 0 ошибок, я посмотрела, но так прога не работает
  2. Давайте разбираться. Что пишет компилятор, на что ругается? А причем здесь компилятор? Вроде это стандартный ассемблер для PICов... MPASM выдает 5 ошибок, одну нашла не объявлена переменная COUNT, остальные не знаю
  3. Читайте внимательнее, это ПОДпрограмма! Замените в своей программе, начиная с метки R1_VD2M на мою. Да, именно так и сделала (это то я поняла конечно, что это подпрограмма :) ), заменила, она не работает и ругаеться на строчки MOVLW 0x09 и GOTO V0
  4. Вы уверены? Светодиод катодом к плюсу? нет не уверена
  5. Ничего подобного!!! Я сам писал, ручками! Запускал в MPLAB, все работает. Я изначально учился программировать пики в ассемблере, поэтому знаю что говорю. И чего тут сложного? Куда уж проще? Как раз я и написал наиболее простой вариант, где все просто и понятно. Или вы можете предложить что-то лучше? P.S. Насчет светодиода согласен... А куда пропал автор темы? Добрый всем! Спасибо за помощь!!!!!!! Я здесь! Извиниюсь за не корректное задание. Задание состоит в следующем на RA4 (3 нога) повесили резистор, подключенный к питанию (если резистор подключен к питанию, то на RA4 будет 1), а на RA1 (18 ножка) через резистор подключен диод, катодом в плюс питание. Так вот когда на RA4 у нас единичка, то светодиод мигает с частотой 1 Гц, причем мигает 17 сек, а потом гаснет, если резистор отпаять, то на RA4 будет ноль и светодиод не горит. Я набросала программку, но она работает не так 1-мигает с частотой 1 Гц, 0- светодиод горит и не смогла разобраться, как сделать, чтобы мигал 17 сек (кварц на 8МГц) Вот программа LIST p=16F84 INTCON EQU 0x0B OPTION EQU 0x81 TMR0 EQU 0x01 INTF EQU 1 T0IF EQU 5 PCL EQU 0x02 STATUS EQU 0x03 RP0 EQU 5 PORTA EQU 0x05 PORTB EQU 0x06 TRISA EQU 0x05 TRISB EQU 0x06 W EQU 0 F EQU 1 TEMPA EQU 0x0C TEMPB EQU 0x0D #DEFINE Z STATUS,2 ;бит нулевого результата #DEFINE VD2 PORTA,1 ;светодиод VD2 #DEFINE R1 PORTA,4 ;резистор ORG 0 GOTO BEGIN ; ORG 100h BEGIN CALL INIT_PORTS ;вызов подпрограммы ;инициализации портов INIT_PORTS ;подпрограмма инициализации портов MOVLW 0xFF ;установка линий портов А В в единичное состояние MOVWF PORTA MOVWF PORTB BSF STATUS,RP0 ;переход на банк 1 MOVLW 0x1C ;настройка линий RA0 и RA1 на вывод, другие на ввод MOVWF TRISA MOVLW 0x01 ;настройка линии RB0 на ввод, другие на вывод MOVWF TRISB BCF STATUS,RP0 ;возврат в банк 0 ;RETURN ;возврат из подпрограммы ; LOOP CLRWDT ;сброс сторожевого таймера CALL GET_RA ;вызов подпрограммы GET_RA CALL R1_VD2M ;вызов подпрограммы R1_VD2M мигание светодиода GOTO LOOP ;переход к метке LOOP для DELAY_E ;подпрограмма формирования задержки MOVWF COUNT2 ;загрузка W в регистр COUNT2 CLRF COUNT1 ;сброс содержимого регистра COUNT1 LOOPD NOP ;пустая команда DECFSZ COUNT1,F ;декремент COUNT1 GOTO LOOPD ;повторение цикла 256 раз CLRWDT ;сброс сторожевого таймера DECFSZ COUNT2,F ;декремент COUNT2 GOTO LOOPD ;повторение цикла RETURN ;возврат из подпрограммы ; GET_RA ;подпрограмма чтения состояния порта А MOVF PORTA,W ;чтение состояния порта A в W MOVWF TEMPA ;пересылка W в TEMPA RETURN ;возврат из подпрограммы ; R1_VD2M ;подпрограмма мигания светодиода ;VD2 при при наличии резистора пропустить команду если TEMPA,4=0 резистор подключен BTFSC TEMPA,4 GOTO V0 ;перейти на V0 BSF VD2 ;зажечь светодиод VD2 MOVLW 0xF3 ;пересылка константы ;H'F3' = .243 в W CALL DELAY_E ;вызов подпрограммы DELAY_E BCF VD2 ; светодиод мигает MOVLW 0xF3 ;пересылка константы ;H'F3' = .243 в W CALL DELAY_E ;вызов подпрограммы DELAY_E V0 BTFSS TEMPA,4 ;пропустить команду, если TEMPA,4=1 резистор не подключен GOTO V1 ;перейти на V1 BCF VD2 ;светодиод не горит -а он горит!!!!! V1 RETURN ; возврат из под программы END и нужна подпрограмма на 17 сек, чтоб мигал, а потом перестал!!!
  6. помогите, пожалуйста с пиком 16f84А, лаба заключается в следующем на любой вывод подключить светодиод, когда 0 светодид горит - 2 секунды, когда 1 светодиод не горит 1 секунду...и так цикл, прогу надо написать на ассемблере, и подробно опишите пожалуйста, чтоб разобраться, спасибо
  7. Помогите пож-та с pic

    помогите, пожалуйста с пиком 16f84А, лаба заключается в следующем на любой вывод подключить светодиод, когда 0 светодид горит - 2 секунды, когда 1 светодиод не горит 1 секунду...и так цикл, прогу надо написать на ассемблере, и подробно опишите пожалуйста, чтоб разобраться, спасибо
  8. Транс. в насыщение не уходит
  9. Ага, вот ее то я сначала и начала пересчитывать
  10. Попробую сегодня, но меня смущает RC цепочка, если я правильно понимаю, то как раз то она и открывает, а если мощнее поставить, то открыть еще сложнее (С2 уже поменяла на 400V)
  11. R2, наверное, можно не трогать. Видимо, надо попытаться домотать пропрционально напряжению обмотку 5-8 и посмотреть полевик "повысоковОльтнее". Cпасибо., (была и у меня такая мысля про полевик, но нет в наличии более мощного буду искать и пробовать , )
  12. ИБП работает от 110V, что нужно сделать, для работы от 220V, увел R2, R3, (греется сильно полевик)? 12121.doc
  13. Спасибо, прочитаю. Я смоделировала "Знаковый коррелятор", исследовала на прямоугольных, синусоидальных, треугольных сигналах, на выходе получились качественные функции автокорреляции и взамной корреляции. Сейчас исследую функции на его выходе и работу временную фильтрацию. :)
×
×
  • Создать...