Помогите разобраться со стринговыми переменными
|
|
ilyafm98 |
Дата: Ср, 16.11.2011, 20:00 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Новенький
Сообщений:
18
Замечания:
±
На сайте с 08.12.2010
Статус:
Offline
|
Возникла необходимость управлять 10-ю сервоприводами. Написал прошивку, все работает но на преобразование принятой строки в значение положения каждой сервомашинки тратится слишком много времени. Подскажите, можно ли как- нибудь упростить преобразования для экономии времени?
Code Define osc 20
DEFINE HSER_BAUD 57600 DEFINE HSER_RCSTA 90h DEFINE HSER_TXSTA 24h DEFINE HSER_SPBRG 21 DEFINE HSER_CLROERR 1
serv0 var word serv1 var word serv2 var word serv3 var word serv4 var word serv5 var word serv6 var word serv7 var word serv8 var word serv9 var word
trisc = %11111100 trisb = %00000000 gpsdata var byte[41]
main: HSERIN 100, main, [WAIT("A"), STR gpsdata\41]
serv0 = (gpsdata[0]-$30)*1000+ (gpsdata[1]-$30)*100+ (gpsdata[2]-$30)*10+ (gpsdata[3]-$30) serv1 = (gpsdata[4]-$30)*1000+ (gpsdata[5]-$30)*100+ (gpsdata[6]-$30)*10+ (gpsdata[7]-$30) serv2 = (gpsdata[8]-$30)*1000+ (gpsdata[9]-$30)*100+ (gpsdata[10]-$30)*10+ (gpsdata[11]-$30) serv3 = (gpsdata[12]-$30)*1000+ (gpsdata[13]-$30)*100+ (gpsdata[14]-$30)*10+ (gpsdata[15]-$30) serv4 = (gpsdata[16]-$30)*1000+ (gpsdata[17]-$30)*100+ (gpsdata[18]-$30)*10+ (gpsdata[19]-$30) serv5 = (gpsdata[20]-$30)*1000+ (gpsdata[21]-$30)*100+ (gpsdata[22]-$30)*10+ (gpsdata[23]-$30) serv6 = (gpsdata[24]-$30)*1000+ (gpsdata[25]-$30)*100+ (gpsdata[26]-$30)*10+ (gpsdata[27]-$30) serv7 = (gpsdata[28]-$30)*1000+ (gpsdata[29]-$30)*100+ (gpsdata[30]-$30)*10+ (gpsdata[31]-$30) serv8 = (gpsdata[32]-$30)*1000+ (gpsdata[33]-$30)*100+ (gpsdata[34]-$30)*10+ (gpsdata[35]-$30) serv9 = (gpsdata[36]-$30)*1000+ (gpsdata[37]-$30)*100+ (gpsdata[38]-$30)*10+ (gpsdata[39]-$30)
portc = 0 pulsout portc.1, serv0 portc = 0 pulsout portc.0, serv1 portc = 0 portb = 0 pulsout portb.0, serv2 portb = 0 pulsout portb.1, serv3 portb = 0 pulsout portb.2, serv4 portb = 0 pulsout portb.3, serv5 portb = 0 pulsout portb.4, serv6 portb = 0 pulsout portb.5, serv7 portb = 0 pulsout portb.6, serv8 portb = 0 pulsout portb.7, serv9 portb = 0 goto main
|
|
|
|
ADMIN |
Дата: Чт, 17.11.2011, 10:39 | Сообщение # 2 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Используй Proton+. Там есть оператор Val, который преобразует строку в число
|
|
|
|
retas |
Дата: Пт, 18.11.2011, 21:17 | Сообщение # 3 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
ADMIN! Раз уж упомянули Proton+, хотел спросить, каторый конкретно и откуда на сегодня следует устанавливать - из за вируса пришлось всё снести и сижу пока что без Протона а устанавливать бывший неохота. Спасибо.
|
|
|
|
ADMIN |
Дата: Сб, 19.11.2011, 04:46 | Сообщение # 4 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Ну в архиве есть последняя версия - 3.5.2.7. Можете смело качать. Вирусов там нет. Скачал себе и установил. Все в порядке.
|
|
|
|
retas |
Дата: Сб, 19.11.2011, 18:24 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
ADMIN! Спасибо. А эта версия случаем не для Win7 (у меня XP)?
|
|
|
|
ADMIN |
Дата: Сб, 19.11.2011, 19:37 | Сообщение # 6 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Да, это для семерки. Но я почему-то думаю, что она и для XP пойдет
|
|
|
|
retas |
Дата: Сб, 19.11.2011, 22:04 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
Да, встала вроде нормально, но компилить не позволяет - выдаёт постоянно ERROR: Missing security key !!!
|
|
|
|
ADMIN |
Дата: Вс, 20.11.2011, 04:13 | Сообщение # 8 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Это уже вылеченная выдает? Таблетка то точно и для XP и для семерки подходит.
|
|
|
|
retas |
Дата: Вс, 20.11.2011, 15:25 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
ADMIN ! Ну, лекарь из меня, наверное, так себе а указаний по установке никаких не приложено. Распаковал всё в одну директорию, получил три файла: 1. Proton Compiler Setup 3.5.2.7 - Win7(32-bit).exe 2. Proton IDE.exe 3. PrPlus.exe Инсталировал первый, запускаю вторым. Мож ещё чего нужно? Спасибо.
|
|
|
|
ADMIN |
Дата: Вс, 20.11.2011, 15:57 | Сообщение # 10 |
Администратор
Группа:
Администраторы
Ранг:
Специалист
Сообщений:
1086
Замечания:
±
На сайте с 20.08.2007
Статус:
Offline
|
Да эти ссылки выложил HardMaster. В предыдущих версиях в архиве я указывал, что делать. Нужно установить Proton Compiler Setup 3.5.2.7 - Win7(32-bit).exe Потом перейти в папку установки и скопировать туда Файл ProtonIde.exe, заменив оригинальный. И также в папке установки есть папка PDS, в которую нужно скопировать файл PrPlus.exe в эту папку, также заменив оригинальный.
|
|
|
|
retas |
Дата: Вс, 20.11.2011, 16:48 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Помогаю всем
Сообщений:
445
Замечания:
±
На сайте с 10.09.2007
Статус:
Offline
|
Спасибо,ADMIN, получилось. Ну и себя по голове погладил - всёж понял как надо!
|
|
|
|