Вычисление
|
|
tolyan249 |
Дата: Пн, 08.09.2014, 18:54 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
189
Замечания:
±
На сайте с 11.10.2007
Статус:
Offline
|
dim temp2 as word dim temp3 as word
Не заходит по условию
'если температура меньше чем предедущая то записываем в памать эту температуру If temp2<=temp3 Then temp3=temp2 EWrite 3, [TemperC]EWrite 5, [sign]EndIf
Записываю в память самую низкую темературу и самую высокую которые были до того как запросили данные, после показа обнуляю данные Проверил с положительными числами работает нормально, с отрицательными не работает условие. Что -1 меньше чем 0, проверяю в протеусе не заходит. Странно. Может чего то пропустил или не понял чего то. Обясните что не так. Спасибо.
если знаешь,помоги.
Сообщение отредактировал
tolyan249 - Пн, 08.09.2014, 19:26
|
|
|
|
anatol |
Дата: Пн, 08.09.2014, 19:41 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
А букварь читать? Чем отличается переменная Word от Sword, а также word от Word?
|
|
|
|
brown |
Дата: Пн, 08.09.2014, 19:48 | Сообщение # 3 |
Группа:
Пользователи
Ранг:
Помогаю всем
Сообщений:
333
Замечания:
±
На сайте с 18.09.2007
Статус:
Offline
|
Тип переменной выбран с положительным значением. Из помощи версии 3.5.6.5: Dim Cat as Bit ' Create a single bit variable (0 or 1) Dim Dog as Byte ' Create an 8-bit unsigned variable (0 to 255) Dim Rat as Word ' Create a 16-bit unsigned variable (0 to 65535) Dim Lrg_Rat as Dword ' Create a 32-bit unsigned variable (0 to 4294967295) Dim sDog as SByte ' Create an 8-bit signed variable (-128 to +127) Dim sRat as SWord ' Create a 16-bit signed variable (-32768 to +32767) Dim sLrg_Rat as SDword ' Create a 32-bit signed variable (-2147483648 to ' +2147483647) Dim Pointy_Rat as Float ' Create a 32-bit floating point variable
Век живи - век учись! К концу жизни поймешь, что ничего не знаешь...
|
|
|
|
tolyan249 |
Дата: Вт, 09.09.2014, 05:16 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
189
Замечания:
±
На сайте с 11.10.2007
Статус:
Offline
|
Спасибо огромное за помощь, что указали на ошибки, просто где то читал что Word может принимать значения от -32768 до +32767.
У меня нет такого в протоне SWord Sbyte SDWord выдает ошибку. Вот с хелпа самого протона: Space for each variable is automatically allocated in the microcontroller's RAM area. The for- mat for creating a variable is as follows: - Dim Label as Size Label is any identifier, (excluding keywords). Size is Bit, Byte, Word, Dword or Float. Some examples of creating variables are: - Dim Dog as Byte ' Create an 8-bit unsigned variable (0 to 255) Dim Cat as Bit ' Create a single bit variable (0 or 1) Dim Rat as Word ' Create a 16-bit unsigned variable (0 to 65535) Dim Large_Rat as Dword ' Create a 32-bit signed variable (-2147483648 to ' +2147483647) Dim Pointy_Rat as Float ' Create a 32-bit floating point variable The number of variables available depends on the amount of RAM on a particular device and the size of the variables within the BASIC program. The compiler may reserve approximately 26 RAM locations for its own use. It may also create additional temporary (System) variables for use when calculating complex equations, or more complex command structures. Especially if floating point calculations are carried out.
если знаешь,помоги.
Сообщение отредактировал
tolyan249 - Вт, 09.09.2014, 05:28
|
|
|
|
anatol |
Дата: Вт, 09.09.2014, 19:40 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
471
Замечания:
±
На сайте с 10.02.2010
Статус:
Offline
|
tolyan249, или посвежее версию найди, или Dword в вашей в помощь.
|
|
|
|
tolyan249 |
Дата: Чт, 11.09.2014, 05:16 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
189
Замечания:
±
На сайте с 11.10.2007
Статус:
Offline
|
Спасибо буду думать.
если знаешь,помоги.
|
|
|
|