
Pirms dažiem gadiem iepazinos ar Krievijas mikrokontrolleriem no Milandr. Tas bija 2013. gads, kad inženieri enerģiski apsprieda federālās mērķprogrammas "Elektronisko komponentu bāzes un radioelektronikas attīstība" pirmos rezultātus 2008.-2015. gadam. Tajā laikā jau bija izlaists K1986BE9x kontrolieris (Cortex-M3 kodols), un tikko parādījās 1986BE1T kontrolieris (Cortex-M1 kodols). Viņam, plastmasas LQFP-144 korpusā, dokumentācijā bija apzīmējums K1986BE1QI (aviation), bet uz pašas mikroshēmas – apzīmējums MDR32F1QI. Ražotāja vietnē tam ir sufikss "gaiss", jo tam ir saskarnes, kas raksturīgas gaisa kuģu nozarei (ARINC 429, MIL_STD_1553).
Pārsteidzoši, ka šo kontrolieru izplatīšanas laikā uzņēmums Milander sagatavoja atkļūdošanas komplektus un apakšprogrammu bibliotēku darbam ar perifērijas ierīcēm, "bet bez jebkādām papildu garantijām un saistībām attiecībā uz bibliotēkas pareizību". Bibliotēka ir līdzīga STMicroelectronics standarta perifērijas bibliotēkai. Kopumā visiem ARM kontrolieriem, kas veidoti uz Cortex-M kodola, ir daudz kopīga. Šī iemesla dēļ iepazīšanās ar jaunajiem krievu kontrolieriem noritēja ātri. Un tiem, kas iegādājās patentētus atkļūdošanas komplektus, lietošanas laikā tika nodrošināts tehniskais atbalsts.

Atkļūdošanas komplekts mikrokontrolleram 1986BE1T, © Milandr
Tomēr laika gaitā sāka parādīties jaunu mikroshēmu un bibliotēku "bērnu slimības". Programmaparatūras testa piemēri darbojās bez redzamām problēmām, taču ar ievērojamām modifikācijām lija avārijas un kļūdas. Pirmā “bedelīga” manā praksē bija neizskaidrojamas kļūmes CAN kontrollerī. Gadu vēlāk moduļa problēma tika atklāta 1986BE1T (gaisa) kontrolierī ar agrīnu versiju. . Kopumā visas šo mikrokontrolleru versijas līdz 2016. gadam bija ierobežotas. Daudz laika un nervu tika ieguldīts, lai identificētu šīs problēmas, kurām tagad var atrast apstiprinājumu .
Nepatīkama iezīme bija tā, ka bija jāstrādā un jārisina kļūdas nevis uz atkļūdošanas dēļiem, bet gan uz prototipu ierīču dēļiem, kas bija plānoti sērijveida rūpnīcas ražošanai. Papildus JTAG savienotājam tur parasti nebija nekā. Bija grūti un neērti izveidot savienojumu ar loģisko analizatoru, un parasti nebija gaismas diožu un ekrānu. Šī iemesla dēļ manā galvā parādījās ideja izveidot savu atkļūdošanas dēli.
No vienas puses, tirgū bija firmas atkļūdošanas komplekti, kā arī brīnišķīgi dēļi no Zelenogradas LDM-Systems. No otras puses, šo produktu cenas iedzen stuporā, un pamata funkcionalitāte bez paplašināšanas kartēm neatbilst cerībām. Dēlis ar pielodētu kontrolieri un tapas galveni mani neinteresē. Un interesantāki dēļi ir dārgi.

Izstrādes panelis MILANDR LDM-HELPER-K1986BE1QI-FULL, © LDM Systems
Uzņēmumam "Milandr" ir unikāla cenu politika un mārketings. Tātad dažu mikroshēmu paraugus ir iespējams iegūt bez maksas, taču tas ir pieejams tikai juridiskām personām un ir saistīts ar birokrātiskiem meklējumiem. Kopumā mikroshēmas keramikas-metāla iepakojumā ir zeltainas tiešā un pārnestā nozīmē. Piemēram, 1986BE1T kontrolieris Maskavā maksā no 14 līdz 24 tūkstošiem rubļu. 1645RU6U statiskās atmiņas mikroshēma maksā no 15000 1986 rubļu. Un tāda ir visu produktu cenu secība. Rezultātā pat specializēti pētniecības institūti ar valsts pasūtījumiem ietaupa naudu un kautrējas no šādām cenām. Mikroshēmas plastmasas korpusā civilām vajadzībām ir ievērojami lētākas, taču tās nav pieejamas no populāriem piegādātājiem. Turklāt skaidu kvalitāte plastmasas korpusā, man šķiet, ir sliktāka par "zeltu". Piemēram, es nevarēju palaist kontrolieri K1BE128QI ar 40 MHz, nepalielinot zibspuldzes latentuma iestatījumu. Tajā pašā laikā šī regulatora temperatūra paaugstinājās līdz 50-1986C. Bet 1BE128T ("zelta") kontrolieris sāka darboties ar XNUMX MHz bez papildu iestatījumiem un palika auksts. Viņš tiešām ir labs.

"Zelta" mikrokontrolleris 1986BE1T, (c) Milandr
Man paveicās, ka mikrokontrolleri plastmasas korpusā joprojām var iegādāties mazumtirdzniecībā no LDM Systems, un visas shēmas plates ir brīvi pieejamas. Slikti ir tas, ka vietnē uz kontroliera fotoattēla ir redzams marķējums, kas saka, ka šī ir 4. gada 2014. redakcija, t.i. ar defektiem. Ilgi domāju – pirkt vai nepirkt. Tātad pagāja vairāki gadi...
Ideja izveidot atkļūdošanas dēli nekur nav pazudusi. Pamazām veidoju visas prasības un domāju, kā to visu salikt uz viena tāfele, lai tas būtu kompakts un nedārgs. Paralēli no ķīniešiem pasūtīju trūkstošās sastāvdaļas. Es nesteidzos – visu izdarīju sev. Ķīnas piegādātāji ir bēdīgi slaveni ar paviršību – man nācās pasūtīt vienu un to pašu dažādās vietās, lai dabūtu visu nepieciešamo. Turklāt dažas atmiņas mikroshēmas izrādījās lietotas - acīmredzami pielodētas no salauztām ierīcēm. Tas mani skāra vēlāk.
Mikrokontrollera Milandr K1986BE1QI (aviācija) iegāde nav viegls uzdevums. Tajā pašā Chip and Dip veikalā sadaļā “Pozīcijas pēc pasūtījuma” es atradu tikai K1986BE92QI par 740 rubļiem, taču tas man nederēja. Vienīgā iespēja ir iegādāties ne-svaigu versiju no LDM-Systems par 2000 rubļiem. Tā kā nekur citur nevarēju atrast aizstājēju, nolēmu nopirkt to, kas bija. Man par patīkamu pārsteigumu viņi man pārdeva pilnīgi jaunu 2018. gada decembra izlaiduma kontrolieri, 6+ versiju (1820). Un vietnei joprojām ir vecs fotoattēls, un rakstīšanas laikā kontrolieris nebija pieejams ...

Mikrokontrolleris K1986BE1QI (aviation) tehnoloģiskā iepakojumā, (c) Autora foto
Manas izstrādes padomes galvenās tehniskās specifikācijas MDB1986 pēc:
- iebūvēts atkļūdotājs-programmētājs, kas saderīgs ar J-Link un CMSIS-DAP;
- 4Mbit statiskā atmiņa (256k x 16, 10ns);
- zibatmiņas mikroshēma 64Mbit, Winbond 25Q64FVSIG;
- RS-232 interfeisa raiduztvērējs ar RTS un CTS līnijām;
- saskarnes un savienotāji Ethernet, USB, CAN;
- 7 segmentu displeja kontrolleris MAX7221;
- pin savienotājs darbam ar MCIO (MIL_STD_1553) un ARINC429;
- fototranzistors Everlight PT17-21C;
- piecas krāsainas gaismas diodes, atiestatīšanas poga un divas lietotāja pogas;
- to darbina 5 voltu USB ports;
- iespiedshēmas plates izmēri 100 x 80, mm
Man patika STM-Discovery sērijas dēļi, jo tajos ir iebūvēts programmētājs-atkļūdotājs - ST-Link. Zīmola ST-Link darbojas tikai ar STMicroelectronics kontrolieriem, taču pirms pāris gadiem kļuva iespējams atjaunināt programmaparatūru ST-Link un iegūt SEGGER J-Link OB (on-board) atkļūdotāju. Juridiski pastāv ierobežojums izmantot šādu atkļūdotāju tikai ar STMicroelectronics platēm, taču faktiski potenciāls nav ierobežots. Tādējādi, izmantojot J-Link OB, atkļūdošanas panelī var būt iebūvēts programmētājs-atkļūdotājs. Es atzīmēju, ka LDM-Systems produktos tiek izmantots CP2102 (Usb2Uart) pārveidotājs, kas var tikai mirgot.

STM32F103C8T6 mikrokontrolleri, īsti un ne tādi, (c) Autora foto
Tātad bija nepieciešams iegādāties oriģinālo STM32F103C8T6, jo firmas programmaparatūra nedarbosies pareizi ar klonu. Es šaubījos par šo tēzi un nolēmu izmēģināt Ķīnas uzņēmuma CKS kontrolieri CS32F103C8T6. Man nav sūdzību par pašu kontrolieri, taču patentētā ST-Link programmaparatūra tajā nedarbojās. J-Link strādāja daļēji - USB ierīce tika atklāta, taču programmētājs nepildīja savas funkcijas un pastāvīgi atgādināja, ka tā ir “bojāta”.

Kļūda, palaižot atkļūdotāju uz neoriģināla kontrollera
Es par to nenomierinājos un vispirms uzrakstīju programmaparatūru gaismas diodes mirgošanai, un pēc tam ieviesu IDCODE pieprasījumu, izmantojot JTAG protokolu. ST-Link programmētājs, kas man bija uz Discovery plates, un ST-Link Utility programma bez problēmām mirgoja CS32F103C8T6. Rezultātā es pārliecinājos, ka mana plate darbojas. Man par prieku mērķa kontrolieris K1986BE1QI (aviācija) jautri izdeva savu IDCODE pa TDO līniju.

TDO signāla līnijas oscilogramma ar IDCODE kodētu atbildi, (c) autora foto

Tāpēc SWD ports noderēja paša atkļūdotāja atkļūdošanai un IDCODE pārbaudei
Bija iespēja ar atkļūdotāju . Projekta izveide no ARM avotiem nav viegls uzdevums, es projektu paņēmu no , un tad izmēģināju arī DAP42. Diemžēl Keil uVision iestrēga un nevēlējās ar viņiem strādāt. Tā rezultātā es nomainīju atkļūdotāja mikroshēmu ar patentētu STM32F103C8T6 un nekad neatgriezos pie šīs problēmas.

Iebūvētā atkļūdotāja J-Link STLink V2 veiksmīga darbība
Kad visas nākamās atkļūdošanas plates galvenās sastāvdaļas bija pieejamas, es iekļuvu Eagle CAD un atklāju, ka to nav elementu bibliotēkā. Nav kur iet – pašam tās bija jāzīmē. Tajā pašā laikā es izveidoju sēdekļus atmiņai, HanRun savienotāju Ethernet un pievienoju rāmjus rezistoriem un kondensatoriem. Projekta failu un komponentu bibliotēku var atrast .
MDB1986 atkļūdošanas plates shematiskā diagramma
Plati darbina 5 voltu līdzstrāvas avots no USB porta. Uz tāfeles ir divi B tipa USB porti. Viens paredzēts programmētājam, otrais ir K1986BE1QI kontrolierim. Valde var strādāt no jebkura no šiem avotiem vai abiem vienlaikus. Vienkāršākā slodzes regulēšana un elektropārvades līniju aizsardzība tiek īstenota uz Šotki diodēm, D2 un D3 (SS24) ķēdēs. Arī diagrammā var redzēt pašatjaunojošos drošinātājus F1 un F2 pie 500 mA. USB porta signāla līnijas aizsargā USBLC6-2SC6 diodes komplekts.
ST-Link atkļūdotāja-programmētāja shēma ir zināma daudziem, to var atrast STM32-Discovery plates dokumentācijā un citos avotos. ST-Link / J-Link-OB / DAP klona (pēc izvēles) primārajai programmaparatūrai es izcēlu SWDIO (PA13), SWCLK (PA14), GND līnijas. Daudzi programmaparatūrai izmanto UART un ir spiesti vilkt BOOT džemperus. Bet SWD man ir ērtāks, turklāt šis protokols ļauj atkļūdot.
Gandrīz visas plates sastāvdaļas tiek darbinātas ar 3.3 voltiem, kas nāk no AMS1117-3.3 sprieguma regulatora. Lai nomāktu elektromagnētiskos traucējumus un strāvas pārspriegumus, tiek izmantoti LC filtri no BLM31PG sērijas kondensatoriem un droseles.
Atsevišķi ir vērts pieminēt MAX7 7221 segmentu displeja draiveri. Saskaņā ar specifikāciju ieteicamais barošanas avots ir no 4 līdz 5.5 voltiem, un augstais signāla līmenis (loģiskais) nav mazāks par 3.5 V (0.7 x VCC), ja tiek darbināts no 5 V. Kontrolierim K1986BE1QI (aviācijai) loģiskās vienības izeja atbilst spriegumam no 2.8 līdz 3.3 V. Acīmredzot ir signāla līmeņu neatbilstība, kas var traucēt normālu darbību. Es nolēmu darbināt MAX7221 no 4 V un pazemināt signāla līmeni līdz 2.8 V (0.7 x 4 = 2.8). Lai to izdarītu, vadītāja strāvas ķēdē sērijveidā ir uzstādīta diode D4 (RS1A vai FR103). Kopējais sprieguma kritums ir 0.9 V (0.3 V Šotkija diode un 0.6 V diode), un viss darbojas.
Lielākā daļa K1986BE1QI mikrokontrollera (aviācijas) portu ir saderīgi ar signāliem līdz 5 V. Tāpēc MCP2551 CAN raiduztvērēja lietošana, kas darbojas arī no 5V, problēmas nesagādā. Diagramma parāda MAX232 mikroshēmu kā RS-3232 raiduztvērēju, bet patiesībā es izmantoju SN65C3232D no Texas Instruments, jo tas darbojas no 3.3V un nodrošina ātrumu līdz 1Mbit/s.
Uz tāfeles ir 4 kvarca rezonatori - viens atkļūdotājam (8 MHz) un trīs mērķa mikrokontrollerim K1986BE1QI (aviācija) ar nominālvērtībām 32.768 kHz, 16 MHz, 25 MHz. Tie ir nepieciešami komponenti, jo. iebūvētā RC ģeneratora parametri ir plašā diapazonā no 6 līdz 10 MHz. 25 MHz frekvence ir nepieciešama iebūvētā Ethernet kontrollera darbībai. Nez kāpēc Milandras mājaslapā (varbūt kļūdas pēc) ir norādīts, ka plastmasas korpusā Ethernet nav. Bet mēs paļausimies uz specifikācijām un faktiem.
Svarīgs stimuls savas atkļūdošanas dēļa izveidei bija iespēja strādāt ar ārējo EBC (ārējā kopnes kontrollera) sistēmas kopni, kas būtībā ir paralēlais ports. Mikrokontrolleris K1986BE1QI (aviācija) ļauj savienot un strādāt ar ārējām atmiņas mikroshēmām un perifērijas ierīcēm, piemēram, ADC, FPGA u.c. Ārējās sistēmas kopnes iespējas ir diezgan lielas – var strādāt ar 8 bitu, 16 bitu un 32 bitu statisko RAM, ROM un NAND Flash. 32 bitu datu lasīšanai / rakstīšanai kontrolieris var automātiski veikt 2 atbilstošas darbības 16 bitu mikroshēmām un 8 darbības 4 bitu mikroshēmām. Acīmredzot 32 bitu I/O darbība būs visātrākā ar 32 bitu datu kopni. Trūkumi ietver nepieciešamību programmai darboties ar 32 bitu datiem, un platei būs jāievieto 32 celiņi.

SRAM mikroshēmas, lietotas (uzminiet, kura ir bojāta)
Līdzsvarots risinājums ir izmantot 16 bitu atmiņas mikroshēmas. Es nonācu pie Integrated Silicon Solutions Inc. mikroshēmām. (ISSI IS61LV25616AL, 16x256k, 10ns, 3.3V). Protams, uzņēmumam "Milandr" ir savas statiskās atmiņas mikroshēmas bet tie ir pārāk dārgi un nav pieejami. Alternatīvi ir ar tapu saderīgi Samsung K6R4016V1D. Jau iepriekš minēju, ka IC bija lietoti, un manis instalētā kopija sākotnēji bija nestabila un nepastāvīga 15. datu līnijā. Pagāja vairākas dienas, lai atrastu aparatūras kļūdas, un jo lielāka bija gandarījuma sajūta, kad nomainīju bojāto mikroshēmu pret strādājošu. Lai kā arī būtu, darba ātrums ar ārējo atmiņu atstāj daudz vēlamo.
Ārējais autobuss un savrupais režīmsMikrokontrollerim K1986BE1QI (aviation) ir unikāls StandAlone režīms, kas paredzēts tiešai ārējai piekļuvei Ethernet un MCIO kontrolleriem (MIL_STD_1553) caur ārējo kopni, kamēr kodols atrodas reset stāvoklī, t.i. nav izmantots. Šis režīms ir noderīgs procesoriem un FPGA, kuriem nav Ethernet un/vai MCIO.
Savienojuma shēma ir šāda:
- datu kopne MCU(D0-D15) => SRAM(I/O0-I/O15),
- adrešu kopne MCU(A1-A18) => SRAM(A0-A17),
- MCU vadība (nWR, nRD, PortC2) => SRAM (WE, OE, CE),
- SRAM (UB, LB) ir savienoti vai velk uz zemi caur rezistoru.
CE līnija tiek pievilkta pie strāvas caur rezistoru, MCU baitu ielādes tapas (BE0-BE3) netiek izmantotas. Zem spoilera es dodu kodu portu un ārējā kopnes kontrollera inicializācijai.
Portu un EBC kontrollera inicializācija (ārējais kopnes kontrolieris)
void SRAM_Init (void)
{
EBC_InitTypeDef EBC_InitStruct = { 0 };
EBC_MemRegionInitTypeDef EBC_MemRegionInitStruct = { 0 };
PORT_InitTypeDef initStruct = { 0 };
RST_CLK_PCLKcmd (RST_CLK_PCLK_EBC, ENABLE);
PORT_StructInit (&initStruct);
//--------------------------------------------//
// DATA PA0..PA15 (D0..D15) //
//--------------------------------------------//
initStruct.PORT_MODE = PORT_MODE_DIGITAL;
initStruct.PORT_PD_SHM = PORT_PD_SHM_ON;
initStruct.PORT_SPEED = PORT_SPEED_FAST;
initStruct.PORT_FUNC = PORT_FUNC_MAIN;
initStruct.PORT_Pin = PORT_Pin_All;
PORT_Init (MDR_PORTA, &initStruct);
//--------------------------------------------//
// Address PF3-PF15 (A0..A12), A0 - not used. //
//--------------------------------------------//
initStruct.PORT_FUNC = PORT_FUNC_ALTER;
initStruct.PORT_Pin = PORT_Pin_4 | PORT_Pin_5 |
PORT_Pin_6 | PORT_Pin_7 |
PORT_Pin_8 | PORT_Pin_9 |
PORT_Pin_10 | PORT_Pin_11 |
PORT_Pin_12 | PORT_Pin_13 |
PORT_Pin_14 | PORT_Pin_15;
PORT_Init (MDR_PORTF, &initStruct);
//--------------------------------------------//
// Address PD3..PD0 (A13..A16) //
//--------------------------------------------//
initStruct.PORT_FUNC = PORT_FUNC_OVERRID;
initStruct.PORT_Pin = PORT_Pin_0 | PORT_Pin_1 |
PORT_Pin_2 | PORT_Pin_3;
PORT_Init (MDR_PORTD, &initStruct);
//--------------------------------------------//
// Address PE3, PE4 (A17, A18) //
//--------------------------------------------//
initStruct.PORT_FUNC = PORT_FUNC_ALTER;
initStruct.PORT_Pin = PORT_Pin_3 | PORT_Pin_4;
PORT_Init (MDR_PORTE, &initStruct);
//--------------------------------------------//
// Control PC0,PC1 (nWE,nOE) //
//--------------------------------------------//
initStruct.PORT_FUNC = PORT_FUNC_MAIN;
initStruct.PORT_Pin = PORT_Pin_0 | PORT_Pin_1;
PORT_Init (MDR_PORTC, &initStruct);
//--------------------------------------------//
// Control PC2 (nCE) //
//--------------------------------------------//
initStruct.PORT_PD = PORT_PD_DRIVER;
initStruct.PORT_OE = PORT_OE_OUT;
initStruct.PORT_FUNC = PORT_FUNC_PORT;
initStruct.PORT_Pin = MDB_SRAM_CE;
PORT_Init (MDR_PORTC, &initStruct);
//--------------------------------------------//
// Initialize EBC controler //
//--------------------------------------------//
EBC_DeInit();
EBC_StructInit(&EBC_InitStruct);
EBC_InitStruct.EBC_Mode = EBC_MODE_RAM;
EBC_InitStruct.EBC_WaitState = EBC_WAIT_STATE_3HCLK;
EBC_InitStruct.EBC_DataAlignment = EBC_EBC_DATA_ALIGNMENT_16;
EBC_Init(&EBC_InitStruct);
EBC_MemRegionStructInit(&EBC_MemRegionInitStruct);
EBC_MemRegionInitStruct.WS_Active = 2;
EBC_MemRegionInitStruct.WS_Setup = EBC_WS_SETUP_CYCLE_1HCLK;
EBC_MemRegionInitStruct.WS_Hold = EBC_WS_HOLD_CYCLE_1HCLK;
EBC_MemRegionInitStruct.Enable_Tune = ENABLE;
EBC_MemRegionInit (&EBC_MemRegionInitStruct, EBC_MEM_REGION_60000000);
EBC_MemRegionCMD(EBC_MEM_REGION_60000000, ENABLE);
// Turn ON RAM (nCE)
PORT_ResetBits (MDR_PORTC, MDB_SRAM_CE);
}
Mikrokontrollerim LQFP-144 pakotnē un atmiņai TSOP-44 pakotnē ir daudz savienotu tapu un tie aizņem daudz PCB vietas. Tā kā ir pieredze optimizācijas problēmu risināšanā ekonomikas jomā, man bija skaidrs, ka šīs mikroshēmas vispirms ir jāliek uz plates. Dažādos avotos uzgāju slavinošas atsauksmes par . Es lejupielādēju izmēģinājuma versiju un varēju eksportēt savu projektu no Eagle CAD tikai tad, kad noņēmu gandrīz visus komponentus. Diemžēl TopoR programma man nepalīdzēja novietot uz tāfeles pat 10 elementus. Vispirms visas sastāvdaļas tika novietotas stūrī un pēc tam sakārtotas gar malu. Šī opcija mani neapmierināja, un es pavadīju ilgu laiku, manuāli izsekojot dēli pazīstamajā Eagle CAD vidē.
Sietspiede ir svarīgs iespiedshēmas plates elements. Atkļūdošanas panelī ir jābūt ne tikai elektronisko komponentu parakstiem, bet arī visiem savienotājiem ir jābūt parakstītiem. Tāfeles aizmugurē ievietoju tabulas-atgādinājumus ar kontroliera portu funkcijām (galvenais, alternatīvais, ignorētais, faktiskais). Es pasūtīju iespiedshēmu plates ražošanu Ķīnā labi zināmajā PCBWay birojā. Neslavēšu, jo kvalitāte laba. Viņi var labāk rīkoties ar mazākām pielaidēm, bet .

Izgatavotas iespiedshēmas plates MDB1986, (c) Autora foto
Nācās atlodēt detaļas “uz ceļgala” ar 40 vatu lodāmuru un POS-61 lodmetālu, jo lodēju reti, 1-2 reizes gadā, un lodēšanas pasta izžuva. Man arī bija jāmaina ķīniešu CS32F103 kontrolieris uz oriģinālo STM32F103, un pēc tam arī jānomaina atmiņa. Kopumā tagad esmu pilnībā apmierināts ar rezultātu, lai gan vēl neesmu pārbaudījis RS-232 un CAN darbību.

Atkļūdošanas dēlis MDB1986 darbībā — spīd un silda, (с) Autora foto
Vietnē "Milandra" jūs varat atrast pietiekami daudz 1986BE9 sērija (Cortex-M3 kodols), bet K1986BE1QI (aviācijas) mikrokontrollerim tur neko neredzu. Pārskatot tur publicētos materiālus, rokasgrāmatas un laboratorijas darbus augstskolām, priecājos, ka visā valstī tiek apmācīts personāls darbam ar Krievijas kontrolieriem. Lielākā daļa mācību materiālu ir sagatavoti darbam ar I / O portiem, taimeriem, ADC, DAC, SPI, UART. Tiek izmantoti dažādi IDE (Keil, IAR, CodeMaster). Kaut kur viņi programmē, izmantojot CMSIS reģistrus, un kaut kur viņi izmanto MDR bibliotēku. Jāpiemin resurss , kurā ir daudz rakstu no praktizējošiem programmētājiem. Un, protams, mēs nedrīkstam aizmirst par .
Domājot par MilandruMikroelektronika Krievijā attīstās, un uzņēmumam "Milandr" ir nozīmīga loma šajā procesā. Parādās jauni interesanti mikrokontrolleri, piemēram, 1986BE81T un Elektrosila ar SpaceWire un MKIO interfeisiem (tāds pats kā 1986BE1 un, iespējams, ar tādām pašām problēmām) utt. Bet parastiem studentiem, skolotājiem un būvinženieriem šādas mikroshēmas nav reāli iegādāties. Tas nozīmē, ka inženieru kopiena nevarēs ātri identificēt šīs mikroshēmas kļūdas un problēmas. Man šķiet, ka vispirms ir jāizgatavo mikroshēmas plastmasas korpusā, jāizdala visiem interesentiem un tikai pēc aprobācijas (latīņu approbatio - apstiprināšana, atzīšana) speciālisti var sagatavot revīziju keramikas-metāla korpusā ar aizsardzību no visi briesmīgie faktori. Ceru, ka jau tuvākajā laikā mūs VISI iepriecinās izstādēs pieteiktie jaunie projekti.
Ikviens var atkārtot, modificēt un izmantot manis izstrādāto atkļūdošanas dēli mācību procesā. Vispirms uztaisīju sev dēli, bet sanāca tik labi, ka .
K1986BE1QI (gaiss) ir ļoti interesants kontrolieris ar unikālām saskarnēm, ko var izmantot universitātēs studentu mācīšanai. Domāju, ka pēc kontrolierī konstatēto kļūdu labošanas un sertifikācijas testu nokārtošanas kontrolieris lidos vārda tiešākajā nozīmē!
Avots: www.habr.com
