Обсуждаем цифровые устройства...
Ответить

Re: Proteus: вопросы и ответы

Сб май 28, 2022 15:38:44

Модель для PIC16F18313 есть?
Proteus v8.13

Re: Proteus: вопросы и ответы

Сб май 28, 2022 15:46:08

Модель для PIC16F18313 есть?
Proteus v8.13

Proteus v8.13 SP0
Изображение
Вложения
изображение_2022-05-28_154411787.png
(9.39 KiB) Скачиваний: 924

Re: Proteus: вопросы и ответы

Чт авг 04, 2022 07:26:11

Мужики и девчата, дайте пожалуйста ссылку или информацию где взять проверенную версию 8.13 или 8.14. Честно отлистал ветку до viewtopic.php?f=2&t=3739&hilit=Proteus+8.13&start=4200 и не нашел.
Спасибо!

Re: Proteus: вопросы и ответы

Чт авг 04, 2022 19:56:52

Ищи тут.
Спойлерhttp://forum.ru-board.com/topic.cgi?forum=35&topic=2309&start=600

Re: Proteus: вопросы и ответы

Чт авг 04, 2022 22:45:23

Ищи тут.
Спойлерhttp://forum.ru-board.com/topic.cgi?forum=35&topic=2309&start=600


Спасибо! буду там искать раз альтернативы нет.
С трекера помню такую гадость чуть не поймал. Эмулятор спас только.

Re: Proteus: вопросы и ответы

Сб авг 13, 2022 17:23:46

Добра всем. Можно ли установить на одном компьютере с о.с. windows 7 два Proteus разных версий ?

Re: Proteus: вопросы и ответы

Сб авг 13, 2022 19:22:05

Пользуясь случаем, тоже имею вопрос.
Установлен 8.11, претензий нет.
Имеет смысл устанавливать 8.13?
ось 7х64.

Re: Proteus: вопросы и ответы

Сб авг 13, 2022 23:51:15

Добра всем. Можно ли установить на одном компьютере с о.с. windows 7 два Proteus разных версий ?

Можно
протеусу пох в какую папку устанавливать.
НО
настроки папок итд храняться в реестре и их надо переключать под каждую инсталляцию.

Re: Proteus: вопросы и ответы

Сб авг 27, 2022 17:50:59

Здравствуйте, вопрос наверное к разработчикам.
Для проверки идей нужны микросхемы с I2S.
Неважно какие, лишь бы имелась работа с этим протоколом.
По идее МК типа stm32F4х должны работать.
А еще что-нибудь с таким протоколом есть?
Их ведь довольно много, но как их найти в Proteus?
Составлять список реальных чипов и проверять его на наличие моделей в proteus?
ИМХО это нереально...

Re: Proteus: вопросы и ответы

Сб авг 27, 2022 18:22:23

Kabron писал(а):Для проверки идей нужны микросхемы с I2S.
Может, всё-таки I²C?
окно proteus.png
(155.67 KiB) Скачиваний: 79

Набираете I²C в строке- и у вас появятся все микросхемы, где в хароактеристиках вписано: I²C (только учтите, не все микросхемы имеют модель для работы в протеусе, иногда это бывает только УГО)

Re: Proteus: вопросы и ответы

Сб авг 27, 2022 19:45:12

Нет, именно I2S. Тем не менее совет сработал, но... для девайсов без моделей.
Хотя модель STM32F4х, насколько я понимаю, есть, но в получаемом по указанию I2S списке ничего нет.
И понятно почему: поиск идет по названию и описанию.
Тогда получается, в моделях proteus ничего окромя STM32F4х с протоколом I2S нет? :(

Re: Proteus: вопросы и ответы

Сб авг 27, 2022 20:06:21

но... для девайсов без моделей.

А галку поставить "поиск с моделями" не.

Re: Proteus: вопросы и ответы

Сб авг 27, 2022 20:47:21

но... для девайсов без моделей.

А галку поставить "поиск с моделями" не.
Вложения
Снимок.JPG
(54.49 KiB) Скачиваний: 96

Re: Proteus: вопросы и ответы

Вс авг 28, 2022 02:42:16

но... для девайсов без моделей.

А галку поставить "поиск с моделями" не.


I2S протокол передачи аудио(на сколько помню) и наличие его в списке - всего лишь уведомление об реализованной аппаратной поддержки этого протокола в чипе. Что мешает его программно реализовать?
Возможно и найдется ответ почему его поддержки нет в эмуляторе...

И да, мир суров. Придётся искать чипы с протоколом, искать аналоги в протеусе и проверять наличие нужных функций. Информация не всегда соответствует действительности, мягко говоря.

Re: Proteus: вопросы и ответы

Вс авг 28, 2022 06:07:25

I2S протокол передачи аудио(на сколько помню) и наличие его в списке - всего лишь уведомление об реализованной аппаратной поддержки этого протокола в чипе.
Не совсем так. Есть много чипов, в которых I2S является основной функцией. Например различные аудиоконвертеры, кодеры и декодеры, звуковые процессоры, УНЧ и т.п.
Например MAX98375.
Можно ли смоделировать его работу в протеусе на том же STM32F4х? Конечно можно! Но гораздо проще этот самый MAX98375 купить в виде модуля.

Re: Proteus: вопросы и ответы

Пт сен 23, 2022 13:59:51

Здравствуйте, прошу помощи.
решил сделать на кухню часы с температурой, накидал скеч.
Спойлер
Код:

//---------- библиотеки ----------
#include <Wire.h>                                  // Подключаем библиотеку I2C
#include <microDS3231.h>
MicroDS3231 rtc;
#include "LedControl.h"
#include <microDS18B20.h>
MicroDS18B20<2> sensor;                            // подкдючаем датчик DS18B20  к атмеге ножка РВ2
LedControl LC = LedControl(12, 11, 10, 2);         //Создаём объект класса LedControl для двух устройств

//---------- Инициализируем переменные-------------------------------------------------------------------------------

int h1,h0,m1,m0,s1,s0;                             // h1 - десятки часов, h0 - еденицы часов и так далее ...
int d1, d0, mn1, mn0, y1, y0, dw;                  // d1 - десятки дней, d0 - еденицы дней и так далее...
int t0, t1, tv;                                    // t1 - десятки температуры, t0 - еденицы температуры и так далее ...
float temp;                                        // Переменная температуры
uint32_t timer;                                    // переменная для счетчиков времени

//---------- void SETUP ----------
void setup(){                                     

  Serial.begin (9600);                           
 
  int devices = LC.getDeviceCount();                    //Создаём целочисленную переменую devices и сохраняем в ней значение количества устройств
  for (int address = 0; address < devices; address ++)  //Начинаем инициализацию устройств в цикле переменная devices = 2, поэтому цикл выполнится 2
  {
    LC.shutdown(address, false);                        //Выводим устройство с адресом равным address из энергосберегающего режима
    LC.setIntensity(address, 8);                        // Устанавливаем интесивность свечения для устройства с адресом равным address на средний уровень
    LC.clearDisplay(address);                           // и очищаем дисплей с адресом равным address
   // Serial.println(address);delay(100);
  }
    sensor.requestTemp();                               // запрос температуры
    refreshAll();                                       // очистить экран
}
 
///============= void LOOP =======================
void loop(){
   
          watch();                                       // выводим на экран часы
                                                           
   if (millis() - timer >= 1000) {                       // измерение температуры длится 750 мс, у нас чуть больше
   timer = millis();         
   sensor.requestTemp();                                 // запрос температуры
  }
       
   if (sensor.readTemp()){                               //запрашивает данные с датчика и возвращает true, если они прочитаны корректно.

         temp = sensor.getTemp();                        // присваиваем результат
         Serial.println(sensor.getTemp()); 
 
         t1 = (int)temp/10;                             // t1 - десятки температуры
         Serial.print((int)temp/10);
         Serial.print(":");
         t0 = (int)temp%10;                             // t0 - еденицы температуры
         Serial.print((int)temp%10);
         
         LC.setDigit(1, 1, t1, false);                  // выводим на дисплей (№ MAX7219, разряд, наше значение, точка вкл/выкл)
         LC.setDigit(1, 2, t0, true);                   // выводим на дисплей (№ MAX7219, разряд, наше значение, точка вкл/выкл)                                         
 
         Serial.println(" end"); 
         //delay(2000);
      }
   else {                                               // если  данные с датчика прочитаны не корректно высвечиваем "0" ("error").
        LC.setDigit(1, 0, tv, true);                     // выводим на дисплей (№ MAX7219, разряд, наше значение, точка вкл/выкл) 
        Serial.println("error");
        //delay(2000);
        }
  }
//---------- ЧАСЫ ----------
void watch() {
 
  h1 = rtc.getHours()/10;              // десятки часа
  h0 = rtc.getHours()%10;              // еденицы часа
  m1 = rtc.getMinutes()/10;            // десятки минут
  m0 = rtc.getMinutes()%10;            // еденицы минут
  s1 = rtc.getSeconds()/10;            // десятки секунд
  s0 = rtc.getSeconds()%10;            // еденицы секунд
 
  LC.setDigit(0, 0, h1, false);        // выводим на дисплей (№ MAX7219, разряд, наше значение, точка вкл/выкл)
  LC.setDigit(0, 1, h0, false);
  LC.setDigit(0, 2, m1, false);
  LC.setDigit(0, 3, m0, false);
  LC.setDigit(0, 4, s1, false);
  LC.setDigit(0, 5, s0, false);

 /* Serial.print(h1);Serial.print(h0);
  Serial.print(":");
  Serial.print(m1);Serial.print(m0);
  Serial.print(":");
  Serial.print(s1);Serial.println(s0);
        delay(1000);*/
  }

//---------- очищаем дисплей ----------
void refreshAll() {

  int devices = LC.getDeviceCount();                   // devices значение количества устройств
  for (int address = 0; address < devices; address ++) // Начинаем инициализацию устройств в циклепеременная devices = 2, поэтому цикл выполнится 2 раз
  {
    LC.clearDisplay(address);                          // очищаем дисплеи
  }
}
//---------- КОНЕЦ ----------

в железе проверить нет возможности пока, детальки едут из Китая ...
нарисовал в протеусе и ... три дня :?
СпойлерИзображение


и вот тут затык . протеус никак не хочет отображать температуру хотя в ардуиновской программе выводиться
СпойлерИзображение

да я менял библиотеки, ножки атмеги328 (ардуины) и никак не разберусь... почему в ардуиновском пороге выводится темпера,
а в потеусе выводится "0" (если данные с датчика прочитаны не корректно высвечиваем "0" ("error")) как будто датчик не подключен!

большая просьба, написать какой нибуть код и проверте в моем протеусе выводится температура?
или подскажите, что не так я нарисовал в протеусе? а может температура и в железе выводиться не будет ? :facepalm:
Вложения
chasy_atmega328_ds3132_ds18B20_max7912.rar
(24.7 KiB) Скачиваний: 111
библиотеки.rar
(405.19 KiB) Скачиваний: 102

Re: Proteus: вопросы и ответы

Пт сен 23, 2022 17:17:35

Я бы поэкспериментировал со свойствами подтягивающего резистора на линии датчика (digital/analog). В своё время тоже в каком-то из этих режимов у меня не работало.

Re: Proteus: вопросы и ответы

Пт сен 23, 2022 18:30:12

со свойствами подтягивающего резистора на линии датчика (digital/analog).

Вы имеете ввиду это
СпойлерПлата Arduino Nano имеет 14 цифровых контактов, которые помечаются буквой D (цифровой, digital). Контакты используются как входы и выходы, у каждого имеется подтягивающий резистор. Аналоговые пины обозначаются буквой А и используются как входы. У них отсутствую подтягивающие резисторы, они измеряют поданное на них напряжение и возвращают значение при помощи функции analogRead().


я выше писал :tea: пробовал подключить к А0, А1 (У них отсутствую подтягивающие резисторы)
пробовал подключить к D2, D1 (у каждого имеется подтягивающий резистор)

результат :cry:

Re: Proteus: вопросы и ответы

Пт сен 23, 2022 19:22:17

Здравствуйте, прошу помощи.
решил сделать на кухню часы с температурой, накидал скеч. Ну так и сделай по этой схеме
Вложения
Termo_clock_ATM.zip
(62.28 KiB) Скачиваний: 105

Re: Proteus: вопросы и ответы

Пт сен 23, 2022 19:44:36

1. это мне не подходит
2. мне нужно три экрана показывающие время, температуру за окном, температуру в кухне
3. под все свои хотелки я в состоянии написать скеч сам
у вас прошу помощи разобраться с протеусом пока не приехали из китая комплектующие, почему он не показывает температуру
Ответить