Maxim
Свой-
Постов
32 -
Зарегистрирован
-
Посещение
Весь контент Maxim
-
Библиотеки для Altium Designer
Maxim ответил ANT тема в Библиотеки компонентов
Пожалуйста, скиньте ссылку на библиотеки [email protected] -
IOD 7.3SP1, DxD2007.2 Добрый день. Подскажите пожалуйста путь решения проблемы - Создаю в IOD символы для микросхемы XC2C256 в корпусе vq100. Экспортирую символы в DxD local symbols. Оттуда экспортирую в Symdol Editor и наконец ипортирую в центральную библиотеку. Но вот тут и происходит засада. Cell есть, PDB есть. Пытаюсь все это свести в единое целое - получаю ошибку например "P45 in sumbol XXX:xxx is not a valid pin number" т.е. в IODesigner нумерация ножек корпуса vq100 - P1,P2,.....P100, а Library Manager желает явно чего то другого. Судя по всему - просто цифр номера ножки. Подскажите, как эти грабли обойти. И не наступлю ли я на эти грабли, при создании PDB с корпусоб БГА, где нумерация ножек может быть буквенно-циферной.
-
У меня тоже eZ430-RF2500. Проверил: проблема таже, ничего не меняется :( . Хотелось бы поднять скорость, но как с этим бороться?
-
IAR EWAVR
Maxim ответил IgorKossak тема в IAR
Спасибо за таблетку. Теперь она лежит на местном ftp :a14: -
IAR EWAVR
Maxim ответил IgorKossak тема в IAR
Залил на местный ftp версию 4.20а. Старая таблетка от 4.12 мне не помогла :( Кто нибуддь может помочь горю? Кинте таблеткой на местный ftp. -
В Attiny26 всего 128 байт памяти (RAM) и контролер имеет полное право портить R27 в соответствии со своим ядром.
-
Для решения вашей проблемы, я думаю, надо использовать директиву #pragma segment="segment". C ее помощью создать свой сегмент, например "EXT_EEP" и разместить в нем свои переменные. Затем этот сегмент прописать в .xcl файле с определенными адресами и поставить опцию на создание файла для этого сегмента. Думаю, что так можно решить эту проблему.
-
В Error[e133] говорится, что пересекаются адресные пространства EEPROM и FLASH, а формат intel-standard не может упаковать различные виды памяти в один выходной файл. По этому __no_init здесь не поможет.
-
Все делаешь так. Просто надо настроить выходной формат линкера. Например поставь Debug, а остальное почитай в этом топике
-
Ты сам ответил на свой вопрос. Для этой функции нужен большой стек, приблизительно 150 байт или более (сейчас не помню точно). Поэкспиреминтируй со стеком данных и подбери для себя наиболее подходящий вариант.
-
А в компилаторе и точно баг. Все переменные располагаются в одних и техже регистрах R22 и R23, кроме указателя p!
-
тогда функция будет еще проще: void putstringus(char *p,int len) { while(len--) putchar(*p++); } И ЭТО ВСЕ!!!
-
// 13-8=5 это было в твоем примере len -= 8 надо читать так: len = len-8; Я и написал, что ты берешь символ из указателя и отправляеш его putchar-ом куда надо.
-
Чего заморачиваться? Надо писать проще. Я понял так, что надо вывести строку символов p длиной len. Пишем: void putstringus(char *p,int len) { //13-8=5 for (len -= 8; len; len--) putchar(*p++); } И небудет никаких багов.
-
У меня с AT90S1200 была подобная проблема. Почитал доку на нее и вот что там сказано о избавлении от дребезга с внешним прерыванием: 1. Disable the External Interrupt by clearing the INT0 flag in GIMSK. 2. Select level triggered interrupt. 3. Select desired interrupt edge. 4. Re-enable the external interrupt by setting INT0 in GIMSK. Может и с 48-ой надо сделать тоже самое.
-
Снимите "галку" с опции "Inicialize unused interrupt vectors with RETI instructions", которая есть в "General Opions/System", и все будет хорошо :)
-
У меня стоит IAR 2.31 c линкером 4.52h. Вообщем на первую строчку ругается чтоне может найти файл (CODE)=.hex. Я даже указывал полное имя файла. Подскажите что не так? <{POST_SNAPBACK}> У меня IAR 4.10B с XLINK 4.59J. Эти опции вставляю в Project/Options/Linker/Extra Options. Вопросов не возникает. Попробуйте в линкере поставить опции -Y или -y. Вот что по этому поводу сказано в документации на линкер: -O -Oformat[,variant][=filename] Use the -O option to create one or more output files of the format format, possibly with the variant variant (just as if you had used the -Y or -y option). If no filename is specified, the output file will be given the same name as a previously specified output file, or the name given in a -o option, with the default extension for the format. (Typically you would want all output files specified using the -O option to have the same filename.) If the first character of filename is a . (a period), filename is assumed to be an extension, and the file receives the same name as if no name was specified, but with the specified extension. Any number of -O command line options can be specified. Example -Odebug=foo -Omotorola=.s99 -Ointel-extended,1=abs.x This will result in one output file named foo.dbg, using the UBROF format, one named foo.s99, using the MOTOROLA format, and one named abs.x, using the INTEL-EXTENDED format just as if -Y1 had also been specified. Output files produced by using -O will be in addition to those produced by using the -F, -o, or -y options. This means that extra output files can be added to the linker command file despite that this feature is not supported in the IAR Embedded Workbench IDE. Note: If -r is specified—or its corresponding option in the IAR Embedded Workbench IDE—only one output file is generated, using the UBROF format and selecting special runtime library modules for IAR C-SPY."
-
Это глюки студии - доказано мною. Для Atmega48 я сам намучился с ШИМом. В AVR Studio вообще неправильно работал таймер и соответствующий вывод для ШИМ. На плате все было в порядке. Если тебе так надо отладить это в студии, то поробуй отоадь свой таймер на другом процессоре (atmega162 - помойму студия с ним работала коректно) <{POST_SNAPBACK}> Дело в том, что команда SBR Rx, XX анологична команде ORI Rx, XX и по этому необходимо учитывать предыдущее состояние регистра Rx (в вашем случае R16) или пользоваться командой MOV Rx, XX.
-
Вот кусок програмного УАРТА из рабочей программы (только надо подобрать свои задержки). Передаваемый символ находится в R16 Программа взята из апликейшн на АВР /************************************************************ * Запись символа в програмный UART ************************************************************/ su_putch: ; LDI R17, 1+8+1 ; start + data + stop COM R16 ; Inverte everything SEC ; Start bit ppc_m1: ; BRCC ppc_m2 ; If carry set CBI SOFT_UARTO,SU_TX; send a '0' RJMP ppc_m3 ; else ppc_m2: ; SBI SOFT_UARTO,SU_TX; send a '1' NOP ; ppc_m3: ; RCALL UART_delay ; One bit delay RCALL UART_delay ; NOP ; LSR R16 ; Get next bit DEC R17 ; If not all bit sent BRNE ppc_m1 ; send next RET ;
-
Делается все очень просто. В опциях линкера ставите формат simple и в меню Tools добавляете файли postlink.bat (находится в директории avr\bin). Описание читайте в файл postlink.htm который находится в директории ...\IAR Systems\.....\avr\doc\
-
Есть небольшая проблемка с таблеткой. Ругается на VISRA C. [su003]: in "--misrac=required": This product is not licensed for MISRA C checking Как-бы ее побороть? Кто может подсказать?
-
Погляди на AVRFreaks http://www.avrfreaks.net/Tools/showtools.php?ToolID=272
-
Только что поставил Protel DXP 2004. Еше пока играюсь с примерами, но после PCAD 2001 он мне нравиться все больше и больше :)
-
1. В Workspace выбери Release вместо Debug 2. Затем меню Project/Options, категория Linker, закладка Output. Выбери нужный тебе формат в поле Output format и все перекопилируй. Удачи. ;)
-
Между командами записи и чтения поставь NOP и все заработает. Например: OUT PORTA, R16 NOP IN R16, PINA