Не знаю. Можно ли глянуть на него? Если загрузчик запускается то совершенно точно дело в неправильно написанной программе.Shaos wrote:Я использовал GCC под Linux. Программа надёрганная в интернете по частям вроде собиралась, прошивалась, но не работала...
LPC2138 (PHILIPS)
Moderator: Shaos
-
- Senior
- Posts: 180
- Joined: 28 Feb 2006 21:34
-
- Admin
- Posts: 24008
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
В том то и дело что правильно написанные программы например для KEIL никак не собираются в GCC - теже примеры с сайта Olimex не на GCC рассчитаны. А для GCC еще где-то надо брать H-файлы для конкретного чипа и писать LD файл для ROM и для RAM вариантов. Вобщем муть...d_wanderer wrote:Не знаю. Можно ли глянуть на него? Если загрузчик запускается то совершенно точно дело в неправильно написанной программе.Shaos wrote:Я использовал GCC под Linux. Программа надёрганная в интернете по частям вроде собиралась, прошивалась, но не работала...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Senior
- Posts: 180
- Joined: 28 Feb 2006 21:34
В принципе так оно и есть. Хотя Keil в этом отношении значительно удобнее (чем тот же IAR). ВО первых среда uVision позволяет корректно сформировать crt0.S. Во вторых поддерживается два компилятора - собственный и GCC. Наконец, в третьих, можно под симулятором запусить и проверить - будет ли работать. Я так понял чтоя Keil'а нет.Shaos wrote:В том то и дело что правильно написанные программы например для KEIL никак не собираются в GCC - теже примеры с сайта Olimex не на GCC рассчитаны. А для GCC еще где-то надо брать H-файлы для конкретного чипа и писать LD файл для ROM и для RAM вариантов. Вобщем муть...

дистрибутив WINARM. В нем есть пример с требуемыми ld и h файлами. Я проверил под симулятором работу.
А можно просто скачать примеры http://gandalf.arubi.uni-kl.de/avr_proj ... c_uart_irq
-
- Admin
- Posts: 24008
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Моим набором GCC для ARM вроде компилируется, но при линковке требует либу newlib-lpc, которой у меня нет (у меня просто newlib).d_wanderer wrote:В принципе так оно и есть. Хотя Keil в этом отношении значительно удобнее (чем тот же IAR). ВО первых среда uVision позволяет корректно сформировать crt0.S. Во вторых поддерживается два компилятора - собственный и GCC. Наконец, в третьих, можно под симулятором запусить и проверить - будет ли работать. Я так понял чтоя Keil'а нет.Shaos wrote:В том то и дело что правильно написанные программы например для KEIL никак не собираются в GCC - теже примеры с сайта Olimex не на GCC рассчитаны. А для GCC еще где-то надо брать H-файлы для конкретного чипа и писать LD файл для ROM и для RAM вариантов. Вобщем муть...Нестрашно. В дистрибутиве WinArm есть работоспособный пример под 2138. Попробуйте залезть на http://gandalf.arubi.uni-kl.de/avr_proj ... _projects/ и скачать
дистрибутив WINARM. В нем есть пример с требуемыми ld и h файлами. Я проверил под симулятором работу.
А можно просто скачать примеры http://gandalf.arubi.uni-kl.de/avr_proj ... c_uart_irq
P.S. Убрал упоминание newlib из Makefile и собралось
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
-
- Admin
- Posts: 24008
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
newlib-lpc это порт newlib на LPCSfS wrote:Попробуй эту newlib найти по фтп любым поисковиком. Вроде ссылок много выдает. Это как я понял - порт libc под ARM ? Или я ошибаюсь ?Shaos wrote: Моим набором GCC для ARM вроде компилируется, но при линковке требует либу newlib-lpc, которой у меня нет (у меня просто newlib).

P.S. Кстати наличие отдельной либы для LPC версии ARM несколько ломает устоявшееся мнение о том, что юзая ARM мы не зависим от конкретного производителя, т.к. де ARM-ы делают многие - получается что это несколько неправда...
Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Senior
- Posts: 180
- Joined: 28 Feb 2006 21:34
Нет. Все не совсем так. ))) Точнее все не так. Насамом деле newlib это всего лишь специфическая заглушка которая позволяет использовать в качестве стандартных потоковых устройств в C такие устройства как uart, spi, i2c и т.п.Shaos wrote: newlib-lpc это порт newlib на LPC
P.S. Кстати наличие отдельной либы для LPC версии ARM несколько ломает устоявшееся мнение о том, что юзая ARM мы не зависим от конкретного производителя, т.к. де ARM-ы делают многие - получается что это несколько неправда...
Ну как, заработало?
-
- Doomed
- Posts: 491
- Joined: 16 Apr 2005 22:35
- Location: Томск
Тут наверное портирование заключается в оптимизации под конкретную перефирию ?Shaos wrote:Кстати наличие отдельной либы для LPC версии ARM несколько ломает устоявшееся мнение о том, что юзая ARM мы не зависим от конкретного производителя, т.к. де ARM-ы делают многие - получается что это несколько неправда...
-
- Admin
- Posts: 24008
- Joined: 08 Jan 2003 23:22
- Location: Silicon Valley
Я пока не пробовал. Меня смутило, что оно успешно собралось после того как я отключил в Makefile опцию -lnewlib-lpc - зачем оно тогда? Или оно собралось, но не будет работать поэтому?d_wanderer wrote:Нет. Все не совсем так. ))) Точнее все не так. Насамом деле newlib это всего лишь специфическая заглушка которая позволяет использовать в качестве стандартных потоковых устройств в C такие устройства как uart, spi, i2c и т.п.Shaos wrote: newlib-lpc это порт newlib на LPC
P.S. Кстати наличие отдельной либы для LPC версии ARM несколько ломает устоявшееся мнение о том, что юзая ARM мы не зависим от конкретного производителя, т.к. де ARM-ы делают многие - получается что это несколько неправда...
Ну как, заработало?
P.S. Я скачал исходники newlib-lpc но с ходу не въехал как из них собрать либу libnewlib-lpc

Я тут за главного - если что шлите мыло на me собака shaos точка net
-
- Senior
- Posts: 180
- Joined: 28 Feb 2006 21:34
А оно тебе надо? Использовать newlib? Все работает и без этой заглушки. Кстати и пример для использования newlib должен быть написан по другому. Так что не сомневайся!!!!Shaos wrote:Я пока не пробовал. Меня смутило, что оно успешно собралось после того как я отключил в Makefile опцию -lnewlib-lpc - зачем оно тогда? Или оно собралось, но не будет работать поэтому?
P.S. Я скачал исходники newlib-lpc но с ходу не въехал как из них собрать либу libnewlib-lpc
