|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 7:08 pm
|
Страница 1 от 1
|
[ 10 мнения ] |
|
GNUARM (gcc) функции - reference
| Автор |
Съобщение |
|
the_real_maniac
Ранг: Почетен член
Регистриран на: Пет Авг 19, 2005 11:38 am Мнения: 978 Местоположение: Europe -> BG
|
 GNUARM (gcc) функции - reference
Значи знам ANSI C , програмирам за х86 на С и ясно какви са функциите и какво правят и прочие.
ОБАЧЕ говорим за gnuarm -> i.e. gccarm
като се ползва newlib заместваща стандартната gnu libc - ок.
Обаче НЕ виждам никъде специфичните embed функции.
Примерно:
- установи в единица GPIO еди-кой-си
- изпрати по USART
- кои са стандарните потоци -> примерно потока за USART-a , поне предполагам че е направено да е като някакъв файл -> поток. ???
и т.н. , и т.н. ???
Прегледах не веднъж newlib - reference , но нъц - нищичко.
Само основни неща като fclose -> затваря отворен вече поток или файл сочен от ... бла-бла.
Демек това са си ясни неща, въпроса е къде са описаните специфични функции , в крайна сметка ще взема да почна хедърите едни по един, но това е страшно глупаво при положение ,че трябва и 100% има някъде ръководство, списък с кратко обяснение и основен вид на функцията.
прочие ...
Направо ще се разплача , всичко ми е готово само, че не мога да програмирам без да знам с какви фунцкии (все едно инструкции) разполагам 
|
| Съб Мар 04, 2006 7:50 pm |
|
 |
|
Bezmozachen
Ранг: Популярен
Регистриран на: Сря Апр 27, 2005 2:47 pm Мнения: 349 Местоположение: Varna
|
Не се занимавам с армове, но си мисля че такива функции няма да намериш. Или поне не там където търсиш. Хардуера по микроконтролерите с арм ядро е различен, при различните производители, та си мисля че едва ли има готови такива функции. Може самите производители да са си направели собствени, но едва ли ще се разпространяват с GNU-ARM.
|
| Съб Мар 04, 2006 10:13 pm |
|
 |
|
BrainStorm
Ранг: Почетен член
Регистриран на: Пон Юли 04, 2005 11:51 pm Мнения: 651 Местоположение: София
|
Тук ще намериш доста инфо : http://www.dreamislife.com/arm/
иначе клатенето на портовете или определен регистър става по стандартния начин ... име на порта/регистъра = стоиност
като под име се подразбира име на порт/регистър асоциирано с даден адрес.
_________________ От наше село са види връо, ама от връо се невиди наше село ... що така и я незнам .. ?!?
|
| Съб Мар 04, 2006 10:53 pm |
|
 |
|
the_real_maniac
Ранг: Почетен член
Регистриран на: Пет Авг 19, 2005 11:38 am Мнения: 978 Местоположение: Europe -> BG
|
Значи на gnuarm.com има хедърни файлове за не малко ARM MCU-тата , но за AT91SAM7S64/128/256 няма
А гледам по форуми, майлинг листи И лични сайтове ползват на KEIL хедъра и говорят за gcc
http://gandalf.arubi.uni-kl.de/avr_proj ... _at91.html -> просто вижте в примерите какъв хедър се ползва:
http://www.keil.com/dd/docs/arm/atmel/s ... 1sam7s64.h , но с година и нещо по-стара версия
Въобще си няма и идея как така е станала тази "съвместимост".
---
м/увпрочем този сайт , които си го дал BrainStorm го бях разглеждал, очудващо е че не съм намерил това, което съм търсил в такъв случей. Сега ще го разгледам пак.
Благодаря за отделеноето време
едит: междувпрочем на gnuarm няма дори хедър и за lpc21xx , тогава ми е очудващо човека от сайта , който даде какъв хедър или от къде той си получава набора от функции и/или специални потоци и/или файлове
в неговият изходен код няма дори едно include , само нали прикомпилирането е указан един файл с asm , ако не се лъжа Код преди неговият неговият код.
И пак ... абе нещо много мътно ми стана ... нещо не е в ред, аз ли грешно разсъждавам и не тръся каквото трябва или 
|
| Съб Мар 04, 2006 11:05 pm |
|
 |
|
Balkana
Ранг: Популярен
Регистриран на: Чет Дек 01, 2005 10:42 pm Мнения: 301
|
Tуй дето го търсиш, както каза някой по-нагоре, може да дойде само от производителя - има го на STMicro за серията STR71x. За Atmel не съм срещал още. А за хедър - някой от комерсиалните компилатори, вземаш си наготово. В примерите на http://www.at91.com не може да няма също 
|
| Нед Мар 05, 2006 12:35 am |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
Хем боли, хем сърби а?
Искаше ANSI С, получи го  )))))))
Библиотеките за които питаш са извън стандарта и не са предмет на разговор.
От тук на там имаш два варианта - написваш си ги сам (което аз правя, макар че не ползвам gcc), или ровиш да намериш готови които някакси да пригодиш към gcc (което понякога е добър вариант - да не откриеш пак топлата вода). Решение е може би да вземеш някой "комерсиален" продукт който ги има (но да има и сорса), и да си ги "пригодиш". Аз обикновенно установявам че ми е по лесно сам да пиша. И без това в 90% от случаите на използване на UART нещата са вън от всякакви стандартни рамки.
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пон Мар 06, 2006 12:23 pm |
|
 |
|
the_real_maniac
Ранг: Почетен член
Регистриран на: Пет Авг 19, 2005 11:38 am Мнения: 978 Местоположение: Europe -> BG
|
Абе аз до това заключение стигнах, но за да си напиша собствени функции за всичко ще ми се наложи да ползвам ASM-то за ARM7 , та се чудя дали да не се ориентирам към чисто и само asm , въпреки че направо бях получил ... екстаз преди време като разбрах , че има gccarm
Иначе ясно , че са извън стандарта библиотектие /хедърите за различните арм-ове, просто обаче примерно за LPC-тата има доста материали и обяснения за хедърите за gcc , докато за AT91 нъц , нищичко.
Само едни хедъри и се оправяй , което според мен е кофти , защото е по-лесно да почнеш да си ги прваиш сам , вместо да разчиташ нечии друг код.
Да не говорим, че просто този хедър, които намерих единствено за AT91SAM7S64 не ме радва особено , много пренатруфен ми изглежда , не мога да си съсредоточа погледа в/у кода.
Та в момента обмислям какво ще правя, НО ОПРЕДЛЕНО IAR не ме радва , ама хич.
Наречете го първо впечатление  може и да е грешно 
|
| Пон Мар 06, 2006 1:37 pm |
|
 |
|
Цецо
Ранг: Форумен бог
Регистриран на: Пон Сеп 27, 2004 9:22 am Мнения: 15501 Местоположение: София
|
Не разбирам защото ти е асемблер в случая. Пин се клати с проста операция за присвояване на С.
Много малко са нещата в днешно време които се налага да се пишат на асемблер. Обикновенно това са бързи входно изходни процеси (където се целят 100 -тици наносекунди). Другото са разни заобиколки и донастройки на компилатора. Но това не ти е проблем засега. Та на АРМ да пишеш на асемблер, поне в твоя случай невиждам защо.
_________________ "Да еба и шибаната държава" мислеше си Гошо, докато се опитваше да улучи кофата за боклук от балкона на осмия етаж.
|
| Пон Мар 06, 2006 2:10 pm |
|
 |
|
ДедоБоре
Ранг: Форумен бог
Регистриран на: Нед Ное 21, 2004 11:31 pm Мнения: 10088
|
и аз не виждам защо.
в общия случай трябва да си напишеш на асемблер 2-3 функции от рънтайма, ама то трява да ги имаш готови
не ти харесва документацията?
на мен това стуктуриране определено ми харесва
http://www.at91.com/AT91_Microcontroller/AT91SAM7S64-BasicTools-IAR4_11A-1_0/include/AT91SAM7S64.html
този хедър също е много добър:
http://www.at91.com/AT91_Microcontroller/AT91SAM7S64-BasicTools-IAR4_11A-1_0/include/HTML/AT91SAM7S64_h.html
процесора е сложен и нама как да стане по-малък хедъра.
ако не ти харсва - ми твоя си работа. въпрос на вкус е явно. а вкуса се придобива с времето... или веднага 
|
| Пон Мар 06, 2006 2:42 pm |
|
 |
|
the_real_maniac
Ранг: Почетен член
Регистриран на: Пет Авг 19, 2005 11:38 am Мнения: 978 Местоположение: Europe -> BG
|
Еми това е мисля , то това май е и хедъра , които ползва и KEIL
C-то се транслира до asm
А относно простото присвояване и асм-то - да така е и все пак 
|
| Вто Мар 07, 2006 8:41 pm |
|
|
|
Страница 1 от 1
|
[ 10 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|