<?xml version="1.0" encoding="utf-8"?>
<!-- generator="FeedCreator 1.7.2-ppt DokuWiki" -->
<?xml-stylesheet href="http://wiki.pic24.ru/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://wiki.pic24.ru/feed.php">
        <title>PIC24 osa:ref:introduction</title>
        <description></description>
        <link>http://wiki.pic24.ru/</link>
        <image rdf:resource="http://wiki.pic24.ru/lib/images/favicon.ico" />
       <dc:date>2023-02-12T00:39:32+03:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://wiki.pic24.ru/doku.php/osa/ref/introduction/intro?rev=1331541748"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://wiki.pic24.ru/lib/images/favicon.ico">
        <title>PIC24</title>
        <link>http://wiki.pic24.ru/</link>
        <url>http://wiki.pic24.ru/lib/images/favicon.ico</url>
    </image>
    <item rdf:about="http://wiki.pic24.ru/doku.php/osa/ref/introduction/intro?rev=1331541748">
        <dc:format>text/html</dc:format>
        <dc:date>2012-03-12T12:42:28+03:00</dc:date>
        <title>OSA : Введение</title>
        <link>http://wiki.pic24.ru/doku.php/osa/ref/introduction/intro?rev=1331541748</link>
        <description>


&lt;h1&gt;&lt;a name=&quot;osa_введение&quot; id=&quot;osa_введение&quot;&gt;OSA : Введение&lt;/a&gt;&lt;/h1&gt;
&lt;div class=&quot;level1&quot;&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;OSA : Введение&quot; [1-39] --&gt;
&lt;h2&gt;&lt;a name=&quot;что_такое_osa&quot; id=&quot;что_такое_osa&quot;&gt;Что такое OSA&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

&lt;strong&gt;&lt;em&gt;OSA&lt;/em&gt;&lt;/strong&gt; - кооперативная многозадачная операционная система реального времени (ОСРВ) для микроконтроллеров фирмы Microchip серий &lt;strong&gt;PIC10&lt;/strong&gt;, &lt;strong&gt;PIC12&lt;/strong&gt;, &lt;strong&gt;PIC16&lt;/strong&gt;, &lt;strong&gt;PIC18&lt;/strong&gt;, &lt;strong&gt;PIC24&lt;/strong&gt; и &lt;strong&gt;dsPIC&lt;/strong&gt;, &lt;strong&gt;AVR 8-bit&lt;/strong&gt; фирмы Atmel, а также микроконтроллеров &lt;strong&gt;STM8&lt;/strong&gt; фирмы STMicroelectronics.
&lt;/p&gt;

&lt;p&gt;
ОСРВ позволяет программисту сосредоточить свои усилия на решении конкретных задач (алгоритмических, математических и т.п.), не отвлекаясь на задачи второстепенные. Она берет на себя:
&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; переключение между параллельными процессами (например, опрос клавиатуры, вывод информации на экран,  управление реле и.т.п.);&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; отсчет таймаутов, выдержку задержек;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; выбор готовой к выполнению задачи с наивысшим приоритетом и передача ей управления;&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; обмен данными между задачами (с помощью семафоров, сообщений и пр.).&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;

Задачами в ОСРВ OSA являются обычные функции. Тело функции должно содержать бесконечный цикл, внутри которого должен быть хотя бы один вызов сервиса переключения задач (иначе остальные задачи не получат управления).
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Что такое OSA&quot; [40-1817] --&gt;
&lt;h2&gt;&lt;a name=&quot;поддерживаемые_компиляторы&quot; id=&quot;поддерживаемые_компиляторы&quot;&gt;Поддерживаемые компиляторы&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Поддерживаемые компиляторы&quot; [1818-1882] --&gt;
&lt;h3&gt;&lt;a name=&quot;pic&quot; id=&quot;pic&quot;&gt;PIC&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;                                          &lt;/th&gt;&lt;th class=&quot;col1 centeralign&quot;&gt;   PIC10/12    &lt;/th&gt;&lt;th class=&quot;col2 centeralign&quot;&gt;  PIC16/12     &lt;/th&gt;&lt;th class=&quot;col3 centeralign&quot;&gt;  PIC16F1xxx    &lt;/th&gt;&lt;th class=&quot;col4 centeralign&quot;&gt;    PIC18      &lt;/th&gt;&lt;th class=&quot;col5 centeralign&quot;&gt;  PIC24/dsPIC  &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/picc_std.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:picc_std.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/picc_std.png&quot; class=&quot;media&quot; title=&quot;HT-PICC STD&quot; alt=&quot;HT-PICC STD&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col2 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col3 rightalign&quot;&gt;                   &lt;/td&gt;&lt;td class=&quot;col4 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col5 rightalign&quot;&gt;               &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/picc_pro.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:picc_pro.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/picc_pro.png&quot; class=&quot;media&quot; title=&quot;HT-PICC PRO&quot; alt=&quot;HT-PICC PRO&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/no.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:no.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/no.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;&lt;td class=&quot;col2 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/no.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:no.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/no.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;&lt;td class=&quot;col3 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/no.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:no.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/no.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;       &lt;/td&gt;&lt;td class=&quot;col4 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/no.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:no.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/no.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;&lt;td class=&quot;col5 rightalign&quot;&gt;               &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/mplabc.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:mplabc.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/mplabc.png&quot; class=&quot;media&quot; title=&quot;Microchip C&quot; alt=&quot;Microchip C&quot; /&gt;&lt;/a&gt;     &lt;/td&gt;&lt;td class=&quot;col1 rightalign&quot;&gt;               &lt;/td&gt;&lt;td class=&quot;col2 rightalign&quot;&gt;               &lt;/td&gt;&lt;td class=&quot;col3 rightalign&quot;&gt;                   &lt;/td&gt;&lt;td class=&quot;col4 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col5 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;       &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row4&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/mikroc_pro.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:mikroc_pro.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/mikroc_pro.png&quot; class=&quot;media&quot; title=&quot;mikroC PRO&quot; alt=&quot;mikroC PRO&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col1 rightalign&quot;&gt;               &lt;/td&gt;&lt;td class=&quot;col2 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col3 rightalign&quot;&gt;                   &lt;/td&gt;&lt;td class=&quot;col4 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col5 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/process.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:process.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/process.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;   &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row5&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/ccs.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:ccs.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/ccs.png&quot; class=&quot;media&quot; title=&quot;CCS PICC&quot; alt=&quot;CCS PICC&quot; /&gt;&lt;/a&gt;           &lt;/td&gt;&lt;td class=&quot;col1 rightalign&quot;&gt;               &lt;/td&gt;&lt;td class=&quot;col2 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col3 rightalign&quot;&gt;                   &lt;/td&gt;&lt;td class=&quot;col4 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col5 rightalign&quot;&gt;               &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;PIC&quot; [1883-2681] --&gt;
&lt;h3&gt;&lt;a name=&quot;avr&quot; id=&quot;avr&quot;&gt;AVR&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;                                          &lt;/th&gt;&lt;th class=&quot;col1 centeralign&quot;&gt;  AVR 8-bit        &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/winavr.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:winavr.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/winavr.png&quot; class=&quot;media&quot; title=&quot;WinAVR&quot; alt=&quot;WinAVR&quot; /&gt;&lt;/a&gt;          &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;      &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/iar.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:iar.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/iar.png&quot; class=&quot;media&quot; title=&quot;IAR&quot; alt=&quot;IAR&quot; /&gt;&lt;/a&gt;                &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;      &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/cvavr.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:cvavr.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/cvavr.png&quot; class=&quot;media&quot; title=&quot;Code Vision AVR&quot; alt=&quot;Code Vision AVR&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/process.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:process.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/process.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;AVR&quot; [2682-2957] --&gt;
&lt;h3&gt;&lt;a name=&quot;stm8&quot; id=&quot;stm8&quot;&gt;STM8&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;table class=&quot;inline&quot;&gt;
	&lt;tr class=&quot;row0&quot;&gt;
		&lt;th class=&quot;col0 rightalign&quot;&gt;                                          &lt;/th&gt;&lt;th class=&quot;col1 centeralign&quot;&gt;     STM8          &lt;/th&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row1&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/cosmic.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:cosmic.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/cosmic.png&quot; class=&quot;media&quot; title=&quot;Cosmic&quot; alt=&quot;Cosmic&quot; /&gt;&lt;/a&gt;          &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;      &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row2&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/iar.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:iar.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/iar.png&quot; class=&quot;media&quot; title=&quot;IAR&quot; alt=&quot;IAR&quot; /&gt;&lt;/a&gt;                &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;      &lt;/td&gt;
	&lt;/tr&gt;
	&lt;tr class=&quot;row3&quot;&gt;
		&lt;td class=&quot;col0 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/raisonance.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:raisonance.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/raisonance.png&quot; class=&quot;media&quot; title=&quot;Raisonance&quot; alt=&quot;Raisonance&quot; /&gt;&lt;/a&gt;  &lt;/td&gt;&lt;td class=&quot;col1 centeralign&quot;&gt;  &lt;a href=&quot;http://wiki.pic24.ru/lib/exe/detail.php/osa/ref/introduction/yes.png?id=osa%3Aref%3Aintroduction%3Aintro&quot; class=&quot;media&quot; title=&quot;osa:ref:introduction:yes.png&quot;&gt;&lt;img src=&quot;http://wiki.pic24.ru/lib/exe/fetch.php/osa/ref/introduction/yes.png&quot; class=&quot;media&quot; alt=&quot;&quot; /&gt;&lt;/a&gt;      &lt;/td&gt;
	&lt;/tr&gt;
&lt;/table&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;STM8&quot; [2958-3235] --&gt;
&lt;h2&gt;&lt;a name=&quot;ограничения&quot; id=&quot;ограничения&quot;&gt;Ограничения&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Ограничения&quot; [3236-3271] --&gt;
&lt;h3&gt;&lt;a name=&quot;ht-picc_ht-picc18&quot; id=&quot;ht-picc_ht-picc18&quot;&gt;HT-PICC, HT-PICC18&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; При входе в прерывание и при выходе из него нужно использовать сервисы &lt;span class=&quot;important&quot;&gt;&lt;a href=&quot;http://wiki.pic24.ru/doku.php/osa/ref/allservices/os_enterint&quot; class=&quot;wikilink1&quot; title=&quot;osa:ref:allservices:os_enterint&quot;&gt;OS_EnterInt&lt;/a&gt;()&lt;/span&gt; и &lt;span class=&quot;important&quot;&gt;&lt;a href=&quot;http://wiki.pic24.ru/doku.php/osa/ref/allservices/os_leaveint&quot; class=&quot;wikilink1&quot; title=&quot;osa:ref:allservices:os_leaveint&quot;&gt;OS_LeaveInt&lt;/a&gt;()&lt;/span&gt;. Первый вставляется в самом начале прерывания, сразу после описания переменных функции прерывания, а второй - в самом конце перед закрывающей скобкой &amp;quot;}&amp;quot;. Например:&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;pre class=&quot;cpp code cpp&quot; style=&quot;font-family:monospace;&quot;&gt;&lt;span class=&quot;kw4&quot;&gt;void&lt;/span&gt; interrupt int_routine &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;void&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw4&quot;&gt;char&lt;/span&gt;  var1, var2;
    &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt;   var3;
    OS_EnterInt&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
    ...                &lt;span class=&quot;co1&quot;&gt;// Здесь делается проверка флагов прерываний&lt;/span&gt;
    ...                &lt;span class=&quot;co1&quot;&gt;// и обработка&lt;/span&gt;
    OS_LeaveInt&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
Дело в том, что HT-PICC не всегда сохраняет значение регистра FSR (FSR0 для PICC18), который активно ипсользуется самой системой.
&lt;/p&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;HT-PICC, HT-PICC18&quot; [3272-4349] --&gt;
&lt;h3&gt;&lt;a name=&quot;microchip_c18&quot; id=&quot;microchip_c18&quot;&gt;Microchip C18&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; нельзя включать оптимизацию procedural abstraction&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; нельзя пользоваться Stack model: Multi bank&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Microchip C18&quot; [4350-4521] --&gt;
&lt;h3&gt;&lt;a name=&quot;microchip_c30&quot; id=&quot;microchip_c30&quot;&gt;Microchip C30&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Для PIC24 и dsPIC нельзя включать оптимизацию -mpa (procedural abstraction)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Microchip C30&quot; [4522-4656] --&gt;
&lt;h3&gt;&lt;a name=&quot;разрядные_pic_и&quot; id=&quot;разрядные_pic_и&quot;&gt;12-разрядные PIC&amp;#039;и&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Для 12-разрядных контроллеров накладывается ограничение на размерность сообшений и счетных семафоров. И короткие сообщения, и указатели на сообщения, и счетные семафоры могут иметь размерность только в 1 байт.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;12-разрядные PIC'и&quot; [4657-5085] --&gt;
&lt;h3&gt;&lt;a name=&quot;microc_pro_для_pic16&quot; id=&quot;microc_pro_для_pic16&quot;&gt;microC PRO для PIC16&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; При работе с PIC18 версия mikroC должна быть не ниже 2.50 PRO&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; При работе с PIC12 и PIC16 версия mikroC должна быть не ниже 3.00 PRO&lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Нужно следить за тем, чтобы динамические таймеры, очереди сообщений и сами сообщения не попадали в bank2 и bank3. Если компилятор их все-таки разместит там, то нужно предпринять меры к тому, чтобы он перенес их в нижнюю область памяти (переставить определения переменных местами). Пока что это ограничение обойти не удается, ведутся переговоры с командой mikroE. &lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;microC PRO для PIC16&quot; [5086-5976] --&gt;
&lt;h3&gt;&lt;a name=&quot;ccs_picc&quot; id=&quot;ccs_picc&quot;&gt;CCS PICC&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; В версии 4.104 появилась &lt;a href=&quot;http://www.ccsinfo.com/forum/viewtopic.php?t=41180&quot; class=&quot;urlextern&quot; title=&quot;http://www.ccsinfo.com/forum/viewtopic.php?t=41180&quot;  rel=&quot;nofollow&quot;&gt;ошибка&lt;/a&gt;, которая не позволяет собирать программу с OSA. Пользуйтесь младшими версиями (проверены: 4.023, 4.069, 4.084, 4.099, 4.102, 4.108, 4.109, 4.110)&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;CCS PICC&quot; [5977-6328] --&gt;
&lt;h3&gt;&lt;a name=&quot;iar_avr_and_stm8&quot; id=&quot;iar_avr_and_stm8&quot;&gt;IAR (AVR and STM8)&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Работает только в режиме C (не C++). &lt;/div&gt;
&lt;/li&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Оптимизация cross-call должна быть отключена.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;IAR (AVR and STM8)&quot; [6329-6505] --&gt;
&lt;h3&gt;&lt;a name=&quot;winavr&quot; id=&quot;winavr&quot;&gt;WinAVR&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; При работе из-под AVRStudio файлы OSA и файлы проекта должны находиться на одном логическом диске.&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;WinAVR&quot; [6506-6697] --&gt;
&lt;h3&gt;&lt;a name=&quot;stm81&quot; id=&quot;stm81&quot;&gt;STM8&lt;/a&gt;&lt;/h3&gt;
&lt;div class=&quot;level3&quot;&gt;
&lt;ul&gt;
&lt;li class=&quot;level1&quot;&gt;&lt;div class=&quot;li&quot;&gt; Работает только с контроллерами с ROM 64K и меньше&lt;/div&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class=&quot;plugin_uparrow&quot;&gt;
  &lt;a href=&quot;#&quot; title=&quot;Наверх&quot;&gt;
    &lt;img src=&quot;http://wiki.pic24.ru/lib/plugins/uparrow/images/blue_arrow.png&quot; alt=&quot;Наверх&quot;/&gt;
  &lt;/a&gt;
&lt;/div&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;STM8&quot; [6698-6814] --&gt;
&lt;h2&gt;&lt;a name=&quot;благодарности&quot; id=&quot;благодарности&quot;&gt;Благодарности&lt;/a&gt;&lt;/h2&gt;
&lt;div class=&quot;level2&quot;&gt;

&lt;p&gt;

&lt;strong&gt;Выражаю благодарность всем, кто принимал участие в поисках и исправлении багов, не ленился копаться в кодах и тратил свое время на дебаггер. Особую благодарность &lt;span class=&quot;important&quot;&gt;Вадиму Франку&lt;/span&gt; и &lt;span class=&quot;important&quot;&gt;Д. Иванову&lt;/span&gt;, принимавшим самое активное участие и проявившим терпение и настойчивость.&lt;/strong&gt;
&lt;/p&gt;

&lt;p&gt;
&lt;strong&gt;Также выражаю благодарность &lt;span class=&quot;important&quot;&gt;Alex'у B.&lt;/span&gt;, любезно предоставившему свой сайт для документации и оказавшему помощь в ее размещении здесь.&lt;/strong&gt;
&lt;/p&gt;
&lt;div class=&quot;plugin_uparrow&quot;&gt;
  &lt;a href=&quot;#&quot; title=&quot;Наверх&quot;&gt;
    &lt;img src=&quot;http://wiki.pic24.ru/lib/plugins/uparrow/images/blue_arrow.png&quot; alt=&quot;Наверх&quot;/&gt;
  &lt;/a&gt;
&lt;/div&gt;

&lt;/div&gt;
&lt;!-- SECTION &quot;Благодарности&quot; [6815-] --&gt;</description>
    </item>
</rdf:RDF>
