| Автор |
Съобщение |
|
woody
Ранг: Форумен бог
Регистриран на: Вто Юли 31, 2007 2:55 pm Мнения: 1792 Местоположение: София
|
Мерси. Явно ще го пробвам, въпреки ужасния му размер и всичките "нововъведения".
Предполагам ще направи и update на Dragon firmware-а.
|
| Съб Мар 05, 2011 12:46 am |
|
 |
|
michev
Ранг: Форумен бог
Регистриран на: Сря Юли 11, 2007 10:16 am Мнения: 1730
|
мхм - прави ъпдейт на дракона.
И да добавя, че след като ъпдейтнете дракона до последната версия.. Avr Studio 4 ще ви зе разсърди
|
| Съб Мар 05, 2011 12:53 am |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
И с Jtag ICE MKII излезе че е така.
Но това не е проблем поне при него. Моя съм го ъпдейтвал поне 200 пъти. Че често IAR и Судиото изискват различни версии на фирмуера. Но досега не е сдал багажа при това мероприятие. Пък е най старата хардуерна версия 1.0.
За който ще се мъчи с това да не се притеснява даънгрейдвал съм моя успешно после го ъпгрейдвах пак и си е ОК.
Като истински проблем който намерих e че програматора в Студио 5 не видях никъде на подържа ELF формат. Тоест не може в един файл да му вкараш фусовете,програмата,лок битовете и еепрома. И за тая работа пак ще трябва да се ползва четворката.
|
| Съб Мар 05, 2011 3:17 am |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
NikB не мога да разбера какъв ти е проблема с този проект
никъде не си дефинирал F_CPU,просто го дефинирай.
А някои от следващите дефиниции от uart.c са направени и в iom128.h отвори го и ще се ориентираш как да си решиш проблема с повторното дефиниране.
|
| Съб Мар 05, 2011 3:35 am |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Ами в ver 4. е достатъчно в опциите на проекта да определя честотата на процесора. в ver.5 не е така - това е странно (впрочем, в ver.5 не запомня Clock Settings - сякаш това е проблема). Тук е същото - в ver.4. не се оплаква, но в ver.5. се оплаква.
Виждам, че в iom128.h са дефинирали битове
за /* USART (generic) */
и за /* USART1 */
и за /* USART0 */,
а в uart.c наново дефинират USART посредством USART0.
Не ми е ясна идеята, за да знам кое да сложа, примерно в условна компилация.
|
| Съб Мар 05, 2011 1:16 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Сега установих, че вер.5 дава странно предупреждение, ако за име на функция се ползва идентификатор, започващ с главна буква.
"defined but not used"
Идентификаторът си се ползва.
Ако идентификаторъ е с малка буква - няма предупреждение.
Глупост някаква.
|
| Съб Мар 12, 2011 8:40 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Проблема си е в твоя телевизор нещо
Компилирах един дребен проект оня ден с него. Никакви подобни Warring-и не ми изкара. А имам функции с главна буква. Пък и прекалено очеваден бъг на компилатора,надали не са го забелязали. Да не говорим че компилатора си е GCC който си ползват и в старата версия на студиото от години 
|
| Съб Мар 12, 2011 9:23 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
Благодаря ти, много точни доводи, но само слагам и махам едно малко "а" пред главната буква в името на функцията и преупреждението изчезва или идва.
Ще търся проблема, но, ако ти се занимава (не е приоритет, нали  ) поствам един zip с тестовия проект.
(В прикачения файл,в папка Software е проекта aaPlanL3S5S4.avrgccproj,
функцията FAT_ChangeDir в sd_main.c.
И има файл "SHOW ME 1st.jpg" с screenshot на предупреждението (появява се при Rebuild solution))
|
| Нед Мар 13, 2011 12:11 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Ей ама голям проблем ти е това C
Първо си я декларирал най отгоре като static
static struct fat_dir_struct* FAT_ChangeDir( struct fat_fs_struct* aFAT, struct fat_dir_struct *aDir, char* aCmnd);
и после си я дефинирал най отдолу
Но никъде в кода не я викаш тази функция и тъй като е декларирана като static ти дава това предупреждение че не никъде не я ползваш. static в случая указва че тази функция се използва локално в този файл и не е необходимо компилатора да изкаарва референция за нея за линкера.
Като смениш най отдолу името на функцията а не промениш и най горе самата декларация нали се сещаш че стават различни функции. Най горе е само дефиниция и не се налага да ти дава предупреждение за нея. А най долу си е съвсем нормална функция без да е декларирана като static.
Загря ли? Преди да обвиняваш компилатора помисли сериозно за собствена грешка. Като начинаещи всички често сме обвинявали компилаторите за наште си дивотии,какво да се прави,човешинка  :)
|
| Нед Мар 13, 2011 12:29 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
 Проблем ми е C-то ,
Но за конкретния случей - "a"-то го слагам на всички идентификатори: в дефинициите (горе, долу) и там, където се вика.
А гледам, че всички функции в модула са декларирани като static.
Функцията се вика от main(), в основния модул.
(много съжалявам, че ти губя времети и ти благодаря  )
|
| Нед Мар 13, 2011 12:43 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Дефинирай си правилно структурите с typedef и махни това static от функцията щото я викаш в друг файл. Предположих че като си я дефинирал с static я викаш в същия файл,ама я викаш в aaPlan.c
И се научи да ползваш хедър файлове в които да си декларираш експортваните функции на C файловете.
Така както я караш кода ти е много нечитаем. Като инклудваш хедърите указваш и какво ползваш в съответния C файл.
|
| Нед Мар 13, 2011 12:56 pm |
|
 |
|
NikB
Ранг: Почетен член
Регистриран на: Съб Сеп 25, 2004 10:32 pm Мнения: 710
|
ОК, ще го преработя изцяло.
Над 90% от проекта е събран от готови примери (аз съм добавил само един файл - основния, и той също е събран от примери).
Явно, не съм попаднал на подходящ писател  , но fat32 с MMC карта си върви ОК и на Протеус и на физическа платка.
|
| Нед Мар 13, 2011 1:10 pm |
|
 |
|
Nikola Kirov
Ранг: Форумен бог
Регистриран на: Нед Окт 31, 2004 9:19 pm Мнения: 4464 Местоположение: Stara Zagora
|
Хм,не ми се работеше днес и рекох да си поиграя малко пак с това Атмелско творение.
Може би се налага да поназнайваш това онова за работата с GNU компилатора щото като позадълбах малко се оказа че много неща принципно са различни от останалите компилатори.
Първо не видях в опциите на проекта възможност за линкерски конфигурационен файл. Има ли такова нещо?
Има в опциите на линкера начин да се задават потребителски сегменти но не схванах каква е концепцията и как може да сложа сегмент на определен адрес с определена дължина.
И второ кода ми като се поразрасна малко се стигна до това
Това 131% от програмната памет е направо смешно. Разбора се и програмата не работи. Иначе си зарежда нещо в процесора ама част от кода не е в реална памет и разбира се се омазва всичко.
Някакви идеи що става така? Не би ли трябвало просто линкера да си каже че няма достатъчно памет. Или такава е концепцията в GCC.
Изобщо в документацията на ATmel няма нищо за самия компилатор. Явно идеята е че някъде другаде трябва да чета за GNU AVR ама какво и откъде да чета .......
Всеки път като придобия някакво желание да почовъркам GNU компилатор още с първите опити ми секва желанието от цялата дървения. Рекох айде Атмел сигурно са се погрижили всичко да е малко по човешко ама ей го на. Кара ме да се чуствам като идиот и не мога еднин тъп тест да си подкарам.
Дайте малко акъл ако може
|
| Съб Май 21, 2011 12:44 am |
|
 |
|
¶
Ранг: Форумен бог
Регистриран на: Пет Фев 25, 2005 1:58 pm Мнения: 4585 Местоположение: US
|
Все съм си мислел, че това е запазена марка на Microchip  , но гледам Atmel успешно ги конкурират  . Hi-Tech на професор с 512 байта ми дава, че е използвал 702 байта RAM, обаче пък програмата си работи, не знам как го постигат 
_________________ Ето аз дишам, работя, живея и програми пиша тъй както умея, с проца под вежди се гледаме строго и боря се с него доколкото мога....
|
| Съб Май 21, 2011 6:28 am |
|
 |
|
relsys
Ранг: Форумен бог
Регистриран на: Пет Ное 25, 2005 11:41 am Мнения: 1680
|
|
| Съб Май 21, 2011 11:09 am |
|
|