0 / 0 / 0
Регистрация: 14.12.2021
Сообщений: 57
1

Ошибка Simulation is not running in real time due to excessive CPU load

31.12.2021, 15:45. Показов 974. Ответов 4

Здравствуйте, я работаю в Proteus и у меня возникла ошибка Simulation is not running in real time due to excessive CPU load
Подскажите пожалуйста как её исправить

Код прошивки:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
#include <lm3s300.h>
 
// Graphic Display functions
#include <glcd.h>
 
// Font used for displaying text
// on the graphic display
#include <font5x7.h>
 
// Declare your global variables here
 
void main(void)
{
 
unsigned char odin[] = {
0x08, 0x00,
0x08, 0x00,
#ifndef _GLCD_DATA_BYTEY_
0x00, 0x10, 0x18, 0x14, 0x10, 0x10, 0x7C, 0x00,
#else
0x00, 0x00, 0x48, 0x44, 0x7E, 0x40, 0x40, 0x00,
#endif
};
 
// Declare your local variables here
// Variable used to store graphic display
// controller initialization data
GLCDINIT_t glcd_init_data;
 
// Crystal Oscillator division factor: 1
#pragma optsize-
CLKPR=(1<<CLKPCE);
CLKPR=(0<<CLKPCE) | (0<<CLKPS3) | (0<<CLKPS2) | (0<<CLKPS1) | (0<<CLKPS0);
#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif
 
// Input/Output Ports initialization
// Port B initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In 
DDRB=(0<<DDB7) | (0<<DDB6) | (0<<DDB5) | (0<<DDB4) | (0<<DDB3) | (0<<DDB2) | (0<<DDB1) | (0<<DDB0);
// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T 
PORTB=(0<<PORTB7) | (0<<PORTB6) | (0<<PORTB5) | (0<<PORTB4) | (0<<PORTB3) | (0<<PORTB2) | (0<<PORTB1) | (0<<PORTB0);
 
// Port C initialization
// Function: Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In 
DDRC=(0<<DDC6) | (0<<DDC5) | (0<<DDC4) | (0<<DDC3) | (0<<DDC2) | (0<<DDC1) | (0<<DDC0);
// State: Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T 
PORTC=(0<<PORTC6) | (0<<PORTC5) | (0<<PORTC4) | (0<<PORTC3) | (0<<PORTC2) | (0<<PORTC1) | (0<<PORTC0);
 
// Port D initialization
// Function: Bit7=In Bit6=In Bit5=In Bit4=In Bit3=In Bit2=In Bit1=In Bit0=In 
DDRD=(0<<DDD7) | (0<<DDD6) | (0<<DDD5) | (0<<DDD4) | (0<<DDD3) | (0<<DDD2) | (0<<DDD1) | (0<<DDD0);
// State: Bit7=T Bit6=T Bit5=T Bit4=T Bit3=T Bit2=T Bit1=T Bit0=T 
PORTD=(0<<PORTD7) | (0<<PORTD6) | (0<<PORTD5) | (0<<PORTD4) | (0<<PORTD3) | (0<<PORTD2) | (0<<PORTD1) | (0<<PORTD0);
 
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0A output: Disconnected
// OC0B output: Disconnected
TCCR0A=(0<<COM0A1) | (0<<COM0A0) | (0<<COM0B1) | (0<<COM0B0) | (0<<WGM01) | (0<<WGM00);
TCCR0B=(0<<WGM02) | (0<<CS02) | (0<<CS01) | (0<<CS00);
TCNT0=0x00;
OCR0A=0x00;
OCR0B=0x00;
 
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: Timer1 Stopped
// Mode: Normal top=0xFFFF
// OC1A output: Disconnected
// OC1B output: Disconnected
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: Off
// Compare B Match Interrupt: Off
TCCR1A=(0<<COM1A1) | (0<<COM1A0) | (0<<COM1B1) | (0<<COM1B0) | (0<<WGM11) | (0<<WGM10);
TCCR1B=(0<<ICNC1) | (0<<ICES1) | (0<<WGM13) | (0<<WGM12) | (0<<CS12) | (0<<CS11) | (0<<CS10);
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
 
// Timer/Counter 2 initialization
// Clock source: System Clock
// Clock value: Timer2 Stopped
// Mode: Normal top=0xFF
// OC2A output: Disconnected
// OC2B output: Disconnected
ASSR=(0<<EXCLK) | (0<<AS2);
TCCR2A=(0<<COM2A1) | (0<<COM2A0) | (0<<COM2B1) | (0<<COM2B0) | (0<<WGM21) | (0<<WGM20);
TCCR2B=(0<<WGM22) | (0<<CS22) | (0<<CS21) | (0<<CS20);
TCNT2=0x00;
OCR2A=0x00;
OCR2B=0x00;
 
// Timer/Counter 0 Interrupt(s) initialization
TIMSK0=(0<<OCIE0B) | (0<<OCIE0A) | (0<<TOIE0);
 
// Timer/Counter 1 Interrupt(s) initialization
TIMSK1=(0<<ICIE1) | (0<<OCIE1B) | (0<<OCIE1A) | (0<<TOIE1);
 
// Timer/Counter 2 Interrupt(s) initialization
TIMSK2=(0<<OCIE2B) | (0<<OCIE2A) | (0<<TOIE2);
 
// External Interrupt(s) initialization
// INT0: Off
// INT1: Off
// Interrupt on any change on pins PCINT0-7: Off
// Interrupt on any change on pins PCINT8-14: Off
// Interrupt on any change on pins PCINT16-23: Off
EICRA=(0<<ISC11) | (0<<ISC10) | (0<<ISC01) | (0<<ISC00);
EIMSK=(0<<INT1) | (0<<INT0);
PCICR=(0<<PCIE2) | (0<<PCIE1) | (0<<PCIE0);
 
// USART initialization
// USART disabled
UCSR0B=(0<<RXCIE0) | (0<<TXCIE0) | (0<<UDRIE0) | (0<<RXEN0) | (0<<TXEN0) | (0<<UCSZ02) | (0<<RXB80) | (0<<TXB80);
 
// Analog Comparator initialization
// Analog Comparator: Off
// The Analog Comparator's positive input is
// connected to the AIN0 pin
// The Analog Comparator's negative input is
// connected to the AIN1 pin
ACSR=(1<<ACD) | (0<<ACBG) | (0<<ACO) | (0<<ACI) | (0<<ACIE) | (0<<ACIC) | (0<<ACIS1) | (0<<ACIS0);
ADCSRB=(0<<ACME);
// Digital input buffer on AIN0: On
// Digital input buffer on AIN1: On
DIDR1=(0<<AIN0D) | (0<<AIN1D);
 
// ADC initialization
// ADC disabled
ADCSRA=(0<<ADEN) | (0<<ADSC) | (0<<ADATE) | (0<<ADIF) | (0<<ADIE) | (0<<ADPS2) | (0<<ADPS1) | (0<<ADPS0);
 
// SPI initialization
// SPI disabled
SPCR=(0<<SPIE) | (0<<SPE) | (0<<DORD) | (0<<MSTR) | (0<<CPOL) | (0<<CPHA) | (0<<SPR1) | (0<<SPR0);
 
// TWI initialization
// TWI disabled
TWCR=(0<<TWEA) | (0<<TWSTA) | (0<<TWSTO) | (0<<TWEN) | (0<<TWIE);
 
// Graphic Display Controller initialization
// The KS0108 connections are specified in the
// Project|Configure|C Compiler|Libraries|Graphic Display menu:
// DB0 - PORTB Bit 0
// DB1 - PORTB Bit 1
// DB2 - PORTB Bit 2
// DB3 - PORTB Bit 3
// DB4 - PORTB Bit 4
// DB5 - PORTB Bit 5
// DB6 - PORTB Bit 6
// DB7 - PORTB Bit 7
// E - PORTC Bit 0
// RD /WR - PORTC Bit 1
// RS - PORTC Bit 2
// /RST - PORTC Bit 3
// /CS1 - PORTC Bit 4
// /CS2 - PORTC Bit 5
 
// Specify the current font for displaying text
glcd_init_data.font=font5x7;
// No function is used for reading
// image data from external memory
glcd_init_data.readxmem=NULL;
// No function is used for writing
// image data to external memory
glcd_init_data.writexmem=NULL;
 
glcd_init(&glcd_init_data);
 
glcd_putimage(0,0, odin, GLCD_PUTCOPY);
while (1)
      {
      // Place your code here
 
      }
}
Схема прикреплена ниже в архиве
Миниатюры
Ошибка Simulation is not running in real time due to excessive CPU load  
Вложения
Тип файла: rar Схема.rar (21.0 Кб, 0 просмотров)
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.12.2021, 15:45
Ответы с готовыми решениями:

An error occurred while running the simulation and the simulation was terminated
Вроде простое задание, но не получается... An error occurred while running the simulation and...

Proteus "Real Time Simulation Failed to start"
Здравствуйте, сделал по учебе модель схемы, но при запуске симуляции вылетает ошибка(скриншот во...

Real time clock error - Check date and time setting
Всех приветствую! Ноутбук Lenovo b590, после помывки и просушки мат платы, при включении стал...

Ошибка: Нельзя преобразовать тип function x real real к real
Здравствуйте, не могу понять как исправить ошибку (строка 32) var a,b,e,h,xi,fi,ln1,ln2:real;...

CreateProcess CPU hi load
Здравствуйте уважаемые форумчане, проблема такая: Создаю процес при помощи функции CreateProcess ...

4
Native x86
Эксперт Hardware
5167 / 3016 / 872
Регистрация: 13.02.2013
Сообщений: 9,635
31.12.2021, 21:15 2
Это не ошибка, а предупреждение, которое не мешает симуляции.

Исправить скорее всего никак. У вашего компьютера просто не хватает мощности на симуляцию этой схемы в реальном времени. Просто учитывайте, что время вашей схемы течет медленнее, чем в реальности (справа снизу есть часы, которые показывают реальное время симуляции).
0
0 / 0 / 0
Регистрация: 14.12.2021
Сообщений: 57
01.01.2022, 15:25  [ТС] 3
quwy, мне нужно чтобы в схеме на графическом дисплее выводился рисунок. Как это корректно реализовать?
0
Native x86
Эксперт Hardware
5167 / 3016 / 872
Регистрация: 13.02.2013
Сообщений: 9,635
01.01.2022, 17:36 4
Цитата Сообщение от master_hamster Посмотреть сообщение
Как это корректно реализовать?
Без понятия, если честно. Скажу лишь, что данное предупреждение симуляции и выводу рисунка никак не мешает.
0
0 / 0 / 0
Регистрация: 14.12.2021
Сообщений: 57
01.01.2022, 18:18  [ТС] 5
quwy, может я код прошивки не так написал? Посмотрите пожалуйста
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.01.2022, 18:18
Помогаю со студенческими работами здесь

Real time
Добрый день, помогите собрать прогу , есть отдельно взятые рабочие программы , которые выполняют...

QWT real time
На первый взгляд задача реализована, но хотелось бы уйти от цикла с перебором всех QCurveData в...

Real Time Counter
Всем привет! С AVR работаю недавно, по этому есть пару вопросов и советов. Возник вопрос по поводу...

Out of memory in Real-Time
При нажатии на кнопку Connect To Target возникает ошибка: Error occurred while executing External...

Real time debugging
Каким образом это можно реализовать в XNA? Что я хочу, так это следующее: при компиляции проекта...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru