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

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



Bascomavr 2.0.0.0!

Сообщений 121 страница 150 из 169

121

лицензионный или с кряком?

0

122

Там в конце моего кода сохранялось  12_tmp = число_12. Но это мелочи.
В общем разобрался. Всё дело в нашей бедности(((
На демке всё норм. На крекнутой приключения. :rofl:  Знаю как это обойти другим куском кода, но оно в другом месте боком вылезет рано или поздно и как правило там где ты об этом даже не подозреваешь.
Слез с ассемблера на баском так как глаза сильно устают и тяжело с простынями кода в ассемблере сидеть. На баскоме это всё на много компактнее и проще получается.
Может и купил бы лицензию но пока нет возможности оплатить. Брали бы вебмани даже не думал бы. А с банком большие проблемы у меня.

Если кто в курсе там достаточно оплатить по пэйпал и они по электронке что то присылают? Порылся по инету и не совсем понял механизм покупки лицензии.

0

123

Mrshilov написал(а):

Не обнуляется.  Тест в протеусе.        [

Обнуляется и у вас. У вас отображается потому что в конце суб по новой запоминается 12_tmp = число_12
Там же в коде есть стирание первых двух разрядов. А на вашем скрине они отображаются. А не должны. Потому что там есть вот это
  Locate 1 , 4 : Lcd "  "             
То есть пока старший разряд не изменится он на дисплее не окажется. Это я специально так сделал чтоб не глазеть в протеусе в obj файл.

http://s019.radikal.ru/i633/1603/5c/27c8b7bd9457t.jpg

Какая версия компилятора у Вас? Лицензия? А то я может зря покупать разогнался))
Я уже наступал на грабли со строками в баском.

0

124

Поменять порядок переменных можно. Можно порядок действий изменить.
Странный глюк.
Сейчас переделаю чтоб по одной цифре выводилось. Только та что изменяется. Это нужно для максимального обновления на TFT. Чтоб не выводить то что не изменяется.

A = Число / 10
'раскладываем число на составляющие
N1 = A / 1000000                                            'подготовка десяток = 1 разряд
N2 = A Mod 1000000                                          'подготовка единиц =  2 разряд
N2 = N2 / 100000
N3 = A Mod 100000                                           'подготовка сотен = 3 разряд
N3 = N3 / 10000
N4 = A Mod 10000                                            'подготовка десяток = 4 разряд
N4 = N4 / 1000
N5 = A Mod 1000                                             'подготовка единиц = 5 разряд
N5 = N5 / 100
N6 = A Mod 100                                              'подготовка сотен Гц = 6 разряд
N6 = N6 / 10
N7 = A Mod 10                                               'подготовка десятков = 7 разряд

и т.д. чтоб сравнивая выводить только то что изменилось.

В любом случае спасибо за то что откликнулись. А то посещала мысль что я в трёх соснах заблудился. Откатился на 2.0.7.5 и всё нормально.

PS: пожалуй всё таки куплю лицензию на этот замечательный компилятор. Потому что код довольно компактный против адруины, и сам код простой как двери(с).

0

125

Mrshilov написал(а):

В 2080 - нет

На сайте последняя 2079. Это из рассылки от Марка?

0

126

Наверное я не в избранных:
SLA Service access: No

0

127

2.0.7.8
Какая -то беда случилась. Не могу поставить курсор в середине слова . К примеру &B00000001 - не могу изменить какой ли бо бит. При попытке поставить курсор - выделяется всё слово. Как буд-то нажата insert ! Как исправить? При этом в другом редакторе, к примеру блокнот, всё нормально.

0

128

Появилась версия 2.0.8.0.

Свернутый текст

2080
#################################################################################
- ####    IMPORTANT 2080                                                     ####
  ####    In order to use ASM you must start the line with the character !   ####
  ####    Optional you can create a block of ASM using $ASM end $END ASM     ####
#################################################################################
- some new atmel PDF files can not be loaded with the PDF viewer. Viewer is rewritten. it requires the new BASPDF.DLL
- getadc() on m2560 or any other processor with 6 mux bits, does not set mux5 bit for getadc(32) and up. As a work around,use a variable for the channel.
- generic byte compare() function added, based on code and idea from MWS. (Magic White Smoke)
- varexist() did not support ALIAS.
- XMega64A1-SRAM 4-Port-Sample.bas sample added which setup EBI 4 port on XMega.
- when bascom-avr.xml options file exists in the bascom application folder, that option file will be used.
- format is extended to use a variable for the mask.
- config xpin did not support alias for the pin.
- bufspace() did not support uart 5-8
- INSERTCHAR and DELCHAR use Z pointer which must be cleared for XMEGA. fixed in mcs.lib
- programmer did not fetch correct chip from editor when code was not saved. this would give a chip mismatch.
- assigning a negative value to a dword did not throw an error.
- code explorer can show estimated stack usage. see help.
- higher standard baud rates added to terminal emulator
- added support for EDMA in xm8/16/32 E5. See config EDMA
- version() function did not append to string but would overwrite existing string data.
- right() adds an additional null byte when a numeric constant is used for the number of characters to copy. modify mcs.lib and add a RET above _CopyStringExit label.
- new dim option to specify multiple items : dim a,b,c,d as byte failed when using multiple indexed items.
- all dat files updated with CONFIG information.
- printing values from multi index variables failed : print index(index1,index2)
- m1284pdef.dat updated with missing TIFR3 register.
- more fonts in various sizes from Adam Siwek.
- tiny461 and tiny861 only set pcie0 when you enable the PCINT because there is just one interrupt in the chip. See the notes for the chip in the help.
- added m48PB, m88PB and M168PB dat files.
- new Rainbow functions : RB_Color and RB_Copy added by Galahat
- simulator did not show max values of DWORD correct.
- RB_GETCOLOR and RB_LOOKUPCOLOR functions will/can return false result when index is a variable.
- font problems solved : selection of a single character with some fonts.
- simulator can crash for xmega
- when using non-mono font like Arial, text selection does not work properly. Use a font like CONSOLAS.
- power() function for doubles did not work correct when assigned to a function
- SSD1306 i2c oled driver updated for Xmega.
- m649A and m649P dat files added.
- LCDFONT prm, added. prm selects the font table (0-3) of a text LCD.
- CONFIG POWER_REDUCTION set register to 0 in some conditions. Also added LCD and other new Xmega power reduction options.
- CONFIG OSC extended with calibration register settings and DFLL.
- val() for doubles has a bug for XMega >64KB chips
- added flip(byte) function to mirror bits in a byte
- str() for doubles had a bug for xmega >64 KB chips. well not a bug, but it was not supported.
- xmega128B3 dat file added
- readsig also works for normal AVR processors.
- inputbin and printbin load 1 element too many with arrays using base 0.
- config inputbin added to allow reading packets of up to 64 KB
- M324PB dat file added.
- FT810 support added
- I2CINIT enhanced for multiple TWI interfaces like 328PB.
- I2C_TWI-MULTI.lib added to support multiple HW TWI
- second SPI on me328PB added : INIT1SPI, SPI1OUT, SPI1MOVE, SPI1IN
- user donated library I2C DOGS104 driver, SSD1803A included.
- URL2IP(url) function added to W5100 to do DNS lookup using google DNS server
- when defining a const Updateeprom , the eeprom will be updated. which means that the value will only be written when it differs
- config timer1 for tiny 25/45/85 set the wrong register bits. configure this manual.
- the watchdog is disabled as part of the init procedure. it is now disabled BEFORE the optional call to init_micro and not after as in 2079.
- passing string constants with embedded {034} resulted in an extra space.
- accessing passed string array in sub without length info, but with constant index failed.

0

129

как-то странно такое переводить " str() for doubles had a bug for xmega >64 KB chips. well not a bug, but it was not supported", непонятно, оно теперь так и не поддерживается или ил "ок"? а то много подобных оговорок

0

130

Зашел в личный раздел на сайте Баскома, нет там никакой 2.0.8.0 версии, откуда такие данные?
Есть только 2.0.7.9:

изменения

- big font collection, contributed by Adam Siwek.
- report can be opened in IDE as text file.
- mySmartUSB light programmer support added.
- W5500 socketconnect has a 4-th parameter : nowait. When you make it 1, there is no wait for connection.
- $ROMSTART added : $romstart = &H8000 , will let the code start at &H8000. Default is 0.
- jtag ice mkII programmer new firmware 7.26 from studio resulted in signoff problem. Workaround implemented.
- editor can show unused code in conditional compilation. Edit, Show Excluded Code menu option.
- usbasp programmer updated. chosen clock frequency will work.
- makemodbus() did not support locals/passed parameters properly.
- crc16 supports eeprom memory too. you need to add const CRC16_EEPROM=1 to your code.
- simulator fix for xmega low IO registers. registers were simulated with a 32 byte offset as in plain AVR.
- config lcd has 2 new options : BEFORE and AFTER. with param value of 1 a sub will be called _lcdBefore and _lcdAfter
  just before the LCD is used. This allows for example to turn off interrupts when executing LCD code.
  Only text LCD is supported.
- getadc() when used on normal AVR with offset parameter, and both parameters numeric will give an error when MUX5 bit must be set.
  Use getadc() with just the channel parameter.
- multi dim arrays, added ERAM byte support, and used registers are saved now.
- saving programming buffer as HEX file created wrong HEX files which would not load in Studio.
  This would occur for chips with multiple segments like xmega128   
- Full Kamprog support added. Like changing fuse bytes from within bascom.   
- multi dim arrays had no check on invalid index value (non dimmed)   
- using a constant float without leading 0 resulted in an error : var= var + .12344   
- INPUT did not support DWORD. As a work around, use a LONG overlay.   
- added user definable command buttons to terminal emulator.   
- support added for W5500 tcp/ip chip   
- using {} in constants was not working as expected : Const Cmd_suffix_ver1 = Asc( "{013}") was not interpreted as 13 but 123 (the { sign)   
- changed PDF download from HTTP to FTP. This is quicker and better for the server. PORT 211 is used for FTP.
- atxmega128c3 added.   
- FT800, vertex2ii , the X is clipped. Change call in sub vertex2II into Cmd32 _vertex2ii(___wtmpb , R18 , R17 , R16)   
- support for EADOGXL240-7 I2C added, see eadogxl240-7.bas. This is a customer sponsored lib.   
- added support for SSD1306 I2C OLED, see SSD1306-I2C.BAS.   
- i2c multi bus lib does not clear ERR bit correctly.   
- when a multi dim array is only used within sub/functions and submode=new is used, you get an error since the
  index table is not written. work around : access the array in the main code. for example with a dummy read.   
- multi dim arrays can only be used to read/assign variables. Using them in functions and statements will not work.   
- str() can have an optional parameter to specify the amount of digits. This works for double, but now also for singles.   
- MOD for singles changed in fp_trig.lib so it uses the same algorithm as excel/VBA.   
- FOR..NEXT with words and STEP with values other than 1 will not work properly : for w=1 to 10 step 2
  As a work around use an integer or overlayed integer.The reason is that in 2078 the add code is optimized. Instead of add/adc and loading registers with immediate values it will use subi/sbci but this will set different flags.   
- when opening a single file in non-project mode, the code explorer does not get updated until you set the cursor on the code.
  This also leaves the pinout viewer empty. workaround : open another file or set the cursor/focus to the edit window.   
- R0-R31 internal variables are now exposed as byte variables. This is simple than using getreg/setreg.   
- added option to skip eeprom cell test. This allows to write all FF to the EEPROM whithout erasing the chip.   
- terminal emulator font color could not be selected from the font dialog.   
- added chip name to info panel when chip does not match. no match will give a red font, a match will show font in green.   
- added an error message when $hwstack,$swstack and $framesize are missing from the source.
- hovering the indention line will show the begin of the structure in the tool tip (just try it).   
- stacktrace speed up. big projects made the stacktrace slow.   
- improved speed for showing deadcode/unused variables   
- rotate left|right did not work for xmega port registers.   
- shift left/right did not work for xmega port registers   
- FT801 support added. New FT801 samples. INC files renamed into FT80x.   
- Rainbow/WS2812 support added. See CONFIG RAINBOW. This is the rainbow lib from Galahat, see : http://bascom-forum.de/mediawiki/index.php/Rainbow_Lib

0

131

О! Какая-то информация. :)
http://www.mcselec.com/index2.php?optio … mp;t=13714

0

132

RDW написал(а):

Зашел в личный раздел на сайте Баскома, нет там никакой 2.0.8.0 версии

Пробовали скачать инсталлятор и запустить его?

0

133

Нет.
Обычно все обновления шли через апдейтер, он делает бэкап и ставит новую версию.

0

134

Баском обновился. Изначально была версия IDE 004. Сейчас 006.

+1

135

Пётр, а внешне что-то изменилось?

0

136

Из того что заметил, в стартовом окне указан 2017 год, а не 2016. Думаю есть и другие изменения. Просто они либо внешне незаметны, либо еще не увидел.

0

137

Официальный форум похоже скоро станет закрытым https://www.mcselec.com/index2.php?opti … mp;t=13926

0

138

Логично, пираты достали, задают больше вопросов чем "правые" пользователи.

0

139

ну да, логично
Хотя при определенном опыте разработчика ему форум не надо... А новичок и с форумом не осилит: форум-то - на инглише, а не для всех он - родной...

0

140

Следующий шаг - объявят наш форум пиратским  :D

0

141

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

0

142

Переходим на другой компилятор? :crazyfun:
Пробовал писать на Луне. Очень даже приличная вещь. Правда всё некогда поглубже в нём покопаться.

Отредактировано sva-don (2017-07-24 14:23:37)

0

143

sva-don написал(а):

Пробовал писать на Луне.

С ней не все чисто LunaAVR
ИМХО можно не только компиль сменить но и архитектуру (я про STM32). :)
STM32 не такой сложный как может показаться. В итоге получим не только 32-ух битное производительное ядро, но и  периферию с функциями превосходящими AVR, плюс аппаратная отладка во всех моделях МК, даже самых дешевых (модуль отладки встроен в ядро ARM).

0

144

для Меня Баском - как мягкий переход с Паскалей (турбо и прочее для ПК)
А STM32 пугает не самим МК, а прочими "радостями": нет удобных средств разработки и отладки, я не могу терпеть Си. Каждая встреча с ним длинее 30 минут в сутки - дикая головная боль на весь день. День теряется... Вот с утра повоевал с библиотеками Абдурины (коие на Си писаны), мысленный грязный мат, порча карты и кидание говен на афторов этого "чудо-продукта". Башка разваливается на части... :(

0

145

Александр Д. написал(а):

нет удобных средств разработки и отладки

EmBitz + ST-Link на мой взгляд довольно удобная связка для разработки и отладки. Но это мое субъективное мнение.

Александр Д. написал(а):

я не могу терпеть Си

Вот это уже весомый аргумент. Мне тоже не очень нравится Си, но вполне нормально на нем пишу. Тот дискомфорт что был поначалу давно прошел. Есть mikroBasic, но его библиотеки ни на что не годятся. Если писать исключительно на регистрах, то вполне пойдет, т. к. компиль сам по себе неплох.

Александр Д. написал(а):

Вот с утра повоевал с библиотеками Абдурины (коие на Си писаны)

Они на C++ написаны. Си намного проще и понятнее.
Качество кода многих ардуиновых библиотек отставляет желать лучшего...

0

146

офтоп
я mikroBasic скачиваю раз в год и смотрю. Скатываются парни, пока реального роста Качества не вижу.
ДА, хватаются за все типы ядер, за всё сразу...
оболочка напоминает какого-то монстра времён Дельфи: всё в кнопочках, менюшках...
А еще бесят "создать проект" и указать какие библиотеки тебе надо. Ну не писец-ли это, товарищи! может мы еще будем делать obj и ручками линковать "переместимый" код??
(этим же бесил и классический Паскаль: помнить название библиотек и подключать их)

0

147

Петр, пока не будет простого и понятного языка для АРМ (аля баском) - он нафиг не нужен.
Кстати я сейчас сталкиваюсь вообще с маркетинговыми понятиями/подменами, например слово BASIC всё чаще употребляют не в направление Бэйсика (языка), а а как реклама "легко" и народ покупается. Внутри же ничего от бэйсика. :D Подобная хрянь есть для ведроида.

На счет Луны, проект тоже давний, не знаю как сейчас, но не все типы МК поддерживались, на сайте информации никакой нет. Чтобы понять это, ставить продукт нет желания.

0

148

RDW написал(а):

ставить продукт нет желания.

А его и не нужно ставить. Скачал и работай.  Просто запускай исполняемый файл.
Мне кажется, что проекты типа BASCOM рано или поздно развалятся и встанет вопрос о переходе на другой язык, а тут выбор весьма небольшой С и только С.
Так что надо постепенно привыкать. :huh:
P.S.
Я С тоже не люблю, хотя приходилось использовать. Не такой уж он и страшный.  :blush:

0

149

а как вам такое?
http://tibbo.com/ru/programmable/controllers.html
http://tibbo.com/ru/programmable/modules.html
http://tibbo.com/ru/tps.html

0

150

RDW написал(а):

пока не будет простого и понятного языка для АРМ (аля баском)

Ждать можно долго и не факт что такой язык появится. Марк примерно в 2010 году писал что версия для ARM в разработке, но прошло много времени, но ее нет. Возможно по какой-то причине разработка была прекращена.
Прогресс не стоит на месте и реальность такова что ARM (подразумеваю STM32) дешевле и мощнее чем тиньки и меги. Зачем отказыватся от больших возможностей за меньшую цену?

0