Вт янв 26, 2021 11:11:17
Вт янв 26, 2021 11:48:16
Вт янв 26, 2021 11:53:45
Вт янв 26, 2021 12:30:33
даже ОЗУ от не-ОЗУ и то на счет раз не отличить... и в это утверждение верится с трудом.КРАМ писал(а):На самом деле контроллер отличим от процессора на счет раз
а у процессоров всегда открыта? или не у процессоров? или не всегда? или не шина?КРАМ писал(а):системная шина у контроллеров всегда закрыта
Вт янв 26, 2021 12:52:21
В русской вики недостаточно подробно написано для чего предназначено ядро Cortex-M. Вот ссылка на сайт производителя ядра https://developer.arm.com/ip-products/p ... s/cortex-moleg110592 писал(а):1) зачем переводить, если вики по русски есть в гугле первая ссылка по запросу "ARM архитектура"
Arm Cortex-M series processors
The Cortex-M processor family is optimized for cost and energy-efficient microcontrollers. These processors are found in a variety of applications, including IoT, industrial, and everyday consumer devices.
Я уже давал ссылку на определение что такое однокристальный микроконтроллер https://ru.wikipedia.org/wiki/Однокрист ... контроллерoleg110592 писал(а):вот именно - оптимизированы - но вопрос был том, что если в микроконтроллере с предназначенным, лицензированным, пусть даже с оптимизированным ядром нет ПЗУ, то
Верно. В вики есть определение системы на кристале, т. е. это не МК https://ru.wikipedia.org/wiki/Система_на_кристаллеКРАМ писал(а):Они сделаны на SoC. Система на кристалле
Вт янв 26, 2021 13:16:03
так, мать их за ногу, processors, или, растуды их в качель, microcontrollers?! в одной цитате!!! два !!! термина, которые вы упорно противопоставляете!!!Мурик писал(а):cost and energy-efficient microcontrollers. These processors
Вт янв 26, 2021 13:24:49
Почему я? Это разработчики ядра ARM . Если считаете что они не правы, напишите им об этом.ARV писал(а):два !!! термина, которые вы упорно противопоставляете!!!
Однокристальные микроконтроллеры — функционально законченный МПК (микропроцессорный комплект), реализованный в виде одной СБИС (сверх-БИС). ОМК включает процессор, ОЗУ, ПЗУ, порты ввода-вывода для подключения внешних устройств, модули ввода аналогового сигнала АЦП, таймеры, контроллеры прерывания, контроллеры различных интерфейсов и т. д.
Вт янв 26, 2021 13:35:09
и, что самое удивительное (или, как посмотреть, ноборот, самое не-удивительное), процессор есть и в контроллере, и в одно-кристальном, и в много-кристальном, и ОЗУ есть везде, и ПЗУ есть везде, и шины всякие, и регистры... и АЦП может быть ВЕЗДЕ (и не только АЦП - вообще АНАЛОГОВАЯ периферия и не-периферия)... и что по одному факту наличия или отсутствия этих элементов классифицировать нельзя, потому что классификация получается в виде макаронного монстра - путаная и противоречивая.Мурик писал(а):в составе микроконтроллера есть процессор?
Вт янв 26, 2021 13:47:28
Я уже давал ссылку на определение что такое однокристальный микроконтроллер https://ru.wikipedia.org/wiki/Однокрист ... контроллер
Вт янв 26, 2021 13:50:07
Mpu::disable();
Mpu::setRegion(0, 0x00000000, MpuRegSize::_512MB, MpuAttr::Normal_NonShareable_NonCacheable); // ITCM/Flash/System Memory
Mpu::setRegion(1, 0x20000000, MpuRegSize::_512MB, MpuAttr::Normal_NonShareable_NonCacheable); // DTCM/AXISRAM/SRAM1234/BackupSram
Mpu::setRegion(2, 0x40000000, MpuRegSize::_512MB, MpuAttr::Device_NonShareable, true); // Peripheral
Mpu::setRegion(3, 0x60000000, MpuRegSize::_512MB, MpuAttr::Normal_NonShareable_NonCacheable); // External RAM
Mpu::setRegion(4, 0x80000000, MpuRegSize::_512MB, MpuAttr::Normal_NonShareable_NonCacheable); // External RAM
Mpu::setRegion(5, 0xC0000000, MpuRegSize::_512MB, MpuAttr::Device_NonShareable, true); // External Device
Mpu::setRegion(6, 0xE0000000, MpuRegSize::_1MB, MpuAttr::Ordered_Shareable, true); // Private peripheral bus
Mpu::setSubRegions(3, 0b0000'0001, 0x60000000, MpuSRegSize::_16KB, MpuAttr::Normal_NonShareable_WriteBackWriteAllocate);
Mpu::enable();
auto addr = (uint16_t*)0x6000'0000;
for (int i = 0; i < 8192; i += 2)
addr[i] = 0x1234 + i;
for (int i = 0; i < 8192; i += 2)
{
if (addr[i] != 0x1234 + i)
rtt.print<"Error: {}, {x}\n">(i, addr[i]);
}
Вт янв 26, 2021 14:01:53
Вт янв 26, 2021 17:38:27
Вт янв 26, 2021 18:03:04
Пн мар 08, 2021 18:43:04
// Variable bits
bit p_on;
bit p_off;
void main() {
DDRB = 0x08; // Set PB3 pin as output, other inputs
p_on = 0; // Bit initial value
p_off = 1; // Bit initial value
do {
if (Button(&PINB, 0, 1, 1)) { // Detect logical one
p_on = 1; // Update flag
}
if (p_on == 1 && Button(&PINB, 0, 1, 0)) { // Detect one-to-zero transition
p_on = 0; // Update flag
}
if (p_on == 1 && p_off == 1) { // Switching on
PORTB3_bit = 1; // Set PB3 pin = 1
Delay_ms(300); // Wait for a while
PORTB3_bit = 0; // Set PB3 pin = 0
p_off = 0; // Update flag
Delay_ms(100); // Wait for a while
}
if (p_on == 0 && p_off == 0) { // Switching off
PORTB3_bit = 1; // Set PB3 pin = 1
Delay_ms(300); // Wait for a while
PORTB3_bit = 0; // Set PB3 pin = 0
p_off = 1; // Update flag
Delay_ms(100); // Wait for a while
}
} while(1); // Endless loop
}
Пн мар 08, 2021 20:51:12
Пн мар 08, 2021 22:48:02
Вт мар 09, 2021 09:19:29
Вт мар 09, 2021 23:01:27
Вт мар 09, 2021 23:12:36
Ср мар 10, 2021 01:13:24