nedoPC.org

Electronics hobbyists community established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Mar 2024 05:29



Reply to topic  [ 14 posts ] 
MPLAB X 
Author Message
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Установил в свой линух новую мультиплатформенную среду разработки от Microchip - всё работает :)
Поставил также компиляторы Си от них для обычных пиков, dsPIC24 и PIC32
Кстати среда разработки обнаружила, что у меня в системе установлен SDCC и также включила его в список возможных компиляторов ;)

_________________
:dj: https://mastodon.social/@Shaos


Last edited by Shaos on 15 Nov 2011 19:26, edited 1 time in total.



12 Nov 2011 21:55
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Недавно приобрёл подключаемый программатор-дебуггер PICKit3, который замечательно состыковался с этой линуксовой средой разработки. Поработал с nedoCPU-16 и оказалось, что PICC (бывший HI-TECH C) кладёт код в конец программной памяти, имея в начале памяти только одну единственную команду перехода на начало скомпилированного кода, который сидит в конце - получается, что я могу таким образом написать бутлоадер на сях!

_________________
:dj: https://mastodon.social/@Shaos


13 Nov 2011 21:08
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Shaos wrote:
Недавно приобрёл подключаемый программатор-дебуггер PICKit3, который замечательно состыковался с этой линуксовой средой разработки. Поработал с nedoCPU-16 и оказалось, что PICC (бывший HI-TECH C) кладёт код в конец программной памяти, имея в начале памяти только одну единственную команду перехода на начало скомпилированного кода, который сидит в конце - получается, что я могу таким образом написать бутлоадер на сях!


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

_________________
:dj: https://mastodon.social/@Shaos


14 Nov 2011 18:36
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Shaos wrote:
Shaos wrote:
Недавно приобрёл подключаемый программатор-дебуггер PICKit3, который замечательно состыковался с этой линуксовой средой разработки. Поработал с nedoCPU-16 и оказалось, что PICC (бывший HI-TECH C) кладёт код в конец программной памяти, имея в начале памяти только одну единственную команду перехода на начало скомпилированного кода, который сидит в конце - получается, что я могу таким образом написать бутлоадер на сях!


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


... и без switch, который также городит таблицу переходов в начале памяти...

P.S. Почти закончил вот такой бутлоадер:

Quote:
// PDBLv1 - Public Domain Boot Loader version 1 (13 Nov 2011)
// Created by Alexander A. Shabarshin <ashabarshin@gmail.com>
// For PIC16F870 on frequency 20 MHz and speed 9600
// Tested in PICC 9.82.9453 lite and MPLABX IDE beta 7.12
// You are free to use this code in any possible way...

// Usage: Press Enter multiple times immediately after reset (~1sec)
// then use commands below to run (all numbers are hexadecimal):
// !AAAA=BBBB - write word BBBB to program memory in address AAAA
// !AAA=BB - write byte BB to data memory in address AAA
// !AA=BB - write byte BB to EEPROM in address AA
// ?AAAA - read one word from program memory with address AAAA
// ?AAA - read one byte from data memory with address AAA
// ?AA - read one byte from EEPROM in address AA
// . - exit from bootloader and jump to address 0x0001


PICC очень много лишнего кода городит - надо будет потом с сей на асм переписать вручную

P.P.S. Убил несколько часов пока не понял, что MPLAB X не показывает содержимое памяти программ микроконтроллера, а показывает только то, что накомпилилось последний раз - т.е. если программа сама себя модифицировала в микроконтроллере, то среда разработки об этом не узнает и соответственно эти изменения не покажет, хоть оно и подключено через PICKit3!

P.P.P.S. Прочитать таки удалось - надо сначала считать память микроконтроллера в среду разработки, а потом выбрать пункт Refresh из меню по правой кнопке над окном Program :)

_________________
:dj: https://mastodon.social/@Shaos


Last edited by Shaos on 16 Nov 2011 18:23, edited 1 time in total.



15 Nov 2011 08:21
Profile WWW
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
Post 
Вот блин незадача - бутлоадер написанный на сях, занял 75% объёма памяти программ PIC16F870...

P.S. Вот собственно этот бутлоадер на 1.4К (в исполнении PICC v9.82 lite), который удалось ужать c 75% до 67% памяти PIC16F870 (т.е. с 3/4 до 2/3 от 2K-слов) - см. http://www.nedopc.org/forum/viewtopic.php?t=10830

_________________
:dj: https://mastodon.social/@Shaos


15 Nov 2011 21:20
Profile WWW
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
rw6hrm wrote:
Надо ещё что-то подгрузить, чтобы MPLAB эту сяшную фиговину обрабатывал?


Ну, в сорцах прямо написано: " Compile with HT-PICC ". HT-PICC - это платный компилятор Hi-tech C для PIC-ов. Был. Но году в ~2010 слился с Microchip, по их же собственным словам: http://www.htsoft.com/HI-TECH%20Customer%20Letter_Final.pdf

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

Но использовать этот компилятор - не рекомендуется. Он старый, не поддерживается, платный. Стоит использовать только если нужно скомпилировать проект и забыть.

Если планируется с проектом "повозиться", то нужно переползать на компилятор XC8, есть бесплатная версия у них на сайте (с ограничением на размер HEX файла и без оптимизации по быстродействию). Это не так уж и страшно, учитывая что код на Си и там и там. Меняются только немного названия портов, регистров.

_________________
https://t.me/tronix_blog


Last edited by Tronix on 27 Mar 2018 09:18, edited 1 time in total.



27 Mar 2018 09:16
Profile
Doomed

Joined: 08 Apr 2013 04:04
Posts: 449
Location: 213.247.249.139
Reply with quote
Tronix wrote:
Microchip для PIC16 рекомендует компилятор XC8, есть бесплатная версия у них на сайте (с ограничением на размер HEX файла и без оптимизации по быстродействию).

А его вылеченный можно найти?
А под старые пики он компиляет (которые pic16 не enhanced)?

_________________
привет засранцу лавру :)


27 Mar 2018 09:17
Profile
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
angry_troll wrote:
А его вылеченный можно найти?


Да можно конечно найти. В рунете PICи любят. И торренты. Достаточно сложить одно с другим и получить результат.

Справедливости ради, Microchip дают 60-дневную триал PRO версию (без ограничений), достаточно зарегистрироваться у них на сайте и активировать evolution лицензию.

angry_troll wrote:
А под старые пики он компиляет (которые pic16 не enhanced)?


Вот уж не знаю. Старые - это которые с окошком для УФ-стирания? Но вообще, они пишут что "MPLAB XC8 supports all 8-bit PIC MCUs".

_________________
https://t.me/tronix_blog


27 Mar 2018 09:32
Profile
Doomed

Joined: 08 Apr 2013 04:04
Posts: 449
Location: 213.247.249.139
Reply with quote
Скачал, таблетка подошла к хц8 1.45. de2f4eb1b882e197e32ca202092aa33d1929adb8

_________________
привет засранцу лавру :)


27 Mar 2018 14:45
Profile
Doomed

Joined: 08 Apr 2013 04:04
Posts: 449
Location: 213.247.249.139
Reply with quote
Tronix wrote:
angry_troll wrote:
А его вылеченный можно найти?

Да можно конечно найти. В рунете PICи любят. И торренты. Достаточно сложить одно с другим и получить результат.
Справедливости ради, Microchip дают 60-дневную триал PRO версию (без ограничений), достаточно зарегистрироваться у них на сайте и активировать evolution лицензию.

Я считаю так, что копирастов надо давить всеми способами. Никаких 60дней фрии, только фулл :)



Quote:
angry_troll wrote:
А под старые пики он компиляет (которые pic16 не enhanced)?


Вот уж не знаю. Старые - это которые с окошком для УФ-стирания? Но вообще, они пишут что "MPLAB XC8 supports all 8-bit PIC MCUs".

Я имел в виду первые из флешевых, типа легендарного 16ф84, всяких там 16ф876 и подобных. В общем сейчас смотрю -- инклуды к ним есть, действительно.

_________________
привет засранцу лавру :)


27 Mar 2018 14:47
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
rw6hrm wrote:
...всегда знал, что си зло. Лишнее подтверждение...


зло не си, а "проклятые капиталисты", которые пытаются на сборках открытых компиляторов зарабатывать бабки...

P.S. за открытыми сями для пиков идём в сторону SDCC

_________________
:dj: https://mastodon.social/@Shaos


27 Mar 2018 18:18
Profile WWW
Doomed

Joined: 18 Nov 2013 02:38
Posts: 662
Location: Москва
Reply with quote
rw6hrm wrote:
перепишем как обычно, под 6502 ;)

Ага, под вотэтот L28MCU. А что? Микроконтроллер- микроконтроллер. 6502? - 6502. Жаль только у него флеша внутри нет ;)

_________________
https://t.me/tronix_blog


27 Mar 2018 21:53
Profile
Doomed

Joined: 08 Apr 2013 04:04
Posts: 449
Location: 213.247.249.139
Reply with quote
Shaos wrote:
P.S. за открытыми сями для пиков идём в сторону SDCC

Я смотрел его выхлоп для pic16... Нет, спасибо :)

_________________
привет засранцу лавру :)


28 Mar 2018 02:51
Profile
Admin
User avatar

Joined: 08 Jan 2003 23:22
Posts: 22409
Location: Silicon Valley
Reply with quote
angry_troll wrote:
Shaos wrote:
P.S. за открытыми сями для пиков идём в сторону SDCC

Я смотрел его выхлоп для pic16... Нет, спасибо :)

ну они чото выдают постоянно - последняя версия - февраль 2018
поди лучше становится со временем, нет?...

_________________
:dj: https://mastodon.social/@Shaos


28 Mar 2018 03:36
Profile WWW
Display posts from previous:  Sort by  
Reply to topic   [ 14 posts ] 

Who is online

Users browsing this forum: No registered users and 7 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.