slavox
-
Постов
9 -
Зарегистрирован
-
Посещение
Сообщения, опубликованные slavox
-
-
Опубликовано · Изменено пользователем slavox · Пожаловаться
1 hour ago, iosifk said:Могу предложить писать статьи для журнала. Что и как надо делать могу подробно рассказать. Просто рассматривайте это как вклад в саморекламу.
Составил мысленно для себя список, о чем можно написать и понял, что особо интересного ничего и нет.
Вот пример - есть в изделии ячейка, аудиокодек, разработки начала 80-х, до последнего времени ее "пихали" во все новые изделия, тк особо никто уже не понимал как она работает, какие-то аналоговые фильтры, компараторы и прочая позабытая всеми ерунда. Работает по принципу черного ящика, что на выходе известно. Только меняли элементную базу на современную (импортную) и все всех устраивало. Да еще занимала один ряд в шкафу.
И тут я вылез с идеей сделать все на ПЛИС и выкинуть эту ячейку, а ее функционал реализовать на соседнем модуле в довесок, тк там уже была ПЛИС, откусили чуток ресурсов. Сказано, сделано. Объединили 2 соседние ячейки в одну. Дошло до написания проекта, и к концу часа Х, пришло понимание, на хрена я сюда полез? Мой черный ящик не стыковался со старым, а это принципиальный момент. Перебрал кучу параметров, моделировал и никак. В-общем, в google случайно наткнулся на один пост с похожей идеей и решением. Итого, позаимствовал у партнеров идею(ради Родины,естественно).
Это было самое мое большое приключение на этой работе, остальное - рутина, ТЗ-схема-программа-документация.
-
Добрый день!
Работаю в провинции на крупном оборонном предприятии ведущим инженером (схемотехника+программирование).
Много свободного времени, ищу подработку.
Имею большой опыт разработки ПО (си, c++):
- на микроконтроллеры (AVR, ARM) Atmel, STM, Миландр, NIOS (Altera), FreeRTOS, KEIL RTX;
- на ПЛИС Altera (язык VHDL);
- для встраиваемых систем (embedded linux);
- для технологических проверок на QT SDK.
На "ты" со всевозможной переферией RS-232, RS-485, CAN, I2C, USB, ethernet.
В идеале, хотел бы присоединиться к команде разработчиков.
-
-
Вопрос решен!
-
Здравствуйте, прошу помощи!
Процессор sam7x512.
Есть бутлоадер, стартует с адреса 0x100000, затем передает управление на адрес основной программы 0х140000.
Запуск основной программы осуществляется в привелегированном режиме
void __swi(8) StartApplication (void);
void __SWI_8 (void)
{
AppEntry();
}
В бутлоадере используется файл
;/*****************************************************************************/
;/* SWI.S: SWI Handler */
;/*****************************************************************************/
;/* This file is part of the uVision/ARM development tools. */
;/* Copyright © 2005-2006 Keil Software. All rights reserved. */
;/* This software may only be used under the terms of a valid, current, */
;/* end user licence from KEIL for a compatible version of KEIL software */
;/* development tools. Nothing else gives you the right to use this software. */
;/*****************************************************************************/
T_Bit EQU 0x20
PRESERVE8 ; 8-Byte aligned Stack
AREA SWI_Area, CODE, READONLY
ARM
EXPORT SWI_Handler
SWI_Handler
STMFD SP!, {R12, LR} ; Store R12, LR
MRS R12, SPSR ; Get SPSR
STMFD SP!, {R8, R12} ; Store R8, SPSR
TST R12, #T_Bit ; Check Thumb Bit
LDRNEH R12, [LR,#-2] ; Thumb: Load Halfword
BICNE R12, R12, #0xFF00 ; Extract SWI Number
LDREQ R12, [LR,#-4] ; ARM: Load Word
BICEQ R12, R12, #0xFF000000 ; Extract SWI Number
LDR R8, SWI_Count
CMP R12, R8
BHS SWI_Dead ; Overflow
ADR R8, SWI_Table
LDR R12, [R8,R12,LSL #2] ; Load SWI Function Address
MOV LR, PC ; Return Address
BX R12 ; Call SWI Function
LDMFD SP!, {R8, R12} ; Load R8, SPSR
MSR SPSR_cxsf, R12 ; Set SPSR
LDMFD SP!, {R12, PC}^ ; Restore R12 and Return
SWI_Dead B SWI_Dead ; None Existing SWI
SWI_Cnt EQU (SWI_End-SWI_Table)/4
SWI_Count DCD SWI_Cnt
; Import user SWI functions here.
; IMPORT __SWI_0
; IMPORT __SWI_1
; IMPORT __SWI_2
; ...
IMPORT __SWI_8
SWI_Table
; Insert user SWI functions here
DCD 0
DCD 0
DCD 0
DCD 0
DCD 0
DCD 0
DCD 0
DCD 0
DCD __SWI_8 ; SWI 8 Function Entry
SWI_End
END
Система с бутлоадером работает прекрасно, если основная программа не использует Keil КTX, иначе вылетает после запуска RTOS на команде os_sys_init (...), отладчика нет.
Если вместо бутлоадера прошить основную программу с RTX, сменив стартовый адрес флеш, то все работает отлично, RTX запускается.
В чем проблема мб проблема ?
-
Рядом с кнопкой "Add" есть маленькая стрелочка "Add as Link".
Я пытался сказать разработчикам, что они идиоты, но они ответили, что это так и задумано.
Спасибо! Нашел все-таки эту ссылку, сначала искал через меню, для тех кто еще не сталкивался, нужно уже в окне со списком файлов на диске (после команды ADD-> EXISTING ITEM) нажать на стрелочку справа на кнопке ADD.
Еще раз спасибо.
-
Всем привет!
Подскажите, кто сталкивался.
Есть папка с исходниками (общая для всех проектов) (CAN, UART и тд) не в папке проекта.
При добавлении файла в проект из этой папки, происходит физ. копирование в папку проекта.
Пути все прописаны, компилируется.
Как сделать так, чтобы исходники не копировались, а то думая, что корректирую файл в одной папке, я откорректировал не нужную мне копию, да и зачем плодить файлы.
Добавлял в проект *.h, он их тоже копирует в файл проекта и ругается где *.с.
-
Опубликовано · Изменено пользователем IgorKossak
бездумное цитирование · ПожаловатьсяНу собственно все :...
Здравствуйте!
Прошло 3 года- ссылки устарели, скиньте пожалуйста ссылку на загрузчик "Я взял загрузчик с загрузчик"
Спасибо.
ПЛИС наши (Россия)
в Работаем с ПЛИС, области применения, выбор
Опубликовано · Пожаловаться
Здравствуйте! Возникла задача по импортозамещению, выбираю ПЛИС 5578ТС084(94), но в МОПе есть также 5578ТС044(54), причем характеристики такие же, ток только отличается и сроки поставки. Кто знает в чем у этих двух линеек разница, не понимаю.