Например TDA7294

Форум РадиоКот • Просмотр темы - Некорректная симуляция
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Сб авг 09, 2025 10:58:20

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


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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Некорректная симуляция
СообщениеДобавлено: Вт ноя 28, 2023 02:10:46 
Родился

Зарегистрирован: Вт ноя 28, 2023 02:00:03
Сообщений: 2
Рейтинг сообщения: 0
Всем доброго времени суток.
Написал код на асме для PIC18F2520 и протестировал его на отладке. Всё работало прекрасно (переключались светодиоды, подвязанные к RB2-RB5, через каждые 0.4мс). Отладка не всегда под рукой, поэтому решил найти иной способ. PIC18 SIMULATOR IDE работал не правильно да и в принципе вызывал вопросы. Решил поставить Proteus Professional v8.13 SP0 Build 31525. И тут возникли проблемы. Собрал схему (скрин прикладываю) и залил код (его тоже прикладывают. В итоге в протеусе мигал только светодиод на выходе RB2 и с гораздо большим периодом чем 0.4.

Всем заранее спасибо.
Изображение
Код:
Спойлер
Код:
LIST P=18F2520, F=INHX32
#include <P18F2520.INC>
CONFIG   OSC = INTIO67, WDT = off, pbaden=off, LVP=OFF, XINST= OFF   

      UDATA

WREG_TEMP   RES   1
STATUS_TEMP   RES   1
BSR_TEMP   RES   1

      UDATA_ACS

EXAMPLE      RES   1
LED_REPIT   RES   1

DATA_EEPROM   CODE   0xf00000

      DE   "Test Data",0,1,2,3,4,5

RESET_VECTOR   CODE   0x0000

      goto   Main   

HI_INT_VECTOR   CODE   0x0008

      bra   HighInt

LOW_INT_VECTOR   CODE   0x0018

      bra   LowInt

      CODE
HighInt:
   BCF INTCON, TMR0IF
   
   MOVLW HIGH .25535
   MOVWF TMR0H
   MOVLW LOW .25535
   MOVWF TMR0L
   
   INCF LED_REPIT
   MOVLW .10
   CPFSEQ LED_REPIT
   BRA ext   
   
   BTFSC LATB, RB5
   BRA TurnOn1
   
   BTFSC LATB, RB2
   BRA TurnOn2
   
   BTFSC LATB, RB3
   BRA TurnOn3
   
   BTFSC LATB, RB4
   BRA TurnOn4
      
TurnOn1:
   BSF LATB, RB2
   BCF LATB, RB3
   BCF LATB, RB4
   BCF LATB, RB5
   MOVLW .0
   MOVWF LED_REPIT
   BRA ext

TurnOn2:
   BCF LATB, RB2
   BSF LATB, RB3
   BCF LATB, RB4
   BCF LATB, RB5
   MOVLW .0
   MOVWF LED_REPIT
   BRA ext

TurnOn3:
   BCF LATB, RB2
   BCF LATB, RB3
   BSF LATB, RB4
   BCF LATB, RB5
   MOVLW .0
   MOVWF LED_REPIT
   BRA ext
         
TurnOn4:
   BCF LATB, RB2
   BCF LATB, RB3
   BCF LATB, RB4
   BSF LATB, RB5
   MOVLW .0
   MOVWF LED_REPIT
   BRA ext
   
ext:
   retfie   FAST   

LowInt:
   movff STATUS,STATUS_TEMP ;save STATUS register
   movff WREG,WREG_TEMP ;save working register
   movff BSR,BSR_TEMP ;save BSR register

   ; * low priority interrupt code goes here *

   movff BSR_TEMP,BSR ;restore BSR register
   movff WREG_TEMP,WREG ;restore working register
   movff STATUS_TEMP,STATUS ;restore STATUS register
   retfie
      
Main:
   
   BCF OSCCON,IRCF0
   BSF OSCCON,IRCF1
   BSF OSCCON,IRCF2 ;110 - ???? 4???
   BCF OSCTUNE,PLLEN ;?????????? ??????? ? ???? ????????

   BCF TRISB, RB2
   BCF TRISB, RB3
   BCF TRISB, RB4
   BCF TRISB, RB5 ;????? ??????????? ??? ??????

   BCF LATB, RB2
   BCF LATB, RB3
   BCF LATB, RB4
   BCF LATB, RB5 ;???? ?????? ??????? ?? ?????
   
   BSF RCON, IPEN ;???????????? ?????????? ?????????
   BSF INTCON, GIEH;?????????? ??????? ??????????
   BSF INTCON, TMR0IE;??????? ??????????
   BCF INTCON, TMR0IF;???? ?????????? ???????????? TMR0
   BSF INTCON, TMR0IP;???? ???????? ??????????
   
   MOVLW b'00001000' ;3 ??? - ?? ??????????? ????????????
   MOVWF T0CON
   
   MOVLW HIGH .25535 ;65536-25535=50? ????????
   MOVWF TMR0H
   MOVLW LOW .25535
   MOVWF TMR0L
   
   BSF T0CON, TMR0ON
   
   MOVLW .0
   MOVWF LED_REPIT
   CycleMain:
      BRA CycleMain

end


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Некорректная симуляция
СообщениеДобавлено: Вт ноя 28, 2023 06:15:23 
Сверлит текстолит когтями

Зарегистрирован: Вт ноя 19, 2019 06:10:18
Сообщений: 1228
Рейтинг сообщения: 0
Я бы на месте этого PIC не то что симулироваться не стал бы, а просто удалил бы такую схему.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Некорректная симуляция
СообщениеДобавлено: Вт ноя 28, 2023 06:43:15 
Друг Кота
Аватар пользователя

Карма: 195
Рейтинг сообщений: 8542
Зарегистрирован: Пн ноя 30, 2009 03:00:01
Сообщений: 42394
Откуда: Нерезиновая
Рейтинг сообщения: 0
Я не специалист в PIC-ах, но=
для протеуса просто подать питание от батарейки- МАЛО, вам нужно было ещё катоды светодиодов соединить с "ЗЕМЛЁЙ" (это в разделе "TERMINALS" элемент "GROUND"), и зачем 12 вольт вы прицепили к выводу 1 МК? Туда нужно, либо подключить элемент "POWER", либо, если нужен "сброс" - кнопку сброса или "LOGICSTATE" из "Debugging Tools"
Изображение
Светодиоды через резисторы подключать не обязательно, но, если этот сигнал, кроме светодиода, идёт ещё куда-то, то желательно, я ставлю 100 Ом, этого достаточно..


Вложения:
Схема с PIC18F.JPG [75.59 KiB]
Скачиваний: 114
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Некорректная симуляция
СообщениеДобавлено: Вт ноя 28, 2023 06:57:17 
Друг Кота
Аватар пользователя

Карма: 51
Рейтинг сообщений: 2108
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Сообщений: 6998
Откуда: Сердце Пармы
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (2)
можно просто светодиод сделать цифровым (в его свойствах) тогда и резистор не надо и проц при симуляции нагружает меньше

_________________
Просто не учи физику в школе, и вся твоя жизнь будет наполнена чудесами и волшебством :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Некорректная симуляция
СообщениеДобавлено: Вт ноя 28, 2023 22:43:07 
Родился

Зарегистрирован: Вт ноя 28, 2023 02:00:03
Сообщений: 2
Рейтинг сообщения: 0
Я не специалист в PIC-ах, но=
для протеуса просто подать питание от батарейки- МАЛО, вам нужно было ещё катоды светодиодов соединить с "ЗЕМЛЁЙ" (это в разделе "TERMINALS" элемент "GROUND"), и зачем 12 вольт вы прицепили к выводу 1 МК? Туда нужно, либо подключить элемент "POWER", либо, если нужен "сброс" - кнопку сброса или "LOGICSTATE" из "Debugging Tools"
Изображение
Светодиоды через резисторы подключать не обязательно, но, если этот сигнал, кроме светодиода, идёт ещё куда-то, то желательно, я ставлю 100 Ом, этого достаточно..

За ответ спасибо.
Собирал схему на скорую руку по примеру зарубежных друзей с ютуба.
Только вот проблему это никак не решило. PORTB выводит только RB2, хотя отладка в MPLAB показывает что задействуются RB2-RB5, что собственно и планировалось.


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

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


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

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


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

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


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