Например TDA7294

Форум РадиоКот • Просмотр темы - Программирование микроконтроллеров компании Fudan в Keil
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пт дек 19, 2025 17:41:06

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Вт дек 16, 2025 19:26:41 
Родился

Зарегистрирован: Вс июл 07, 2024 18:40:12
Сообщений: 14
Рейтинг сообщения: 0
Здравствуйте! Данные вопросы относятся к микроконтроллеру FM33A048EV на Cortex-M0 процессоре. Я никогда ранее не пользовался средой Кейл, но вот нужно подключить экран к этому контроллеру и более подходящего варианта я не нашел. По итогам того, к чему я пришел, при попытке отладки, отладчик запускается, но если сделать шаг выдает ошибку JLink - Cortex-M Error. Что может быть причиной данной ошибки? Программа судя по логу в в чип загружается
Код:
Load "C:\\Projects\\keil\\FM33ADisp\\test.axf"
* JLink Info: Device "CORTEX-M0" selected.
Set JLink Project File to "C:\Projects\keil\FM33ADisp\JLinkSettings.ini"
* JLink Info: Device "CORTEX-M0" selected.
 
JLink info:
----------
DLL: V7.82 , compiled Oct 13 2022 13:32:51
Firmware: J-Link V11 compiled Apr  1 2025 10:02:30
Hardware: V11.00
S/N : 603000869
Feature(s) : RDI, FlashBP, FlashDL, JFlash, GDB
 
* JLink Info: Found SW-DP with ID 0x0BB11477
* JLink Info: DPIDR: 0x0BB11477
* JLink Info: CoreSight SoC-400 or earlier
* JLink Info: Scanning AP map to find all available APs
* JLink Info: AP[1]: Stopped AP scan as end of AP map has been reached
* JLink Info: AP[0]: AHB-AP (IDR: 0x04770021)
* JLink Info: Iterating through AP map to find AHB-AP to use
* JLink Info: AP[0]: Core found
* JLink Info: AP[0]: AHB-AP ROM base: 0xE00FF000
* JLink Info: CPUID register: 0x410CC300. Implementer code: 0x41 (ARM)
* JLink Info: Unknown core, assuming Cortex-M0
* JLink Info: Found Cortex-M0 r0p0, Little endian.
* JLink Info: FPUnit: 4 code (BP) slots and 0 literal slots
* JLink Info: CoreSight components:
* JLink Info: ROMTbl[0] @ E00FF000
* JLink Info: [0][0]: E000E000 CID B105E00D PID 000BB00D ???
* JLink Info: [0][1]: E0001000 CID B105E00D PID 000BB00A DWT
* JLink Info: [0][2]: E0002000 CID B105E00D PID 000BB00B FPB
ROMTableAddr = 0xE00FF000
* JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
* JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
 
Target info:
----------
Device: FM33A04XEV
VTarget = 3.348V
State of Pins:
TCK: 1, TDI: 1, TDO: 0, TMS: 1, TRES: 1, TRST: 1
Hardware-Breakpoints: 4
Software-Breakpoints: 8192
Watchpoints:          1
JTAG speed: 5 kHz
 
Full Chip Erase Done.
Programming Done.
Verify OK.
* JLink Info: Reset: Halt core after reset via DEMCR.VC_CORERESET.
* JLink Info: Reset: Reset device via AIRCR.SYSRESETREQ.
Application running ...
Flash Load finished at 16:20:03



Так же настроил пин PG6 на высокий уровень, но на этом пине никаких движений не происходит.
Код:
#include "init.h"
#include <stdint.h>
//#pragma GCC diagnostic ignored "-Wgnu-binary-literal"

void INIT(void){
   rcc();
   gpio();
   
}

void rcc(void){
   CMU->RCHFCR |= (0x1U << 8); // 16MHz
   CMU->RCHFCR |= 0x1U; // RCHF enable
   for(uint8_t i = 0; i < 255; i++);
   CMU->SYSCLKCR &=~ 0x7U; // SysClk -- RCHF
   //GPIO->FOUTSEL |= 0xBU; //Fout0 (PG6)
}

void gpio(void){
    //--- PORTG ---//
   //GPIOG->FCR |= (0x2U << 12); // PG6 -- digital function
   //GPIOG->DFS |= (0x1U << 6); // Fout
   GPIOG->PUEN |= (1 << 6);
   GPIOG->FCR |= (0x01U << 12);
   GPIOG->DSET |= (1 << 6);
   
}


Может кто-то имел дело с этими или похожими МК и поможет мне разобраться, что я делаю не так. Буду премного благодарен:)


Изображение Изображение Изображение Изображение Изображение Изображение Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Ср дек 17, 2025 20:50:45 
Говорящий с текстолитом

Карма: -7
Рейтинг сообщений: 187
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1655
Рейтинг сообщения: 0
Может кто-то имел дело с этими или похожими МК
С этими МК и с Кейл дел не имел, но первое что бросается в глаза: почему "max.clock" стоит = 5kHz? Это очень мало. Я обычно ставлю не менее 4 МГц (хотя работаю с более старшими ядрами чем CM0).
Также лучше сразу в начале отладочной сессии (ещё до всяких шаганий) ещё и своими глазами убедиться, что прошивка реально прошилась в чип (открыв окно "Memory", перейдя в нём на начало флешь и глазами сравнив данные там с содержимым своего файла прошивки).

Добавлено after 5 minutes 34 seconds:
По итогам того, к чему я пришел, при попытке отладки, отладчик запускается, но если сделать шаг выдает ошибку JLink - Cortex-M Error. Что может быть причиной данной ошибки?
Что происходит после старта отладочной сессии? Показывает окошко с кодом и с точкой в которой сейчас находится PC? (остановленный)
Причиной сбоев после загрузки может быть внезапно прилетевший на контроллер RESET. От WDT или по питанию или ещё от чего-то. Или какие-то другие проблемы с соединением эмулятора с отлаживаемым МК. Или с питанием.

Программа судя по логу в в чип загружается
Это лучше проверить своими глазами. По окошку "Memory".
Тем более что и галки "Download to Flash" и "Verify Code Download" на последнем скрине у вас почему-то сняты.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Чт дек 18, 2025 20:14:16 
Родился

Зарегистрирован: Вс июл 07, 2024 18:40:12
Сообщений: 14
Рейтинг сообщения: 0
Спасибо за ответ! 5кГц это я менял разные скорости. Сейчас поставил 5МГц, ничего не изменилось


Изображение Изображение Изображение Изображение Изображение Изображение Изображение

Добавлено after 25 minutes 50 seconds:
jcxz,

Добавлено after 6 minutes 5 seconds:
Изображение

Добавлено after 3 minutes 52 seconds:
Изображение

Добавлено after 32 minutes 1 second:
Пересоздал проект. Память вроде программируется корректно. С адреса 0x0 Изображение

Вот структура проекта и код
Изображение

Окно отладчика когда я только в него вошёл. Почему то сразу запущен. Если остановить (на красный кружок с белым крестиком) он остановится но шаги не работают. Ничего не происходит. Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Чт дек 18, 2025 20:20:11 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вт фев 28, 2017 08:13:31
Сообщений: 72
Откуда: Свердловская обл.
Рейтинг сообщения: 0
для начала поставь галки - так

Изображение

Изображение


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Чт дек 18, 2025 20:34:36 
Родился

Зарегистрирован: Вс июл 07, 2024 18:40:12
Сообщений: 14
Рейтинг сообщения: 0
Zikon, да, вот я позже пприсылал скриншоты там уже стоят как вы написали

Добавлено after 5 minutes 26 seconds:
Zikon, сейчас при входе в отладчик сразу код идёт, или что, доступна кнопка STOP. Если нажать ее выделяются некоторые регистры синим, и всё. Шаги не делает, а если нажать Run to cursor line опять запускается и всё. Изображение Изображение Изображение Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Чт дек 18, 2025 20:46:29 
Открыл глаза
Аватар пользователя

Зарегистрирован: Вт фев 28, 2017 08:13:31
Сообщений: 72
Откуда: Свердловская обл.
Рейтинг сообщения: 0
что за белый кружок с красным крестиком, и зачем его в отладчике нажимать

запускаем отладку и должен сразу
на main() перейти и в си коде и в асм коде
и дальше шагаем

Добавлено after 2 minutes 36 seconds:
шаги делаем и при изменении - жёлтая стрелочка перемещается
синие регистры - те которые изменились при шаге или шагах

может ещё зависит шаг в каком окне находишься

и как-то си программу там шаги странно работают
я больше асм отлаживаю немного

в настройках можно в закладке Debug
убрать галочку Run to main()
тогда стартовать будет с ResetHandler
и в асм окне будет если интересно асм по шагам смотреть

и сейчас проще в телеге найти канал по MCU и там спрашивать
на форумах мало движухи и отклик долгий


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Программирование микроконтроллеров компании Fudan в Keil
СообщениеДобавлено: Чт дек 18, 2025 22:56:45 
Говорящий с текстолитом

Карма: -7
Рейтинг сообщений: 187
Зарегистрирован: Вт авг 15, 2017 10:51:13
Сообщений: 1655
Рейтинг сообщения: 0
Zikon, сейчас при входе в отладчик сразу код идёт, или что, доступна кнопка STOP.
После старта отладочной сессии, процессор должен по идее быть остановленным или в начале main() или по адресу вектора сброса. Не должен он быть в "run". Что-то не так тут. Может адрес точки входа (стартовый адрес прошивки) не задан или неправильно задан?
Или выполнение по каким-то причинам не доходит от 0x165 до main()?

У вас, судя по скриншоту с образом прошивки, вектор сброса указывает на адрес 0x165. Можно перед подключением отладчика, поставить на этот адрес бряк (в окне дизасма). И дальше прошагать до начала main(). Или же 2-й бряк поставить на начало main() и от адреса 0x165 до бряка в main() запустить CPU свободно бежать (run). Исполнение должно дойти до бряка в main(). Если не дошло - искать что не так со входом в main().
Вобщем - я бы плясал от адреса в векторе сброса (0x165).

PS: В вашем МК флешь находится с адреса 0x00000000? Точно? Нужно убедиться в этом. У меня нет мануала на ваш МК - не знаю.

Добавлено after 5 minutes 42 seconds:
Шаги не делает, а если нажать Run to cursor line опять запускается и всё. [url=https://img.radiokot.ru/files/157349/medium/3y0m8xiqr8.png]
А зачем вы закомментировали весь код внутри main()? Оставьте там хоть сколько-то кода. Может "run to main" не срабатывает, если main() пустой?


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 21


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y